Sistem Basis Data
-
Upload
independent -
Category
Documents
-
view
0 -
download
0
Transcript of Sistem Basis Data
Literatur
● Database System Concepts, 6th Ed
Silberschatz, Korth, Sudarshan
– Slide-slide asli dapat didownload di db-book.com
Apa itu Database?
● Kumpulan data yang saling terkait
– Tidak harus dalam bentuk elektronik
– Seringkali DBMS (Database Management System) digunakan untuk mengelola database dalam bentuk elektronik
Mengapa Sistem Basis Data?● Pada masa lalu database dibuat langsung diatas file
system
● Muncul banyak kesulitan, antara lain:
– Harus membuat program baru untuk setiap pekerjaan baru
– Format file yang digunakan tidak seragam, bisa bermacam-macam
– Bisa terdapat duplikasi data di file-file yang berbeda
– Kesulitan untuk menerapkan “constraint” pada database
contoh: minimal saldo pada akun tabungan
constraint terpaksa diimplementasikan dalam program
Mengapa Sistem Basis Data? (cont.)
– Kesulitan menerapkan prinsip “atomicity”
apabila ada sebuah update pada database dan hanya berhasil sebagian/parsial, database bisa menjadi tidak konsisten. Contoh: transfer uang dari antar tabungan
– Kesulitan menyediakan akses konkuren (bersamaan) untuk banyak user sekaligus
akses konkuren yang tidak terkontrol dapat mengakibatkan database menjadi tidak konsisten
– Masalah keamanan
sulit mengatur data-data mana saja yang boleh dan tidak boleh diakses oleh user
ACID
● Merupakan 4 ciri/sifat yang harus dimiliki oleh sebuah DBMS
● Atomicity
setiap perubahan pada basis data harus mengikuti aturan “semua atau tidak sama sekali”.
● Consistency
setiap perubahan pada basis data hanya akan membawa basis data dari satu state/keadaan yang valid ke state lain yang juga valid
● Isolation
memastikan bahwa transaksi-transaksi yang berjalan bersamaan (konkuren) akan menghasilkan keadaan basis data yang sama dengan keadaan yang dicapai apabila transaksi-transaksi tersebut berjalan secara berurutan
● Durability
setiap perubahan yang telah dilakukan pada basis data akan tersimpan secara permanen, dan akan bertahan meskipun terjadi kegagalan sistem, listrik padam, dll
Model Relasional
● Pada model relasional, kumpulan data diorganisasikan ke dalam bentuk tabel 2 dimensi, yang disebut relasi (relations)
atribut(kolom)
tuple(baris)
Schema dan Instance
● Schema merupakan struktur logic dari sebuah databaseContoh: dari database relasional sebelumnya:
● instructor(ID, name, dept_name, salary)● department(dept_name, building, budget)
● Instance merupakan konten aktual dari sebuah database pada suatu waktu
Contoh:● instructor(2222, Einstein, Physics, 95000)● department(Biology, Watson, 90000)
Model Entity-Relationship
● Elemen dalam model Entity-Relationship:
– Entity
● merupakan sebuah objek yang dapat dibedakan dari objek lainnya
● dideskripsikan oleh sekelompok atribut
– Relationship
● asosiasi/keterhubungan antara beberapa entity
● Digambarkan dalam bentuk Entity-Relationship Diagram (ERD)
SQL (Structured Query Language)
● Merupakan bahasa non-prosedural yang paling banyak digunakan untuk mengelola database
● Terbagi atas beberapa kelompok:
– Data Definition Language (DDL)
– Data Manipulation Language (DML)
– Data Control Language (DCL)
– Transaction Control Language (TCL )
DDL (Data Definition Language)
● Digunakan untuk membuat atau mengubah schema basis data.
● Contoh:
create table instructor ( ID char(5), name varchar(20), dept_name varchar(20), salary numeric(8,2))
DML (Data Manipulation Language)
● Digunakan untuk melakukan seleksi/pencarian, penambahan, atau pengubahan instance basis data.
● Contoh:
– Pencarian nama instruktur dengan ID 2222
select name from instructor where instructor.ID = ‘22222’
– Pencarian lokasi ruang instruktur dengan ID 2222
select department.building from instructor, department where instructor.dept_name = department.dept_name and instructor.ID = ‘22222’
Desain Basis Data
Apa yang salah dengan desain diatas?
● Untuk menghasilkan desain database yang baik, dapat dilakukan proses normalisasi
Transaksi pada Basis Data
● Ambil contoh kasus berikut:
Terjadi transaksi transfer dana sebesar Rp 500.000,00 dari akun tabungan Mr.X ke akun tabungan Mr.Y.
Langkah-langkah proses update database yang harus dilakukan adalah:
● Saldo tabungan Mr.X dikurangi Rp 500.000,00● Saldo tabungan Mr.Y ditambah Rp 500.000,00
● Apa yang terjadi jika setelah saldo tabungan Mr.X dikurangi lalu listrik padam atau terjadi kesalahan sistem?