1. Data, Informasi, dan Basis Data
a. Definisi Data
-
Data adalah fakta mentah yang dapat berupa angka, huruf, simbol, atau deskripsi yang tidak memiliki makna secara langsung.
-
Contoh:
-
“21011001” → NIM mahasiswa.
-
“Jakarta” → nama kota.
-
“A” → nilai mata kuliah.
-
b. Definisi Informasi
-
Informasi adalah hasil pengolahan data yang memiliki arti dan manfaat bagi penggunanya.
-
Contoh:
-
“21011001 - Ahmad Ramadhan - Lulus” → informasi akademik.
-
“Jakarta – Ibu kota Indonesia” → informasi geografis.
-
c. Definisi Basis Data
-
Basis Data (Database) adalah sekumpulan data yang saling terkait dan tersimpan secara sistematis dalam media penyimpanan elektronik yang dapat diakses, dikelola, dan dimanipulasi secara efisien.
-
Tujuan utama basis data:
-
Menyediakan penyimpanan terpusat.
-
Menjamin integritas dan konsistensi data.
-
Mendukung akses multi-user.
-
Mengurangi redundansi dan inkonsistensi data.
-
Memudahkan integrasi dengan aplikasi.
-
d. Karakteristik Basis Data
| Karakteristik | Penjelasan | Contoh |
|---|---|---|
| Terintegrasi | Data antar bagian saling terhubung | Data mahasiswa terhubung dengan data nilai |
| Terkontrol | Dikelola oleh DBMS dengan hak akses | User hanya dapat membaca, admin dapat mengedit |
| Tersentralisasi | Disimpan pada satu sistem | Database server kampus |
| Multiuser | Mendukung banyak pengguna | Beberapa operator input nilai secara bersamaan |
| Terstruktur | Tersimpan dalam format tertentu | Tabel, JSON document, dsb. |
2. Sistem Berkas vs Sistem Basis Data
a. Sistem Berkas Tradisional
-
Data disimpan dalam file terpisah (misal Excel, TXT, CSV).
-
Setiap aplikasi mengakses dan mengelola data sendiri.
-
Terjadi redundansi dan inkonsistensi data.
-
Sulit melakukan pengendalian hak akses.
-
Contoh: File Excel biodata mahasiswa yang disimpan di komputer lokal.
b. Sistem Basis Data
-
Data dikelola oleh sistem terpusat: DBMS.
-
Banyak aplikasi dapat mengakses sumber data yang sama.
-
Data konsisten, terintegrasi, dan aman.
-
Contoh: Database akademik kampus yang terhubung ke portal SIAKAD.
| Aspek | Sistem Berkas | Sistem Basis Data |
|---|---|---|
| Penyimpanan | File terpisah | Terpusat |
| Redundansi data | Tinggi | Minimal |
| Keamanan | Lemah | Ada kontrol akses |
| Konsistensi | Sulit dijaga | Dijamin DBMS |
| Kemudahan akses | Bergantung aplikasi | Query DBMS |
3. DBMS (Database Management System)
a. Definisi DBMS
-
DBMS adalah perangkat lunak yang berfungsi untuk mendefinisikan, membangun, mengelola, dan mengontrol akses ke basis data.
-
DBMS menghubungkan pengguna atau program aplikasi dengan data yang disimpan dalam database.
b. Fungsi Utama DBMS
| Fungsi | Penjelasan | Contoh |
|---|---|---|
| Definisi Data | Menentukan struktur database | CREATE TABLE Mahasiswa |
| Manipulasi Data | Insert, update, delete, select | INSERT INTO Mahasiswa ... |
| Kontrol Akses | Hak akses user | User hanya bisa SELECT |
| Integritas & Keamanan | Menjaga keakuratan data | PRIMARY KEY, FOREIGN KEY |
| Transaksi | Menjamin konsistensi | COMMIT, ROLLBACK |
| Backup & Recovery | Perlindungan data | Recovery setelah crash |
c. Komponen DBMS



-
Query Processor
-
Menerjemahkan permintaan dari user (query SQL) menjadi instruksi untuk sistem penyimpanan.
-
-
Storage Manager
-
Menangani penyimpanan data fisik.
-
-
Transaction Manager
-
Menjamin ACID properties (Atomicity, Consistency, Isolation, Durability).
-
-
Metadata Catalog (Data Dictionary)
-
Menyimpan informasi tentang struktur database.
-
-
Access Control Module
-
Mengatur hak akses pengguna.
-
4. Tingkat Abstraksi Data dalam DBMS
a. Internal Level (Fisik)
-
Menggambarkan bagaimana data disimpan secara fisik di disk.
-
Contoh: format file data, indeks B-tree.
b. Conceptual Level (Logis)
-
Menggambarkan struktur logis database secara keseluruhan.
-
Contoh: tabel Mahasiswa dengan atribut NIM, Nama, Prodi.
c. External Level (View)
-
Tampilan khusus untuk pengguna tertentu.
-
Contoh: view dosen hanya dapat melihat data mahasiswa bimbingannya.
5. Jenis-Jenis DBMS
| Jenis DBMS | Karakteristik | Contoh |
|---|---|---|
| Hierarchical | Struktur seperti pohon | IBM IMS |
| Network | Banyak hubungan antar record | IDMS |
| Relational (RDBMS) | Tabel dengan relasi antar data | Oracle Database, MySQL |
| Object-Oriented | Menyimpan data sebagai objek | Versant, ObjectDB |
| NoSQL | Tidak relasional, fleksibel, skalabel | MongoDB, Firebase Firestore |
6. Konsep SQL (Structured Query Language)
SQL adalah bahasa standar untuk mengakses dan mengelola database relasional.
a. Karakteristik SQL:
-
Deklaratif (menyatakan apa yang diinginkan, bukan bagaimana).
-
Standar ANSI/ISO.
-
Dapat digunakan lintas DBMS (dengan variasi kecil).
b. Komponen SQL:
| Komponen | Fungsi | Contoh |
|---|---|---|
| DDL (Data Definition Language) | Definisi struktur data | CREATE TABLE Mahasiswa |
| DML (Data Manipulation Language) | Manipulasi data | INSERT, UPDATE, DELETE, SELECT |
| DCL (Data Control Language) | Hak akses | GRANT, REVOKE |
| TCL (Transaction Control Language) | Transaksi | COMMIT, ROLLBACK |
c. Contoh Query Sederhana (Oracle / MySQL)
7. Konsep NoSQL (Not Only SQL)
NoSQL adalah pendekatan database non-relasional yang fleksibel dan dirancang untuk:
-
Big Data
-
Aplikasi web modern & mobile
-
Skalabilitas horizontal
a. Tipe NoSQL:
| Tipe | Karakteristik | Contoh |
|---|---|---|
| Document | Data berbentuk JSON/BSON | MongoDB, Firebase Firestore |
| Key-Value | Simpel, cepat | Redis |
| Column | Data terstruktur kolom | Cassandra |
| Graph | Node & edge | Neo4j |
b. Contoh Data Document (MongoDB)
c. Contoh Operasi CRUD MongoDB
8. SQL vs NoSQL
| Aspek | SQL | NoSQL |
|---|---|---|
| Struktur | Fixed schema | Flexible schema |
| Skalabilitas | Vertical | Horizontal |
| Transaksi | ACID | BASE |
| Bahasa Query | SQL | API/JSON |
| Cocok untuk | Sistem terstruktur (akademik, keuangan) | Aplikasi modern (chat, IoT, real-time) |
9. Peran Basis Data dalam Aplikasi Modern
a. Aplikasi SQL:
-
Sistem Akademik Kampus
-
ERP, CRM
-
Perbankan, Keuangan
b. Aplikasi NoSQL:
-
Chatting Apps (WhatsApp, Telegram)
-
Aplikasi IoT
-
Real-time analytics (log & sensor data)
c. Arsitektur Modern:
Banyak aplikasi saat ini menggabungkan SQL & NoSQL (Polyglot Persistence) untuk mendukung kebutuhan yang beragam.

