Contoh :
Name, Course, Email, Grade
John Smith, js@cs.bu.edu, CS112, B
John Smith, CS560, js@cs.bu.edu, B+
Mengapa
- Boros ruang penyimpanan
- Inkonsistensi
Mengapa menggunakan DB
• Data Retrieval
• Find the students who took CS560
• Find the students with GPA > 3.5
• Conceptual schema
mendefenisikan struktur logis sebuah
DB
• External schema (view)
menjelaskan bagaimana user melihat
data
• Physical schema menjelaskan
penyimpanan dan struktur indeks DB
Query
• Untuk mengambil data dalam sebuah DB digunakan query languanges
• DDL data definition languange, con : create
• DML Data manipulation languange, con : insert, update, delete
Transaksi
• Adalah serangkaian tindakan terhadap database (read/write) dengan
property:
Concurrent
• Sebagai contoh terdapat sebuah database yang memuat data mengenai
jadwal penerbangan dan kursi yang tersedia milik sebuah maskapai. Ada
beberapa airline yang mengakses database tersebut. Bisa saja sebuah
airline lain menemukan sebuah kursi kosong sementara agent lain sedang
melakukan reservasi terhadap kursi tersebut. Karena itu DBMS harus
menampilkan data terbaru dimana kursi yang dipesan agent pertama
sudah dipesan oleh agent lain untuk menghindari konflik.
• Tindakan bersamaan oleh kedua agent dapat mengakibatkan inkonsistensi
data
• DBMS bertugas untuk memastikan bahwa tidak terjadi inkonsistensi
seolah-olah user menggunakan database seorang diri.
Concurrent
• Agar tidak terjadi konflik, maka DBMS melakukan lock untuk database
yang sedang diakses.
• Lock mekanisme untuk mengontrol akses ke DB
contoh :
T1 melakukan modifikasi terhadap sebuah objek
T2 membaca objek yang tengah dimodifikasi T1.
Maka semua T1 akan melakukan lock untuk objek tersebut hingga
aktivitasnya selesai. Baru kemudian T2 dapat melakukan modifikasi.
Incomplete and Crash
• Sebuah tranksaksi bank, melakukan transfer dari akun A ke akun B.
Pada saat melakukan transaksi, sistem crash dan mati. Pada saat itu,
uang sudah didebet dari rekening A tapi belum ditransfer ke rekening
B. Maka di saat sistem dinyalakan kembali, maka sistem harus kembali
ke posisi awal sebelum akun A melakukan pendebetan.
• Untuk mengatasi terjadinya transaksi terputus, maka DBMS
menggunakann log untuk mencatat setiap transaksi yang terjadi. Jika
transaksi belum selesai pada saat terjadinya crash, maka DBMS akan
mengembalikan keadaan ke tahapan dimana sebelum terjadinya
transaksi.
Struktur DBMS
Siapa saja yang berhubungan dengan DBMS?
• DB implementors orang yang membangun software DBMS
• End user pengguna aplikasi yang dibangun menggunakan DBMS
• Application Programmers pembuat aplikasi yang menggunaka
DBMS
• Database Administrators orang yang membuat dan memaintain
database
Kuis
Gober McNugget ingin menyimpan informasi (nama, alamat, tanggal lahir dll) tentang banyak karyawan perusahaan di sistem
penggajiannya. Tidak mengherankan,volume data memaksa dia untuk membeli sistem database. Untuk menghemat uang, ia ingin
membeli satu DBMS dengan fitur paling sedikit mungkin, dan ia berencana untuk menjalankannya sebagai aplikasi yang berdiri sendiri
pada sebuah PC. Tentu saja, Gober tidak berencana untuk berbagi daftar dengan siapa pun. Tunjukkan mana dari fitur DBMS berikut
yang harus dibeli oleh Gober. Berikan alasannya
2. Kontrol Concurrency.
3. Pemulihan Crash.
5. Query Languange
Tugas (PR)
1. Cari contoh model data, jelaskan secara umum tentang model data
tersebut berserta gambar jika ada
2. Jelaskan cara kerja DBMS berdasarkan struktur DBMS
3. Sebutkan dan jelaskan tugas dari seorang DBA