stdsquare²
🎓 Kelas
stdsquare / materi / slides / pertemuan-02
Tema
Japan
Arcade
Dark Retro
Font
‹ Daftar slide Pertemuan 2: Arsitektur basis data dan komponen DBMS
Program Studi Bisnis Digital · FEB UNDIP

Sistem Database

Pertemuan 2: Arsitektur Basis Data dan Komponen DBMS

Mengenal peta besar sebuah sistem basis data — dari yang dilihat pengguna sampai yang tersimpan di cakram, dan siapa saja yang mengelolanya.

RPS minggu 2 · 2x50 menit

Tujuan Pembelajaran Hari Ini

Setelah pertemuan ini, Anda diharapkan mampu:

Sub-CPMK 1
3 Lapis
Arsitektur ANSI-SPARC
Menjelaskan tiga level pandangan data: eksternal, konseptual, internal — dan mengapa pemisahan ini penting.
Sub-CPMK 2
6 Komponen
Anatomi DBMS
Mengidentifikasi komponen utama DBMS (query processor, storage manager, dsb.) dan peran masing-masing.

Kita juga akan mengenal peran manusia dalam ekosistem basis data — DBA (Database Administrator), programmer aplikasi, dan pengguna akhir — serta mengaitkannya dengan contoh nyata seperti sistem BBCA mobile banking dan katalog Tokopedia.

Mengapa Basis Data Butuh "Arsitektur"?

Bayangkan aplikasi marketplace seperti Tokopedia. Tim front-end hanya perlu tahu "tampilkan nama produk dan harga" — mereka tidak peduli data itu tersimpan di file apa, di server mana, atau dalam format apa.

Pemisahan ini disebut independensi data (data independence): perubahan cara penyimpanan data di "belakang" tidak boleh memaksa aplikasi di "depan" ikut ditulis ulang.

Tanpa arsitektur berlapis, setiap kali tim infrastruktur mengubah cara penyimpanan (misalnya pindah dari satu disk ke sistem penyimpanan awan), seluruh kode aplikasi harus direvisi. Ini mahal, lambat, dan berisiko tinggi untuk bisnis yang beroperasi 24 jam.

Bagian 1 dari 3
Arsitektur Tiga Level (ANSI-SPARC)
Bagaimana satu basis data yang sama bisa "dilihat" berbeda oleh orang yang berbeda.

Apa itu DBMS?

DBMS (Database Management System, sistem manajemen basis data) adalah perangkat lunak yang menjadi perantara antara pengguna/aplikasi dan basis data fisik yang tersimpan di cakram.

Pengguna ↔ DBMS ↔ Basis Data (file fisik)

Contoh DBMS yang umum dipakai industri: MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server. Tanpa DBMS, setiap aplikasi harus menulis sendiri kode rumit untuk membaca-tulis file data — DBMS menyediakan layanan itu secara siap pakai, aman, dan konsisten.

Analogi: DBMS itu seperti resepsionis bank — nasabah (aplikasi) tidak masuk sendiri ke ruang penyimpanan uang (data fisik), semua permintaan lewat resepsionis yang tahu aturan dan keamanannya.

Level 1: Eksternal (Pandangan Pengguna)

Level eksternal adalah bagaimana masing-masing pengguna atau aplikasi melihat data — hanya bagian yang relevan bagi mereka, disebut view (pandangan).

Contoh: Kasir Indomaret
View A
Melihat: nama produk, harga, stok kasir. Tidak melihat data gaji karyawan atau margin keuntungan pusat.
Contoh: Manajer Pusat
View B
Melihat: total penjualan semua cabang, tren bulanan, margin. Tidak perlu detail stok per rak.

Kedua view ini berasal dari basis data fisik yang sama — hanya dipotong dan disusun berbeda sesuai kebutuhan tiap pengguna.

Level 2: Konseptual (Pandangan Terpadu)

Level konseptual adalah gambaran keseluruhan struktur data milik organisasi — mendeskripsikan semua entitas, atribut, dan hubungan tanpa peduli siapa penggunanya atau bagaimana data disimpan secara fisik.

Yang Dijawab Level Konseptual
  • Data apa saja yang disimpan organisasi (produk, pelanggan, pesanan)?
  • Bagaimana data-data itu saling berhubungan (satu pelanggan bisa punya banyak pesanan)?
  • Aturan bisnis apa yang berlaku (stok tidak boleh negatif)?

Level ini adalah "peta induk" yang menjadi acuan bersama — dibuat oleh perancang basis data, biasanya lewat diagram Entity-Relationship (ER) yang akan kita pelajari mendalam pertemuan berikutnya.

Level 3: Internal (Pandangan Fisik)

Level internal adalah bagaimana data benar-benar disimpan secara fisik — struktur file, indeks untuk mempercepat pencarian, alokasi ruang penyimpanan.

Ditangani Oleh
DBA
Database Administrator
Ahli teknis yang mengatur performa, kompresi, dan lokasi fisik penyimpanan.
Fokus Utama
Performa
Bukan makna data
Bagaimana data diambil secepat mungkin, bukan apa arti bisnisnya.
Mahasiswa pemula sering mengira "basis data = file di cakram". Faktanya, itu hanya level internal — satu dari tiga lapisan yang harus dipahami bersamaan.

Independensi Data: Manfaat Nyata Arsitektur Berlapis

Karena tiga level ini terpisah, kita punya dua jenis independensi data (kemampuan mengubah satu level tanpa mengubah level lain):

Independensi Logis
Eksternal ↔ Konseptual
Menambah kolom baru di struktur data (level konseptual) tidak merusak aplikasi lama yang tidak memakai kolom itu.
Independensi Fisik
Konseptual ↔ Internal
Mengganti jenis penyimpanan fisik (mis. pindah ke SSD, tambah indeks) tidak mengubah makna data bagi aplikasi.

Contoh nyata: saat BCA menambah fitur baru di BCA mobile, tim mereka bisa menambah tabel data baru tanpa mematikan layanan transfer yang sudah berjalan bertahun-tahun.

Coba Sendiri: Jelajahi Tiga Level Arsitektur Basis Data

Klik peran kasir atau manajer untuk melihat pandangan level eksternal yang berbeda, lalu amati bagaimana perubahan di level internal tidak mengganggu keduanya.

Bagian 2 dari 3
Komponen Utama DBMS
Membongkar "kotak ajaib" DBMS menjadi bagian-bagian yang bisa Anda pahami satu per satu.

Anatomi DBMS: Diagram Komponen

Pengguna / Aplikasi (SQL, form input, laporan)Query ProcessorTerjemah & optimasi queryTransaction ManagerJaga konsistensi transaksiSecurity ManagerOtentikasi & hak aksesStorage ManagerBaca/tulis data ke diskBuffer ManagerCache data di memoriData DictionaryMetadata struktur dataBasis Data Fisik (file di disk)

Query Processor: "Penerjemah" Perintah SQL

Query Processor adalah komponen yang menerima perintah SQL Anda (misal: "tampilkan semua pelanggan dari Semarang") dan mengubahnya menjadi langkah teknis paling efisien.

Dua Tugas Utama
  • Parsing — memeriksa apakah perintah SQL Anda ditulis dengan tata bahasa yang benar.
  • Optimasi — memilih cara tercepat mengambil data, misalnya memakai indeks daripada memeriksa semua baris satu per satu.
Analogi: seperti sopir taksi online (mis. Gojek) yang menerima tujuan Anda lalu memilih rute tercepat — Anda cukup bilang tujuan, bukan jalan mana yang harus dilewati.

Dari Nol: Perjalanan Satu Query di Dalam DBMS

Topik ini tidak berupa angka, jadi kita telusuri tahap demi tahap apa yang terjadi saat Anda menekan Enter pada satu perintah SQL di aplikasi kasir toko buku daring.

LangkahApa yang TerjadiKomponen Terlibat
1Anda ketik: "tampilkan buku dengan stok kurang dari 5"Aplikasi / antarmuka pengguna
2Perintah diperiksa tata bahasanya (parsing) — valid SQL?Query Processor
3Dicari cara tercepat: pakai indeks kolom stok, bukan cek semua barisQuery Optimizer (bagian Query Processor)
4Dicek: apakah Anda punya izin melihat data stok?Security Manager
5Data diambil dari memori cache bila sudah pernah dibaca, atau dari cakram bila belumBuffer Manager + Storage Manager
6Hasil dikembalikan ke layar Anda dalam bentuk tabelAplikasi / antarmuka pengguna
Hasil Akhir
< 1 detik
Enam langkah ini biasanya selesai dalam sepersekian detik berkat optimasi & caching
Bagian 3 dari 3
Peran Manusia dan Bahasa dalam Ekosistem Basis Data
Mesin saja tidak cukup — ada manusia dan bahasa standar yang menjaga sistem tetap berjalan.

Siapa Saja yang Berinteraksi dengan Basis Data?

DBA
Penjaga
Database Administrator — mengatur keamanan, performa, backup, dan hak akses seluruh sistem.
Pengembang Aplikasi
Pembangun
Menulis kode yang memanggil basis data lewat SQL untuk menampilkan data di aplikasi.
Pengguna Akhir
Pemakai
Kasir, admin toko, pelanggan yang berinteraksi lewat antarmuka — tanpa perlu tahu SQL sama sekali.

Di perusahaan seperti Bank Mandiri atau Bukalapak, ketiga peran ini biasanya dipegang tim/orang berbeda — bukan satu orang yang mengerjakan semuanya.

Dua Jenis "Bahasa" yang Dipakai DBMS

DBMS berkomunikasi lewat SQL (Structured Query Language), yang terbagi jadi dua kelompok perintah besar — akan kita praktikkan detail mulai pertemuan 8:

DDL
Data Definition Language
Untuk mendefinisikan struktur — membuat tabel baru, mengubah kolom. Contoh perintah: CREATE, ALTER, DROP.
DML
Data Manipulation Language
Untuk mengolah isi data — menambah, mengubah, menghapus baris. Contoh perintah: INSERT, UPDATE, DELETE, SELECT.
Analogi: DDL itu seperti membangun rak buku (struktur), DML itu seperti menaruh/mengambil buku dari rak (isi).

Dari Nol: Skenario Toko Retail Membuka Cabang Baru

Toko retail nasional (misalnya seperti Alfamart) membuka cabang baru dan butuh sistem data untuk cabang tersebut. Mari telusuri siapa mengerjakan apa, tahap demi tahap:

TahapAktivitasPeran / Level yang Terlibat
1Menentukan data apa saja yang perlu dicatat cabang baru (produk, transaksi, karyawan)Perancang basis data — level konseptual
2Membuat struktur tabel baru di server (DDL: CREATE TABLE)DBA
3Mengatur siapa saja yang boleh mengakses data cabang iniDBA — Security Manager
4Membuat aplikasi kasir yang memanggil data lewat SQL (DML)Pengembang aplikasi
5Menggunakan aplikasi kasir sehari-hari tanpa perlu tahu SQLPengguna akhir — level eksternal
Kesimpulan
5 Tahap, 3 Peran
Satu cabang baru butuh kerja sama perancang, DBA, pengembang, dan pengguna — bukan satu orang saja

Mengapa Tidak Cukup Pakai File Excel Saja?

Sebelum DBMS populer, data bisnis sering disimpan di file terpisah (mis. Excel per cabang). Pendekatan ini punya banyak kelemahan yang DBMS selesaikan:

MasalahFile Terpisah (mis. Excel)DBMS
Data gandaData pelanggan bisa dicatat ulang di banyak file berbedaData tersimpan satu kali, diakses banyak pihak
KonsistensiUbah data di satu file, file lain bisa tertinggalPerubahan langsung berlaku untuk semua pengguna
Akses bersamaanSulit dibuka banyak orang sekaligus tanpa bentrokDirancang untuk ratusan/ribuan pengguna simultan
KeamananSulit membatasi siapa lihat kolom tertentuHak akses bisa diatur sampai level kolom

Data Dictionary: "Kamus" Basis Data

Data Dictionary (kamus data) adalah komponen DBMS yang menyimpan metadata — data tentang data, seperti nama tabel, nama kolom, tipe data, dan aturan (constraint).

Contoh Isi Data Dictionary untuk Tabel "Pelanggan"
  • Nama tabel: pelanggan
  • Kolom: id_pelanggan (angka, wajib unik), nama (teks, maks. 100 karakter), kota (teks)
  • Aturan: id_pelanggan tidak boleh kosong dan tidak boleh sama dengan baris lain

DBMS memakai data dictionary ini setiap kali memproses perintah — untuk memastikan Anda tidak memasukkan teks ke kolom angka, misalnya.

Latihan: Identifikasi Level dan Komponen

Diskusikan dalam kelompok kecil (3-4 orang), waktu 10 menit. Kasus: aplikasi GoFood.

Pertanyaan Diskusi
  • Sebutkan satu contoh view (level eksternal) yang dilihat pelanggan GoFood, dan satu contoh view yang dilihat mitra restoran. Apa bedanya?
  • Siapa yang berperan sebagai DBA di balik sistem GoFood — kira-kira apa saja tugasnya?
  • Saat Anda mencari "ayam geprek" di aplikasi, komponen DBMS mana yang bekerja lebih dulu: Query Processor atau Storage Manager? Mengapa?
Siapkan satu juru bicara per kelompok untuk memaparkan jawaban ke kelas selama 1-2 menit.

Ringkasan: Tiga Level Arsitektur

LevelFokusContoh
EksternalPandangan tiap pengguna (view)Layar kasir vs dashboard manajer
KonseptualStruktur data organisasi secara utuhDiagram ER seluruh entitas bisnis
InternalPenyimpanan fisik & performaFile, indeks, alokasi disk
Kunci ingat: level eksternal = "apa yang saya lihat", konseptual = "apa yang organisasi punya", internal = "bagaimana disimpan".

Ringkasan: Komponen Kunci DBMS

KomponenTugas Singkat
Query ProcessorMenerjemahkan & mengoptimalkan perintah SQL Anda
Transaction ManagerMenjaga konsistensi saat banyak orang mengakses bersamaan
Security ManagerMengecek otentikasi & hak akses pengguna
Storage & Buffer ManagerMembaca/menulis data ke disk & menyimpan cache di memori
Data DictionaryMenyimpan metadata: nama tabel, kolom, tipe data, aturan

Dari Arsitektur ke Pemodelan: Apa Selanjutnya?

Hari ini kita fokus pada level konseptual sebagai "peta induk". Minggu depan, kita belajar alat resmi untuk menggambar peta itu: diagram Entity-Relationship (ER).

Yang Sudah Anda Kuasai
  • Tiga level arsitektur (eksternal, konseptual, internal)
  • Enam komponen utama DBMS
  • Peran DBA, pengembang, pengguna akhir
Yang Akan Dipelajari (P3)
  • Notasi entitas, atribut, relasi dalam ER
  • Menggambar diagram ER dari kasus bisnis nyata
  • Kardinalitas (satu-ke-banyak, banyak-ke-banyak)

Tugas & Persiapan Pertemuan 3

Tugas Individu (Kumpul Sebelum P3)
  • Pilih 1 aplikasi yang Anda pakai sehari-hari (mis. Shopee, MyTelkomsel, KAI Access)
  • Identifikasi minimal 2 contoh view (level eksternal) berbeda dalam aplikasi itu
  • Sebutkan 3 komponen DBMS yang menurut Anda paling berperan saat Anda membuka aplikasi itu, beri alasan singkat
Format
1 Halaman
Dikumpulkan via portal e-learning
Tenggat: sebelum pertemuan 3 dimulai. Tulisan bebas, boleh disertai sketsa tangan.

Sampai jumpa minggu depan — siapkan diri Anda untuk mulai menggambar diagram pertama Anda!