DBMS (Data Base Management Sistem)

Senin, 31 Januari 2011
Fungsi DBMS
Layanan-layanan yang sebaiknya disediakan oleh DBMS adalah :
1. Penyimpanan, pengambilan dan perubahan data
Sebuah DBMS harus menyediakan kemampuan menyimpan, mengambil dan merubah data dalam basis data.
2. Katalog yang dapat diakses pengguna
menyediakan sebuah katalog yang berisi deskripsi item data yang disimpan dan diakses oleh pengguna.
3. Mendukung transaksi
Menyediakan mekanisme yang akan menjamin semua perubahan yang berhubungan dengan transaksi yang sudah ada atau yang akan dibuat.
4. Melayani kontrol konkurensi
Sebuah DBMS harus menyediakan mekanisme yang menjamin basis data ter-update secara benar pada saat beberapa pengguna melakukan perubahan terhadap basis data yang sama secara bersamaan.
5. Melayani recovery
Menyediakan mekanisme untuk mengembalikan basis data ke keadaan sebelum terjadinya kerusakan pada basis data tersebut.
6. Melayani autorisasi
Sebuah DBMS harus menyediakan mekanisme untuk menjamin bahwa hanya pengguna yang berwenang saja yang dapat mengakses basis data.
7. Mendukung komunikasi data
Sebuah DBMS harus mampu terintegrasi dengan software komunikasi.
8. Melayani integritas
Sebuah DBMS bertujuan untuk menjamin semua data dalam basis data dan setiap terjadi perubahan data harus sesuai dengan aturan yang berlaku.
9. Melayani kemandirian data
Sebuah DBMS harus mencakup fasilitas untuk mendukung kemandirian program dari struktur basis data yang sesungguhnya.
10. Melayani utilitas
Sebuah DBMS sebaiknya menyediakan kumpulan layanan utilitas.
2.6. Komponen DBMS
Keterangan dari gambar 2.6. dijelaskan sebagai berikut:
1. Query Processsor
Komponen yang merubah bentuk queri ke dalam instruksi tingkat rendah ke basis data manager
Database Manager
Basis data manager menerima queri dan menguji skema eksternal dan konseptual untuk menentukan apakah record-record dibutuhkan untuk memenuhi permintaan. Kemudian DM memanggil file manager untuk menyelesaikan permintaan.
3. File Manager
Memanipulasi penyimpanan file dan mengatur alokasi ruang penyimpanan pada disk.
4. DML Preprocessor
Modul yang merubah perintah DML embedded ke dalam program aplikasi dalam bentuk fungsi-fungsi yang memanggil dalam host language.

5. DDL Compiler
Merubah statement DDL menjadi kumpulan tabel yang berisi metadata.
6. Dictionary Manager / Catalog Manager
Mengatur akses dan memelihara data dictionary. Data dictionary diakses oleh komponen DBMS yang lain.

Komponen software utama basis data manager seperti pada gambar 2.7. adalah
1. Authorization Control
Modul yang memeriksa apakah pengguna mempunyai wewenang untuk menyelesaikan operasi
2. Command Processor
Memeriksa apakah pengguna mempunyai wewenang untuk menyelesaikan operasi
3. Integrity Checker
Untuk semua operasi yang merubah basis data, integrity checker memeriksa operasi yang diminta memerlukan batasan integritas.
4. Query Optimizer
Modul ini menentukan strategi yang optimal untuk eksekusi queri
5. Transaction Manager
Modul ini mengerjakan proses-proses yang dibutuhkan operasi yang diterima transaksi
6. Scheduler
Modul ini bertanggung jawab untuk menjamin operasi secara bersamaan terhadap basis data sehingga berjalan tanpa ada masalah antara yang satu dengan yang lain.
7. Recovery Manager
Modul ini menjamin basis data tetap konsisten walaupun terjadi kerusakan.
8. Buffer Manager
Modul ini bertanggung jawab terhadap pemindahan data antara main memory dan secondary storage, seperti disk dan tape.

2.7. Data Dictionary
Data dictionary adalah tempat penyimpanan informasi yang menggambarkan data dalam basis data. Data dictionary biasa disebut juga dengan metadata atau data mengenai data.
Modul pengontrol autorisasi menggunakan data dictionary untuk memeriksa apakah seorang pengguna perlu mempunyai wewenang
Untuk mengerjakan pemeriksaan tersebut, data dictionary menyimpan
• nama-nama pengguna yang mempunyai wewenang untuk menggunakan DBMS
• nama-nama item data yang ada dalam basis data
• item data yang dapat diakses oleh pengguna dan jenis akses yang diijinkan, misalnya : insert, update, delete atau read
• Selain itu, untuk memeriksa integritas data, data dictionary menyimpan
• nama-nama item data dalam basis data
• jenis dan ukuran item data
• batasan untuk masing-masing item data

Arsitektur DBMS Multi Pengguna
Pada seksi ini akan di jelaskan mengenai arsitektur yang biasanya digunakan untuk mengimplementasikan sistem basis data yang multi user, yaitu teleprocessing, file server dan client server.
2.8.1. Teleprocessing
Arsitektur tradisional untuk sistem multi pengguna adalah teleprocessing, dimana satu komputer dengan sebuah CPU dan sejumlah terminal seperti pada gambar 2.8. di bawah ini.

Semua pemrosesan dikerjakan dalam batasan fisik komputer yang sama. Terminal untuk pengguna berjenis 'dumb', yang tidak dapat berfungsi sendiri dan masing-masing dihubungkan ke komputer pusat. Terminal-terminal tersebut mengirimkan pesan melalui subsistem pengontrol komunikasi pada sistem operasi ke program aplikasi, yang bergantian menggunakan layanan DBMS. Dengan cara yang sama, pesan dikembalikan ke terminal pengguna. Arsitektur ini menempatkan beban yang besar pada komputer pusat yang tidak hanya menjalankan program aplikasi tetapi juga harus menyelesaikan sejumlah pekerjaan pada terminal seperti format data untuk tampilan di monitor.

2.8.2. File-Server
Proses didistribusikan ke dalam jaringan, sejenis Local Area Network (LAN). File server mengendalikan file yang diperlukan oleh aplikasi dan DBMS. Meskipun aplikasi dan DBMS dijalankan pada masing-masing workstation, tetapi tetap meminta file dari file server jika diperlukan (perhatikan gambar di bawah ini). Dengan cara ini, file server berfungsi sebagai sebuah hard disk yang digunakan secara bersamaan. DBMS yang ada pada setiap workstation meminta data ke file server untuk semua data yang diinginkan oleh DBMS.
Kerugian arsitektur file-server adalah
• Terdapat lalulintas jaringan yang besar
• Masing-masing workstation membutuhkan copy DBMS
• Kontrol terhadap konkurensi, recovery dan integritas menjadi lebih kompleks karena sejumlah DBMS mengakses file secara bersamaan

2.8.3. Client Server
Untuk mengatasi kelemahan arsitektur-arsitektur di atas maka dikembangkan arsitektur client-server. Client-server menunjukkan cara komponen software berinteraksi dalam bentuk sistem. Sesuai dengan namanya, ada sebuah pemroses client yang membutuhkan sumber dan sebuah server yang menyediakan sumbernya. Tidak ada kebutuhan client dan server yang harus diletakkan pada mesin yang sama. Secara ringkas, umumnya server diletakkan pada satu sisi dalam LAN dan client pada sisi yang lain.

Dalam konteks basis data, client mengatur interface berfungsi sebagai workstation tempat menjalankan aplikasi basis data. Client menerima permintaan pengguna, memeriksa sintaks dan generate kebutuhan basis data dalam SQL atau bahasa yang lain. Kemudian meneruskan pesan ke server, menunggu response dan bentuk response untuk end pengguna. Server menerima dan memproses permintaan basis data kemudian mengembalikan hasil ke client. Proses-proses ini melibatkan pemeriksaan autorisasi, jaminan integritas, pemeliharaan data dictionary dan mengerjakan query serta proses update. Selain itu juga menyediakan kontrol terhadap concurrency dan recovery.
Ada dua macam implementasi sistem client server yaitu sistem client server sederhana

0 komentar:

Posting Komentar