Sistem Manajemen Basis Data
Sistem Manajemen Basis-Data (Data Base Management System / DBMS)
adalah perangkat lunak sistem yang memungkinkan para pemakai membuat,
memelihara, mengontrol, dan meng-akses basis data
dengan cara praktis dan efisien. DBMS dapat digunakan untuk
meng-akomodasikan berbagai macam pemakai yang memiliki kebutuhan akses
yang berbeda-beda. DBMS pada umumnya menyediakan fasilitas atau
fitur-fitur yang memungkinkan data dapat diakses dengan mudah, aman, dan
cepat. Beberapa fitur yang secara umum tersedia adalah:
- Keamanan : DBMS menyediakan sistem pengamanan data sehingga tidak mudah diakses oleh orang yang tidak memiliki hak akses.
- Independensi : DBMS menjamin independensi antara data dan program, data tidak bergantung pada program yang meng-akses-nya, karena struktur data-nya dirancang berdasarkan kebutuhan informasi, bukan berdasarkan struktur program. Sebaliknya program juga tidak bergantung pada data, sehingga walaupun struktur data diubah, program tidak perlu berubah.
- Konkruensi / data sharing : data dapat diakses secara bersamaan oleh beberapa pengguna karena manajemen data dilaksanakan oleh DBMS.
- Integritas : DBMS mengelola file-file data serta relasi-nya dengan tujuan agar data selalu dalam keadaan valid dan konsisten
- Pemulihan : DBMS menyediakan fasilitas untuk memulihkan kembali file-file data ke keadaan semula sebelum terjadi-nya kesalahan (error) atau gangguan baik kesalahan perangkat keras maupun kegagalan perangkat lunak.
- Kamus / katalog sistem : DBMS menyediakan fasilitas kamus data atau katalog sistem yang menjelaskan deskripsi dari field-field data yang terkandung dalam basisdata.
- Perangkat Produktivitas : DBMS menyediakan sejumlah perangkat produktivitas sehingga memudahkan para pengguna untuk menarik manfaat dari database, misalnya report generator (pembangkit laporan) dan query generator (pembangkit query / pencarian informasi).
Sistem Manajemen Basis-Data (DBMS) memiliki berbagai keunggulan
dibandingkan dengan pengelolaan data tanpa DBMS, walaupun tidak terlepas
dari beberapa kelemahan.
Keunggulan DBMS antara lain sbb:
- Mengurangi duplikasi data atau data redundancy
- Menjaga konsistensi dan integritas data
- Meningkatkan keamanan data
- Meningkatkan effisiensi dan effektivitas penggunaan data
- Meningkatkan produktivitas para pengguna data
- Memudahkan pengguna dalam menggali informasi dari kumpulan data
- Meningkatkan pemeliharaan data melalui independensi data
- Meningkatkan pemakaian bersama dari data
- Meningkatkan layanan backup dan recovery data
- Mengurangi konflik antar pengguna data
Kelemahan DBMS antara lain sbb:
- Memerlukan suatu skill tertentu untuk bisa melakukan administrasi dan manajemen database agar dapat diperoleh struktur dan relasi data yang optimal
- Memerlukan kapasitas penyimpanan baik eksternal (disk) maupun internal (memory) agar DBMS dapat bekerja cepat dan efisien.
- Harga DBMS yang handal biasanya sangat mahal
- Kebutuhan akan sumber daya (resources) biasanya cukup tinggi
- Konversi dari sistem lama ke sistem DBMS terkadang sangat mahal, disamping biaya pengadaan perangkat keras dan perangkat lunak, diperlukan pula biaya pelatihan.
- Apabila DBMS gagal menjalankan misinya maka tingkat kegagalan menjadi lebih tinggi karena banyak pengguna yang bergantung pada sistem ini.
Berikut ini disajikan tabel beberapa DBMS yang terkenal.
DBMS | Perusahaan |
Access | Microsoft Corporation |
DB2 | IBM |
Informix | IBM |
Ingress | Computer Associate |
mySQL | The MySQL Company |
Oracle | Oracle Corporation |
Postgres SQL | Postgres |
Sybase | Sybase Inc. |
Visual dBase | Borland |
Visual FoxPro | FoxPro Corporation |
DBMS untuk model data berbasis objek biasanya dinamakan sebagai Object Oriented Data Base Management System (OODBMS). Beberapa OODBMS yang terkenal adalah sebagai berikut:
OODBMS
|
Perusahaan
|
Gemstone | Gemstone System |
Matisse | ADB Inc. |
Versant | Versant |
Jeevan | W3 Apps. |
Vision | Insyte |
Objectivity | Objectivity Inc. |
ObjectStone | Object Design Inc. |
Poet | Poet Software. |
Perlu ditambahkan disini bahwa beberapa DBMS berbasis objek
sebenarnya tetap menggunakan file data relasional biasa, dengan kata
lain, programnya berbasis objek tetapi datanya masih model relasional
biasa. Software seperti ini biasanya disebut sebagai Object Oriented Relational DataBase Management System (OORDBMS), misalnya Visual dBase.
Arsitektur DBMS
Salah satu tujuan dari DBMS adalah untuk menyediakan sarana antar
muka (interface) dalam meng-akses data secara efisien tanpa harus
melihat kerumitan atau detail tentang cara data direkam dan dipelihara.
DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga
dapat diperoleh independensi data-program.
Pada tahun 1975, badan standarisasi nasional Amerika ANSI-SPARC
(American National Standards Institute – Standards Planning and
Requirements Committee) menetapkan tiga level abstraksi dalam database,
yaitu:
- Level Eksternal (external level) atau Level Pandangan (view level)
- Level Konseptual (conceptual level)
- Level Internal (internal level) atau Level Fisik (physical level)
Level Eksternal adalah level yang berhubungan langsung dengan
pengguna database. Pada level ini pengguna (user) hanya bisa melihat
struktur data sesuai dengan keperluannya sehingga setiap user bisa
memiliki pandangan (view) yang berbeda dari user lainnya. Pada level ini
pula dimungkinkan pandangan user berbeda dengan representasi fisik dari
data, misalkan untuk data hari secara fisik data direkam dalam bentuk
kode (1, 2, 3, dst) sedang user melihat data dalam bentuk teks nama hari
(Ahad, Senin, Selasa, …). Data yang dilihat oleh user seakan-akan
berasal dari satu file, secara fisik mungkin diambil dari beberapa file
yang berelasi.
Level Konseptual adalah level dari para administrator database, pada
level ini didefinisikan hubungan antar data secara logik, sehingga
diperlukan struktur data secara lengkap. Para administrator database
memahami bagaimana satu view dijabarkan dari beberapa file data,
demikian pula pada saat perancangan database mereka dapat saja membagi
data menjadi beberapa file agar dapat diakses dan disimpan secara
efisien.
Level Internal adalah level dimana data disimpan secara fisik dalam
bentuk kode, teks, angka, bit. Pada level ini didefinisikan allokasi
ruang penyimpanan data, deskripsi data dalam penyimpanan, kompressi data
(agar lebih hemat), dan enkripsi data (agar lebih aman).
Agar independensi data dapat dicapai maka disediakan pemetaan antar
lapisan (level), yatiu pemetaan eksternal-konseptual dan pemetaan
konseptual-internal. Pada pemetaan eksternal-konseptual, DBMS dapat
memetakan field-field data dari user-view ke dalam struktur data yang
sesungguhnya. Pada pemetaan konseptual-internal, DBMS dapat menemukan
rekaman fisik dari data yang didefinisikan pada struktur logik.
Bahasa DBMS
Implementasi bahasa DBMS bervariasi sesuai dengan variasi perusahaan
yang merancangnya, namun pada prinsipnya bahasa ini bisa dikategorikan
ke dalam tiga komponen bahasa, yaitu:
- Data Definition/Decription Language (DDL)
- Data Manipulation Language (DML)
- Device Control Media Language (DCML)
DDL adalah komponen bahasa DBMS yang digunakan untuk mendefinisikan
struktur data antara lain perintah untuk membuat tabel baru (CREATE)
dimana terdefinisi komponen/field data dengan tipe dan panjangnya,
mengubah index (INDEX, REINDEX) agar setiap rekord dalam satu file data
dapat diakses melalui indeks-nya, mengubah struktur (MODIFY STRUCT) dari
file data, dan sebagainya. Komponen bahasa ini banyak digunakan oleh
para administrator basisdata pada saat merencanakan atau membangun
file-file basisdata.
DML adalah komponen bahasa DBMS yang digunakan untuk memanipulasi
data, komponen ini diperlukan oleh para pengguna untuk memanipulasi
data, antara lain perintah-perintah untuk melakukan hal-hal berikut ini:
- mengambil data dari basisdata (LIST, DISPLAY)
- menambah data kedalam basisdata (INSERT, APPEND)
- meremajakan data yang ada dalam basisdata (UPDATE)
- menghapus data yang tidak diperlukan (DELETE)
- meng-urutkan data (SORT)
- menghitung frekuensi data (COUNT)
- mencari data (SEEK, FIND)
DML dapat dibedakan atas dua macam, yaitu DML Prosedural dan DML
Non-Prosedural. Pada DML Prosedural ketika data akan dimanipulasi maka
perintah harus disertai dengan perintah-perintah bagaimana data diakses
dari file database. Perintah DML Prosedural biasanya termuat dalam bahasa pemrograman
tingkat tinggi (high level programming language) seperti COBOL, C, C++
dan sebagainya. Pada DML non-Prosedural data dapat dimanipulasi langsung
tanpa harus memerintahkan bagaimana data dibaca dari file. Perintah DML
non-Prosedural biasanya digunakan dalam bahasa-bahasa DBMS seperti pada
dBase, Access, Paradox, FoxPro, SQL, dan sebagainya.
DCML adalah komponen bahasa DBMS yang digunakan untuk mengatur
perekaman atau penyimpanan data secara fisik. Komponen bahasa DCML
digunakan oleh operator-operator sistem basisdata didalam mengatur
file-file data secara fisik. Perintah-perintah yang termuat dalam
komponen ini, antara lain perintah perintah: merekam (Write Record,
Create Table), menghapus (Drop, Delete Table).
Tidak ada komentar:
Posting Komentar