Bagian 2 Mengenal DBMS Kuliah Basis Data Pra S2 Ilmu Komputer - FMIPA
Topik Bahasan 1. DBMS dan Keuntungannya 2. Komponen Utama DBMS a. Perangkat Keras; b. Data; c. Perangkat Lunak, dan d. Pengguna. 3. Abstraksi Data 4. Model Basis Data a. Hirarkis; b. Jaringan, dan c. Relasional 2
II.1. DBMS dan Keuntungannya DBMS (Data Base Management System): : suatu program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memanipulasi dan memperoleh data informasi dengan praktis dan efisien. Empat (=4) keunggulan DBMS: Kepraktisan,, penggunaan media penyimpan yang berukuran kecil namun padat informasi; Kecepatan,, mesin dapat mengambil atau mengubah data jauh lebih cepat daripada manusia; Mengurangi Kejenuhan,, pekerjaan yang berulang-ulang dan monoton membosankan; Kekinian (up( to date),, informasi yang tersedia pada DBMS akan bersifat mutakhir dan akurat setiap saat. Kebanyakan DBMS menyediakan mekanisme pengaturan sekuritas (keamanan) terhadap basis data berdasarkan wewenang pengguna. Beberapa DBMS memiliki fasilitas query yang memudahkan pengguna dalam mengakses dan mendapatkan informasi. 3
II.2. Komponen Utama DBMS Program Aplikasi Pengguna DBMS Program Aplikasi Pengguna Perangkat Lunak Perangkat Keras Data 4
II.2.1. Perangkat Keras Berupa komputer (PC) dan bagian- bagian di dalamnya, unjuk-kerja kerja didasarkan pada (antara lain): frekuensi kerja prosesor (tipe prosesor), kapasitas memori dan kapasitas media penyimpan; 5
II.2.2. Data Data dalam basis data bersifat integrated dan shared: Terpadu (integrated( integrated),, berkas-berkas data yang ada pada basis data saling terkait (terjadi dependensi data); Berbagi data (shared( shared),, data (yang sama) dapat dipakai oleh sejumlah pengguna (dalam waktu yang bersamaan) sistem multiuser (bukan sistem single-user user). 6
II.2.3. Perangkat Lunak Perangkat lunak, dalam hal ini DBMS, berkedudukan antara basis data (data yang tersimpan dalam storage media) ) dan pengguna. Perangkat Lunak inilah yang berperan melayani permintaan- permintaan pengguna. 7
II.2.4. Pengguna (User) Penentuan hak akses disesuaikan dengan wewenang pengguna dalam organisasi: Memantau kinerja sistem,, secara s periodik DBA memantau kinerja DBMS. Merencanakan pencadangan (backup( backup) ) dan pemulihan (recovery( recovery) DBA-lah yang membuat panduan (guide( guide), prosedur serta standar untuk melakukan pencadangan dan pemulihan terhadap basis data. Mengikuti perkembangan produk DBA juga bertanggung jawab terhadap perkembangan produk, sehingga dapat memberikan usulan untuk melakukan hal-hal yang dianggap perlu. 8
II.2.4. Pengguna (User) Kategori Pengguna: Pengguna Akhir (End( User); Pemrogram aplikasi (Application( Programmer); dan Administrator Basis Data (Database( Administrator). Kategori Pengguna Akhir: Pengguna Aplikasi (Application( User); dan Pengguna Interaktif (Interactive( User). Tugas-tugas DBA (Database( Administrator): Mendefinisikan basis data; Menentukan isi basis data; Menentukan sekuritas basis data. 9
II.3. Abstraksi Data DBMS menyediakan pandangan abstrak terhadap data bagi pengguna. DBMS berusaha menyembunyikan detil tentang bagaimana data disimpan dan dipelihara. Pembagian abstraksi data: Lapis Fisis,, lapisan terendah dalam abstraksi data struktur data dijabarkan lebih rinci. Lapis Konseptual,, lebih tinggi dari Lapis Fisis menjabarkan data-data apa saja yang disimpan dan hubungan atau relasional-nya. nya. Lapis Pandangan,, lapisan tertinggi pengguna hanya mengenal struktur data yang sederhana saja. 10
II.3. Abstraksi Data Pandangan-1 Pandangan-2 Pandangan-3 Lapis Konseptual Lapis Fisis Misal: Pegawai := RECORD Nama Alamat Bagian Gaji END; : STRING; : STRING; : STRING; : LongInt; 11
II.4. Model Basis Data Model basis data menyatakan hubungan antar rekaman yang tersimpan dalam basis data struktur data logis; Model dasar: Hirarkis; Jaringan, dan Relasional Model yang baru pascarelasional,, beberapa nama yang sedang dikembangkan antara lain (sebagian ada di dalam konsep MPEG7): DBMS deduktif; DBMS pakar; DBMS semantik; DBMS berorientasi objek; DBMS relasional universal Beberapa produk sistem berorientasi objek telah beredar di pasaran, antara lain: OpenODB (Hewlett Packard) dan Object Source (Object Design Corp.). 12
II.4.1. Model Hirarkis Biasa disebut dengan model pohon (tree( model) menggunakan pola hubungan orangtua-anak anak (parent( parent- child). Setiap simpul menyatakan sekumpulan medan (field). Suatu simpul (node( node) ) yang terhubung ke simpul pada level di bawahnya orangtua (parent); Simpul yang dibawahi orangtua anak (child); Simpul yang tak memiliki anak daun (leaf); Hubungan orangtua dan anak cabang (branch). Contoh produk DBMS yang menggunakan model hirarkis adalah IMS (Information( management System), yang dikembangkan oleh dua perusahaan IBM dan Rockwell International Corporation. 13
II.4.1. Model Hirarkis Level 1 A Level 2 B C D E Level 3 F G H I J K Level 4 L M Dosen Siti Nurbaya Dosen Dt. Maringgih MK: Basis Data M K: COBOL M K: Matematika Rudy Asti Dani Dina Edi Warti Warto 14
II.4.2. Model Jaringan Distandarisasi tahun 1971 Data Base Task Group (DBTG) model DTBG atau CODASYL (Conference on Data System Language) DBTG bagian dari CODASYL. Satu simpul anak bisa memiliki lebih dari satu simpul orangtua, orangtua pemilik (owner( owner) dan anak anggota. Contoh produk CA-IDBMS/DB dari Computer Associates International Inc sebelumnya IDBMS (Integrated( DataBase Management System). 15
II.4.2. Model Jaringan Dosen Siti Nurbaya Dosen Dt. Maringgih MK: Basis Data MK: COBOL MK: Matematika Rudy Asti Dani Dina Edi Warti Warto 16
II.4.3. Model Relasional Merupakan model yang paling sederhana sehingga mudah digunakan dan dipahami, serta paling populer saat ini sekumpulan tabel berdimensi dua (relasi atau tabel) relasi dirancang untuk menghilangkan kemubaziran data. DBMS yang bermodelkan relasional disebut RDBMS (Relational DBMS) Padanan istilah relasi, tupel dan atribut: Meskipun relasi dikatakan sama dengan tabel, relasi pada sejumlah literatur sering disebut saat membicarakan struktur logis dan tabel adalah nama yang sering disebut pada basis data fisis. Selanjutnya istilah tabel kadang digunakan untuk menggantikan relasi atau sebaliknya. 17
II.4.3. Model Relasional 18
II.4.3. Model Relasional Ada beberapa sifat yang melekat pada suatu relasi: 1. Tak ada tupel (baris) yang kembar kunci primer; 2. Urutan tupel tidaklah penting (tupel-tupel dapat dipandang dalam sebarang urutan); 3. Setiap atribut memiliki nama yang unik; 4. Letak atribut bebas (urutan atribut tidak penting); 5. Setiap atribut memiliki nilai tunggal dan jenisnya sama untuk semua tupel. Jumlah tupel kardinalitas Jumlah atribut suatu relasi derajat (degree)) atau arity Relasi berderajat satu unary 19
II.4.3. Model Relasional Relasi berderajat dua binary Relasi yang berderajat tiga ternary Relasi yang berderajat n n-ary Domain himpunan nilai yang berlaku bagi suatu atribut Gabungan kunci primer kunci komposit Contoh produk DBMS yang menggunakan model relasional: DB2 dari IBM; RDB/VMS dari Digital Equipment Corp.; Oracle dari Oracle Corp.; Informix dari Informix Corp.; Sybase; Keuarga dbase; Microsoft SQL Microsoft Visual Foxpro; 20
II.5. Macam Perintah DBMS Semua DBMS paling tidak memiliki dua macam perintah yang digunakan untuk mengelola dan mengorganisasikan data, yaitu: Bahasa Definisi Data (DDL Data Definition Language); Bahasa Manipulasi Data (DML Data Manipulation Language). Lainnya terdapat perintah yang tergolong DCL (Data Control Language) ) yang berkaitan dengan pengaturan sekuritas basis data. 21
II.5.1. Bahasa Definisi Data (DDL) Adalah perintah-perintah yang biasa digunakan oleh administrator basis data (DBA) untuk mendefinisikan skema ke DBMS. Skema deskripsi lengkap tentang struktur medan, rekaman dan hubungan data pada basis data. Skema dapat dibayangkan sebagai suatu kerangka yang tidak tergantung nilai. Berbagai nilai yang valid dapat diterapkan pada kerangka. Skema bersifat relatif tetap, sementara nilai-nilainya nilainya dapat berubah dari saat ke saat. Secara lebih detil, beberapa hal yang perlu dijelaskan pada DBMS: Nama basis data; Nama seluruh berkas pada basis data; Nama rekaman dan medan; Deskripsi berkas, rekaman dan medan; Nama medan kunci; Nama indeks dan medan yang menjadi indeks. 22
II.5.1. Bahasa Definisi Data (DDL) Indeks merupakan suatu mekanisme yang lazim digunakan pada basis data yang memungkinkan pengambilan data dapat dilakukan dengan cepat! Hal-hal yang lain seperti penentuan: Ukuran basis data dan Rutin validasi dan penyunting yang dilekatkan pada berkas dalam data Bersifat spesifik terhadap DBMS yang digunakan. DDL untuk mendefinisikan subskema (pandangan atau view bagi pengguna terhadap basis data). Skema NAM A ALAM AT BAGIAN GAJI SubSkema NAM A BAGIAN 23
II.5.1. Bahasa Definisi Data (DDL) Sebuah basis data hanya bisa mempunyai sebuah skema, tetapi bisa memiliki banyak subskema, tergantung oleh jumlah pengguna basis data. DDL juga digunakan untuk menciptakan, mengubah dan menghapus basis data! SUBSKEMA BASIS DATA SKEMA SUBSKEMA...... SUBSKEMA PENGGUNA1 PENGGUNA1 PENGGUNA1 24
II.5.2. Bahasa Manipulasi Data (DML) Adalah perintah-perintah yang digunakan untuk mengubah, me- manipulasi dan mengambil data pada basis data. DML pada dasarnya dibagi menjadi dua: Prosedural,, yang menuntut pengguna menentukan data apa saja yang diperlukan dan bagaimana cara mendapatkannya; NonProsedural,, yang menuntut pengguna menentukan data apa saja yang diperlukan, tetapi tidak perlu menyebutkan cara mendapatkannya. nya. DML nonprosedural menawarkan kemudahan bagi pengguna dalam mempelajarinya dan juga dalam menggunakannya daripada DML prosedural. Cara mengakses data pada basis data: 1. Mengetikkan perintah-perintah (interaktif) yang ditujukan kepada DMS untuk memanipulasi suatu rekaman atau suatu data. 2. Melalui program aplikasi yang menggunakan instruksi-instruksi internal (embedded statement) ) ke DBMS untuk mengambil data dan memberikan hasilnya ke program 25
II.5.2. Bahasa Manipulasi Data (DML) Bahasa pemrograman seperti COBOL, C dan FORTRAN bisa digunakan sebagai aplikasi pengaksesan basis data antarmuka bahasa host. Instruksi yang merupakan bagian dari DML dikodekan pada program dan kelak dikonversikan oleh antarmuka bahasa host ke dalam suatu kode khusus penghubung antara program aplikasi dan DBMS. Bagian DML ada yang disebut dengan DQL (bahasa query); Query sesungguhnya berarti pertanyaan atau permintaan. Istilah ini tetap dipertahankan dalam bentuk asli, karena telah populer di kalangan pengguna DBMS di Indonesia user Program Aplikasi COBOL DBMS: Antarmuka Bahasa Host Basis data 26
Produksi Agfi s production house agfi@ugm.ac.id 2004 27