Pages - Menu

Mei 04, 2013

Basis Data dan sistem Manajemen Basis Data


Basis Data
Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan dalam perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Basis data merupakan salah satu komponen utama dalam sistem informasi, karena merupakan basis dalam penyediaan informasi bagi para pemakai (Fathansyah, 1999; Post, 1999).


Satu hal penting yang harus diperhatikan, basis data bukan hanya sekedar
penyimpanan data secara elektronis. Tidak semua penyimpanan data elektronis bisa disebut basis data. Apabila penyimpanan itu tidak menggunakan prinsip pengaturan, pemisahan atau pengorganisasian maka kita tidak dapat menyebut penyimpanan data tersebut sebagai basis data. Pada Gambar 10.2 terlihat penerapan prinsip pengaturan, pengorganisasian atau pemisahan, baik pada lemari arsip atau pada basis data.


Prinsip utama dalam basis data adalah konsep independensi data yaitu pemisahan data dari program aplikasinya (Lewis et al., 2002; Post, 1999). Sedangkan tujuan utama dalam basis data adalah membantu pengguna dalam abstraksi suatu sistem. Ada tiga level abstraksi yang biasanya digunakan yaitu physical level, conceptual level dan view level (Gambar 10.3). Physical level menunjukkan bagaimana data akan disimpan. Conceptual level berkaitan
dengan data apa yang akan disimpan dan bagaimana hubungan antar data tersebut. View level merupakan level tertinggi yang menjelaskan bagian-bagian basis data pada pengguna tertentu (Ramakrishnan and Gehrke, 2000).



Gambar 10.3. Tingkatan dalam abstaksi data (Lewis et al., 2002).
Basis data mempunyai beberapa kriteria penting, yaitu :
1. Bersifat data oriented dan bukan program oriented.
2. Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah
basis datanya.
3. Dapat dikembangkan dengan mudah, baik volume maupun strukturnya.
4. Dapat memenuhi kebutuhan sistem-sistem baru secara mudah
5. Dapat digunakan dengan cara-cara yang berbeda.
Secara bertingkat, operasi dasar basis data dapat digambarkan dalam
skema pada Gambar 10.4. Operasi-operasi tersebut meliputi:
- Pembuatan basis data baru (create database). Operasi ini sama dengan
pembuatan atau pembelian lemari arsip yang baru.
- Penghapusan basis data (drop database). Operasi ini sama dengan
pengrusakan atau penghancuran lemari arsip.
- Pembuatan tabel baru (create table). Operasi ini sama dengan
penambahan kelompok arsip baru. Operasi ini baru bisa dijalankan jika
basis data telah dibuat.
- Penghapusan tabel (drop table). Operasi ini sama dengan pengrusakan
kelompok arsip lama. Operasi ini baru bisa dijalankan jika tabel telah ada
pada suatu basis data.

Operasi-operasi dasar pada basis data.
- Pengisian atau penambahan data baru (insert data) pada suatu tabel. Operasi ini mirip dengan penambahan lembaran arsip baru pada kelompok arsip. Operasi ini baru bias dijalankan jika tabel telah dibuat.
- Pengambilan data dari suatu tabel (retrieve data). Operasi ini mirip dengan pencarian lembaran arsip yang tersimpan dalam kelompok arsip.
- Pengubahan data dari suatu tabel (update data). Operasi ini mirip dengan perbaikan isi lembaran arsip dari suatu kelompok arsip
- Penghapusan data dari suatu tabel (delete). Operasi ini mirip dengan penghapusan sebuah lembaran arsip dari suatu kelompok arsip.
Basis data dibangun untuk memenuhi tujuan dalam pengorganisasian data, yang antara lain sebagai berikut :
1. Efisiensi meliputi kecepatan (speed), ruang simpan (space) dan
keakuratan (accuracy).
2. Menangani data dalam jumlah besar.
3. Kebersamaan pemakaian (Shareability).
4. Meniadakan duplikasi dan inkonsistensi data
 
2.Sistem Manajemen Basis Data
Pengelolaan basis data secara fisik tidak dilakukan oleh pemakai secara langsung, tetapi ditangani oleh sebuah Perangkat Lunak yang khusus/spesifik. Perangkat lunak inilah disebut DBMS yang akan menentukan bagaimana data diorganisasi, disimpan, diubah dan diambil kembali. Ia juga menerapkan mekanisme pengaman data, pemakaian data secara bersama, pemaksaan keakuratan/konsistensi data, sebagainya. Secara ringkas struktur suatu DBMS
dapat dilihat pada Gambar 10.5.

Aplikasi-aplikasi tambahan bersifat opsional (bisa ada dan bisa tidak) dan biasanya terdapat pada DBMS sebagai fungsi tambahan. Sebagai contoh, aplikasi pembuat report (laporan), aplikasi untuk mendisain form, aplikasi untuk membuat diagram atau chart, aplikasi untuk monitoring sistem, dan aplikasiaplikasi lainnya. Ada puluhan bahkan mungkin ratusan perangkat lunak DBMS yang tersedia. Masing-masing dengan spesifikasinya sendiri-sendiri. Mulai dari yang sangat sederhana sampai yang paling kompleks. Pada bagian ini kita akan
membahas 5 buah DBMS yang cukup familiar dikalangan pengguna DBMS, yaitu
Microsoft Access, MySQL, Microsoft SQL Server, PosgreSQL, dan Oracle.


Microsoft Access
Gambar 10.6.



 
Microsoft Access atau kadang disebut juga Microsoft Office Access adalah DBMS relational keluaran dari Microsoft yang termasuk dalam paket Microsoft Office. Microsoft
Access mengkombinasikan engine relational Microsoft Jet Database, Graphical User Interface (GUI) dan perangkat pengembang perangkat lunak. Microsoft Access dapat
menggunakan data yang disimpan dalam Microsoft Jet Database, Microsoft SQL Server, Oracle atau tipe lain asalkompatibel dengan ODBC (Open Database Connectivity).
Microsoft Access seringkali digunakan dalam pengembangan aplikasi secara cepat (Rapid Application Development), terutama untuk membangun prototipe dan
aplikasi stand-alone. Microsoft Access juga dapat digunakan sebagai basis data untuk aplikasi berbasis web sederhana. Namun pada aplikasi yang lebih kompleks, baik berdasarkanweb atau tidak, Microsoft Access bukanlah pilihan yang baik. Terutama karena kekurangannya dalam menangani penggunaan oleh banyak pengguna (multi-user). Hal ini
karena sebenarnya Microsoft Access adalah sebuah basis data personal yang lebih ditujukan untuk single-user. Microsoft Access juga tidak dilengkapi dengan database triggers dan stored procedurs



Salah satu keuntungan dari Microsoft Access bagi programmer adalah kompatibilitasnya terhadap SQL (structured query language) relatif tinggi. Pada Microsoft
Access kita dapat membuat query berbasis teks atau berbasis GUI kemudian dapat langsung dieksekusi dengan mudah untuk mendapatkan hasil.


·         MyQSL
 





MySQL adalah SQL-DBMS yang bersifat multi-user dan multi-threaded. MySQL berjalan sebagai server yang melayani banyak pengguna untuk mengakses sejumlah
basis data. DBMS ini sangat populer di dunia aplikasi berbasis web sebagai komponen basis data. Selain karena tersedia dalam versi gratis, popularitas MySQL juga sangat
dipengaruhi oleh populernya web server Apache dan bahasa pemrograman PHP. Istilah-istilah seperti LAMP (Linux- Apache-MySQL-PHP/Perl/Python), MAMP (Mac-Apache- MySQL-PHP/Perl/Python dan WAMP (Windows-Apache- MySQL-PHP/Perl/Python menjadi sangat terkenal. Banyak sekali aplikasi berbasis web yang dibangun dengan menggunakan kombinasi perangkat lunak tersebut. WordPress, Drupal, Mambo, Wikipedia, PHP-Nuke,
merupakan beberapa contoh aplikasi berbasis web yang menggunakan kombinasi ini.
Tidak seperti Microsoft Access, default instalasi MySQL tidak menyediakan GUI bagi pengguna untuk berinteraksi dengan basis data. Pengguna dapat berinteraksi dengan client yang menggunakan perintahperintah berbasis teks. Namun saat ini telah banyak GUI yang dikembangkan untuk mempermudah interaksi dengan basis data, baik itu berupa aplikasi stand-alone (misalnya MySQL-Front, MySQL-GUI, dan lain-lain) atau yang berbasis
web (misalnya, phpMyAdmin). Bahkan dengan menggunakan komponen MyODBC, MySQL dapat diakses dengan GUI dari Microsoft Access seperti halnya basis data yang kompatibel dengan ODBC lainnya.


·          Microsoft SQL Server
 


Microsoft SQL Server adalah DBMS relational keluaran dari Microsoft seperti halnya Microsoft Access. Bahasa query utama yang digunakan adalah varian dari
ANSI SQL yang disebut sebagai T-SQL (Transact-SQL). Bahasa ini membolehkan pengguna untuk membuat stored procedure sehingga meningkatkan efisiensi akses ke basis data. DBMS ini juga dilengkapi dengan fasilitas clustering dan mirroring. Cluster adalah kumpulan dari server-server yang konfigurasinya identik sehingga memungkinkan
pembagian kerja antar server. Sedangkan fasilitas mirroring membolehkan suatu DBMS untuk membuat tiruan (replika) dari isi basis data secara lengkap untuk digunakan
pada server yang lain. Microsoft SQL Server tersedia dalam beberapa versi
distribusi. Pada Microsoft SQL Server yang didistribusikan bersama Microsoft Office atau Microsoft Visual Studio, biasa disebut MSDE (Microsoft SQL Server Database Engine),
tidak dilengkapi dengan perangkat GUI. Pengguna dapat melakukan interaksi dengan menggunakan client berbasis perintah teks seperti halnya MySQL. Sedangkan pada versi
yang lebih tinggi seperti versi personal atau professional telah tersedia fasilitas GUI (Gambar 10.11).  



·         PostgreSQL



PostgreSQL atau sering disebut Postgres termasuk dalam kategori Object-Relational Database Management System (ORDBMS). ORDBMS adalah DBMS yang selain menggunakan prinsip-prinsip basis data relational juga menggunakan pendekatan berorientasi obyek dalam model basis datanya. Postgres dikembangkan sebagai freesoftware
dan bersifat terbuka (open-source) sehingga tidak dikendalikan oleh satu atau dua perusahaan. Kelebihan Postgres dibandingkan DBMS lainnya adalah, sifatnya yang free dan open-source, dukungan dokumentasinya yang luar biasa, fleksibilitasnya dan fiturfiturnya
yang tidak kalah dengan DBMS komersial. Selain mendukung model data object-relational, Postgres juga mendukung penggunaan basis data spasial (biasanya untuk penggunaan Sistem Informasi Geografis). Postgres juga mendukung operasi multi-user dan multi-threaded, bahkan mungkin lebih bagus dari MySQL dari sisi keamanan. Seperti halnya MySQL dan Microsoft SQL Server, kita dapat berinteraksi dengan basis data pada Postgres menggunakan perintah-perintah disisi klien dengan tool yang disebut psql. Antar muka yang bersifat GUI juga telah banyak dikembangkan, diantaranya phpPgAdmin, PgAdmin, dan lain-lain.