Basis data adalah kumpulan data yang terorganisir sehingga dapat diakses, dikelola, dan diperbarui dengan mudah. Sistem Basis Data II memperdalam konsep ini dengan fokus pada:
Pengelolaan Data Kompleks: Basis data yang menangani tipe data kompleks seperti multimedia, spasial, atau data grafik.
Optimasi Kinerja: Pengelolaan indeks, kueri, dan transaksi untuk meningkatkan efisiensi.
Keamanan dan Privasi: Melindungi data dari akses tidak sah dan memastikan integritas data.
Normalisasi Tingkat Lanjut
Normalisasi: Proses memecah tabel menjadi bentuk yang lebih sederhana untuk mengurangi redundansi dan ketergantungan data.
Tingkat normalisasi yang lebih tinggi seperti Boyce-Codd Normal Form (BCNF) dan Fifth Normal Form (5NF) sering digunakan untuk basis data yang sangat kompleks.
b. Indeks dan Optimasi Kueri
Indeks: Struktur data khusus yang mempercepat pencarian dan pengambilan data, seperti indeks B-Tree atau Hash.
Optimasi Kueri: Penggunaan algoritma untuk memilih rencana eksekusi kueri yang paling efisien berdasarkan biaya.
c. Transaksi dan Pemrosesan Konkuren
Transaksi: Serangkaian operasi yang dilakukan sebagai satu unit logis, seperti menambah data ke tabel dengan memastikan integritas.
ACID Properties: Memastikan transaksi bersifat Atomisitas, Konsistensi, Isolasi, dan Durabilitas.
Concurrency Control: Teknik untuk menangani banyak transaksi yang berjalan secara bersamaan tanpa konflik, seperti locking atau timestamp ordering.
d. Basis Data Terdistribusi
Basis data yang tersebar di beberapa lokasi fisik namun terlihat sebagai satu kesatuan logis.
Fragmentasi: Data dipecah menjadi bagian kecil yang disimpan di lokasi berbeda.
Replikasi: Salinan data yang sama disimpan di beberapa lokasi untuk meningkatkan ketersediaan.
Tantangan: Sinkronisasi, latensi jaringan, dan konsistensi data.
e. Keamanan dan Privasi Basis Data
Pengendalian Akses: Membatasi siapa yang dapat melihat atau mengubah data.
Enkripsi: Melindungi data dengan menyandikannya sehingga hanya dapat dibaca oleh pihak yang memiliki kunci dekripsi.
Audit Log: Mencatat semua aktivitas di basis data untuk mendeteksi potensi pelanggaran.
f. Basis Data NoSQL
Basis data non-relasional yang dirancang untuk menangani data dalam jumlah besar dan tipe data kompleks.
Contoh jenis NoSQL:
Key-Value Store: Redis, DynamoDB.
Document Store: MongoDB, CouchDB.
Graph Database: Neo4j.
Digunakan untuk aplikasi modern seperti sistem media sosial atau e-commerce.
g. Big Data dan Basis Data Paralel
Big Data: Basis data yang dirancang untuk mengelola volume data yang sangat besar dengan kecepatan tinggi.
MapReduce dan Hadoop: Kerangka kerja untuk memproses data besar secara paralel.
Basis data paralel menggunakan beberapa prosesor untuk menangani kueri besar secara efisien.
a. Basis Data Multimedia
Digunakan untuk menyimpan dan mengelola data multimedia seperti gambar, video, dan audio.
Tantangan: Pengindeksan dan pencarian data berdasarkan konten.
b. Basis Data Spasial
Basis data yang dirancang untuk menyimpan data geografis atau lokasi.
Contoh: GIS (Geographic Information Systems).
c. Basis Data Real-Time
Basis data yang dirancang untuk memberikan respons dalam waktu nyata.
Contoh: Sistem kontrol lalu lintas udara atau perdagangan saham.
d. Basis Data Cloud
Penyimpanan basis data di cloud, seperti Amazon RDS atau Google BigQuery.
Kelebihan: Skalabilitas, aksesibilitas, dan pengurangan biaya perangkat keras.
DBMS Relasional: MySQL, PostgreSQL, Oracle Database.
NoSQL DBMS: MongoDB, Cassandra, Firebase.
Analitik Big Data: Apache Spark, Hive.
Alat Visualisasi Data: Tableau, Power BI.