Sistem Basis Data Chapter 1 Dosen : Evaristus Didik Madyatmadja Apa itu DBMS? Integrasi kumpulan data yang sangat besar. Mendeskripsikan aktivitas satu organisasi – – Entitas (e.g., mahasiswa, fakultas) Relationships (hubungan antar entitas) Database Management System (DBMS) adalah perangkat lunak yang didesain untuk membantu memelihara dan memanfaatkan kumpulan data yang besar. Mengapa digunakan DBMS? Kemandirian data. Akses data yang efisien. Integritas dan keamanan data. Administrasi data. Akses konkuren dan crash recovery. Waktu pengembangan aplikasi terkurangi Why Study Databases?? ? Model Data Model data adalah kumpulan konsep deskripsi data Fokus saat ini didasarkan pada model data relasional. – – Konsep utama: relasi, dilihat sebagai kumpulan record. Setiap relasi mempunyai skema, dimana skema untuk satu relasi menentukan nama relasi tersebut Level Abstraksi Data dalam DBMS dideskripsikan dalam tiga level abstraksi. – – – Skema eksternal : akses data diotorisasi Skema konseptual : mendeskripsikan data Skema fisik : menentukan detail penyimpanan tambahan Skema eks1 Skema eks 2 Skema Ext 3 Skema Konseptual Skema Fisik Contoh : Basis Data Universitas Skema konseptual: – – – Skema fisik: – – Students(sid: string, name: string, login: string, age: integer, gpa:real) Courses(cid: string, cname:string, credits:integer) Enrolled(sid:string, cid:string, grade:string) Menyimpan semua relasi sebagai file record yang belum tersortir. Buat index pada kolom pertama relasi Students, faculty, courses. Skema Eksternal: – Course_info(cid:string,enrollment:integer) Kemandirian data Program aplikasi yang diisolasi, data sistruktur dan disimpan. Kemandirian data logika: pengguna dilindungi dari perubahan struktur data logika. Kemandirian data fisik: Skema konseptual mengisolasi pengguna, perubahan dalam detail fisik Satu hal terpenting keuntungan penggunaan DBMS! Query dalam DBMS Pertanyaan dari contoh database universitas:. – – Siapa nama mahasiswa dengan ID 123456 Berapa banyak mahasiswa yang mendaftar matakuliah CS564? Bahasa query : - kalkulus relasional : bahasa query formal yang didasarkan pada logika matematika - aljabar relasional : bahasa query formal didasarkan pada kumpulan operator untuk memanipulasi relasi Manajemen transaksi Eksekusi konkuren transaksi : menjadwalkan akses konkuren pada data - protokol locking : kumpulan aturan setiap transaksi Transaksi tak lengkap dan crash sistem - transaksi diinterupsi sebelum selesai dilakukan Struktur DBMS Query yang durai disajikan dalam optimizer query Rencana eksekusi adalah cetak biru untuk mengevaluasi query Kode yang mengimplementasi operator relasional terdapat pada bagian atas layer file Manajer buffer: membawa halaman dari disk ke memori utama These layers must consider concurrency control and recovery Query Optimization and Execution Relational Operators Files and Access Methods Buffer Management Disk Space Management DB Orang-orang yang bekerja dengan Database Desain skema konseptual dan skema fisik Keamanan dan otorisasi Ketersediaan data dan recovery dari kegagalan Database tuning