Database


 KONSEP DASAR BASIS DATA

Pemrosesan data diperlukan untuk mengolah data menjadi informasi. Integrasi informasi  dapat menjadikan informasi menjadi lengkap dan relevan, sehingga dapat memberikan manfaat yang optimal. Secara tradisional atau konvensional, kegiatan pemrosesan data suatu aplikasi dilaksanakan oleh bagian yang terkait dengan aplikasi tersebut.
Suatu aplikasi terdiri atas sekumpulan program aplikasi, file data, dan prosedur yang mengerjakan suatu proses atau fungsi. Setiap program aplikasi di dalam suatu lingkungan pemrosesan file  tradisional, khusus beroperasi pada file data yang dibuat specifik untuk aplikasi itu (lihat Gambar 1.1). Antar file data (di dalam satu aplikasi atau antar aplikasi) tidak ada hubungan, dan pada umumnya data didefinisikan dan disusun dengan cara yang berbeda untuk setiap aplikasi. Kenyataan ini membuat sulit dilakukannya integrasi data.


Gambar 1.1 Pemrosesan File Tradisional

Dengan karakteristik sebagaimana telah disebutkan, terdapat sejumlah keterbatasan yang menyebabkan  beaya pemrosesan menjadi mahal dan meningkatkan kemungkinan ter-jadinya kesalahan.
Keterbatasan tersebut ialah:
1.         Data menjadi terpisah dan terisolasi, karena antar file data tidak terhubung.
2.         Munculnya redundansi data, yang tidak dapat dihindarkan karena setiap aplikasi mempunyai file data sendiri-sendiri.
3.         Berpotensi terjadinya inkonsistensi data, yaitu jika dilakukan modifikasi data di suatu file akan tetapi di file yang lain (yang berisi data yang sama dengan data yang dimodifikasi) tidak dilakukan hal yang sama.
4.         Munculnya data yang membingungkan (data confusion),  yaitu apabila data yang sama disajikan dengan terminologi yang berbeda.
5.         Program aplikasi tergantung pada format file (program-data-dependence), yaitu kapan saja format data berubah maka seluruh program yang menggunakan data tersebut harus dimodifikasi.
6.         Sulit untuk menyajikan objek data yang komplek.

Dengan keterbatasan-keterbatasan tersebut, pemrosesan file tradisional kurang mempunyai keluwesan dan tidak mendukung pemakaian data bersama (data sharing).  Hal ini menyebabkan tidak dapat dilakukannya pertukaran data antar aplikasi, dan sering terjadi terpaksa harus dilakukan pengetikan ulang data dari satu aplikasi ke aplikasi yang lain. Sehingga untuk mengatasinya, dikenalkan konsep baru yang disebut basis data.

1.1. Basis Data
Basis data didefinisikan sebagai sekumpulan data yang saling berhubungan, disimpan dengan minimum redundansi untuk melayani banyak aplikasi secara optimal.
Redundansi (kelebihan) ialah: (a) penyimpanan data yang sama secara berulang, atau (b) jika data yang dapat diperoleh dari data lain disimpan tersendiri. Redundansi menyebabkan masalah pada waktu memperbarui (update) data, ruang penyimpanan yang boros, dan dapat menimbulkan tidak konsistennya data.
Untuk membuat suatu basis data yang memberikan manfaat optimal, suatu inventory data harus dibuat, data dan informasi yang diperlukan harus dianalisa, file basis data yang diperlukan harus dirancang, dan prosedur untuk memelihara basis data harus diadakan.Tabel 1.1 berikut memberikan redundansi macam yang pertama.

Tabel 1.1 Penyimpanan data yang sama secara berulang

NIM
KODE_MK
SKS
NILAI
A10
MK_01
3
A
A10
MK_02
2
B
A11
MK_01
3
A
A11
MK_01
3
A
A12
MK_02
2
B
A12
MK_03
3
B
Dari Tabel 1.1 di atas, terjadi pengulangan penulisan pasangan KODE_MK dan SKS yang sama. Misalnya untuk MK_01 (ditulis 3 kali), dan MK_02 (ditulis 2 kali). Jika data pada Tabel 1.1 di atas disusun kembali dengan menghilangkan redundansi, maka akan diperoleh Tabel 1.2 berikut.
Tabel 1.2 Duplikasi data
NIM
KODE_MK
NILAI
A10
MK_01
A
A10
MK_02
B
A11
MK_01
A
A11
MK_01
A
A12
MK_02
B
A12
MK_03
B

Pada Tabel 1.2 duplikasi terjadi karena penulisan KODE_MK untuk MK_01 dan MK_02, yang berturut-turut diulang sebanyak 3 dan 2 kali. Duplikasi penulisan seringkali tidak dapat dihindarkan dalam penyimpanan data Dari Tabel 1.1 dan Tabel 1.2 dapat dibedakan antara redundansi dan duplikasi.
Selanjutnya Tabel 1.3 memberikan contoh macam redundansi kedua. Untuk memperjelas gambaran redundansi, dalam tabel tersebut diberikan data mengenai mahasiswa, dosen wali, nomor telpon dosen wali, dan nomor telpon mahasiswa. 

Tabel 1.3 Penyimpanan data yang dapat diperoleh dari data lain


NIM
NIP_WALI

NIP_WALI
NAMA_WALI
A10
N101

N101
YUSI
A11
N102

N102
IBAM
                          a)                                                         b)
                                                                                           
NAMA_WALI
TELP_WALI

NIM
TELP_WALI
YUSI
(024)001

A10
(024)001
IBAM
(024)002

A11
(024)002
c)                                                           d)
Dengan mengamati keempat tabel di atas, ternyata Tabel 1.3 d) berisi data yang dapat diperoleh dari tabel lain, yaitu dengan meng-hubungkan Tabel 1.3 a), 1.3 b), dan 1.3 c). Dengan demikian untuk menghilangkan redundansi, Tabel 1.3 d) perlu dihilangkan.  
Suatu basis data, terlebih pada sistem yang besar, mempunyai karakteristik terintegrasi (integrated) dan pemakaian bersama (shared). Terintegrasi mengandung arti bahwa basis data terdiri atas penggabungan beberapa file data yang berbeda dengan eliminasi redundansi diantara file-file tersebut, atau dengan kata lain redundansi terkontrol. Sedangkan dengan pemakaian bersama berarti setiap bagian data di dalam basis data dapat dipakai bersama-sama diantara beberapa pengguna dan atau aplikasi yang berbeda. Beberapa pengguna dapat mengakses file data yang sama, pada sebagian/seluruh data yang ada. Bahkan pengguna yang berbeda dapat menggunakan seluruh/sebagian file data yang sama untuk keperluan yang berbeda (lihat Gambar 1.2).
Sebagai akibatnya, seringkali seorang pengguna hanya berkepentingan dengan sebagian kecil data yang tersedia pada suatu basis data, karena basis data memang dirancang untuk memenuhi kebutuhan banyak pengguna. Selain itu jika akses data dilakukan pada waktu yang bersamaan, akan terjadi akses tumbukan (concurrency access).
Biasanya data di dalam suatu basis data dianggap sebagai data yang menetap (persistent data), meskipun dalam waktu yang relatip terbatas. Data yang menetap dibedakan di dalam penggunaannya, apakah sebagai data masukan (input) atau data keluaran (output). Data masukan merupakan data yang diberikan ke dalam sistem untuk diproses lebih lanjut. Data keluaran berupa data/informasi yang berasal dari sistem, yang ditampilkan, dicetak atau ditulis pada media keluaran yang diinginkan, misalnya layar monitor, printer, atau harddisk/disket. Data masukan digunakan untuk menghasilkan informasi, sedangkan informasi itu sendiri tidak selalu seluruhnya berupa data yang menetap. 

1.2. Sistem Basis Data
Suatu basis data dapat dibuat dan dipelihara dengan cara manual atau dengan menggu-nakan komputer. Suatu basis data yang berbasis komputer dibuat dan dipelihara oleh sekumpulan program aplikasi yang ditulis secara khusus untuk menyelesaikan masalah tertentu, atau dengan menggunakan suatu Sistem Manajemen Basis Data (Database Management System).
Sistem Manajemen Basis Data (SMBD) merupakan suatu perangkat lunak yang terdiri atas sekumpulan program untuk mengelola dan memelihara data di dalam suatu struktur yang digunakan oleh banyak aplikasi, bebas (independence) terhadap media penyimpanan dan metoda akses. Sistem tersebut menyusun elemen data di dalam struktur yang telah didefinisikan sebelumnya dan menyimpan relasi diantara elemen data yang berbeda di dalam basis data.
Sebagai suatu perangkat lunak, SMBD merupakan sistem perangkat lunak dengan penggunaan yang bersifat umum (general-purposed) yang memfasilitasi proses pendefinisian, konstruksi, dan manipulasi basis data untuk berbagai aplikasi.
Pendefinisian suatu basis data meliputi specifikasi tipe data, struktur, dan batasan-batasan untuk data yang akan disimpan di dalam basis data. Mengkonstruksi suatu basis data ialah proses penyimpanan data pada media penyimpanan yang dikontrol oleh SMBD. Memanipulasi suatu basis data ialah mendapatkan kembali data specifik, memperbarui basis data, dan menghasilkan informasi dari data.
Penggunaan suatu SMBD yang bersifat umum tidaklah cukup untuk mengimplementasikan suatu basis data yang berbasis komputer. Umumnya masih diperlukan sekumpulan program yang dibuat sendiri, untuk penggunaan yang bersifat khusus (special-purposed).
Basis data dan perangkat lunak merupakan bagian dari sistem basis data, yang secara ringkas dapat dikatakan merupakan sistem penyimpanan record yang terkomputerisasi. Penyederhanaan sistem basis data digambarkan sebagai berikut:

Gambar 1.2 Penyederhanaan Sistem Basis Data

Sistem basis data terdiri atas empat komponen, yaitu:
a.         Data:
Sebagaimana telah dijelaskan sebelumnya, data untuk suatu basis data mempunyai karakteristik terintegrasi dan pemakaian bersama. Pada aplikasi  yang relatip besar data cenderung digunakan oleh sistem multi-user, sedangkan pada aplikasi relatip kecil data cenderung digunakan oleh sistem single-user.
Sistem multi-user ialah suatu sistem yang memungkinkan banyak pengguna (user) dapat mengakses basis data secara berbarengan (concurrent). Sistem single-user ialah suatu sistem dengan paling banyak satu pengguna dapat mengakses basis data pada sembarang waktu yang diberikan.
b.         Perangkat keras:
Terdiri atas  peralatan utama berupa penyimpanan bantu dan peralatan Input/Output (I/O), processor dan memory utama, serta peralatan pendukung (misalnya untuk peralatan jaringan atau peralatan komunikasi yang lain).
c.         Perangkat Lunak:
Sebagaimana telah disebutkan sebelumnya, perangkat lunak untuk sistem basis data disebut SMBD, yang merupakan lapisan diantara basis data secara phisik dengan pemakai. Fungsi utama dari SMBD ialah untuk menjadi perisai bagi pengguna dari rincian perangkat keras, sehingga pengguna dengan pengetahuan minimum mengenai perangkat keras dapat menggunakan sistem basis data dengan mudah.
d.        Pengguna:
Terdapat 3 macam pengguna sistem basis data, ialah:
·        Pemrogram aplikasi, yaitu yang bertanggung jawab menulis program aplikasi yang menggunakan basis data.
·        Pengguna akhir, yaitu pengguna yang berinteraksi dengan sistem basis data secara on-line melalui workstation atau terminal. Antarmuka banyak digunakan untuk mempermudah interaksi. Sedang untuk pengguna tertentu menggunakan fasilitas update data secara interaktif dengan bahasa query, karena lebih luwes dalam memberikan fungsi yang tidak disediakan oleh antarmuka. Bahasa query ialah bahasa standar yang digunakan untuk mendefinisikan dan memanipulasi data di dalam basis data. 
·        Administrator Basis Data (Database Administrator), yaitu seseorang yang menyusun strategi dan putusan kebijakan mengenai data, dan menyediakan kebutuhan dukungan teknik untuk mengimplementasikan putusan yang dipilih. Administrator basis data bertanggung jawab terhadap penggunaan kewenangan akses ke basis data, mengkoordinasikan dan memantau penggunaan basis data, dan untuk menyediakan sumber-sumber perangkat lunak dan perangkat keras sesuai kebutuhan. Dengan demikian administrator basis data bertanggung  jawab untuk semua kontrol sistem pada tingkat teknik.

1.3. Keuntungan Pendekatan Basis Data
Di dalam pendekatan basis data, terdapat suatu tempat penyimpanan data tunggal yang dikelola. Data tersebut didefinisikan sekali dan kemudian diakses oleh bermacam pengguna dan aplikasi.
Pendekatan basis data memberikan sejumlah keunggulan potensial dibandingkan dengan pemrosesan file tradisional. Keunggulan tersebut antara lain ialah:
a.         Redundansi data minimum:
Redundansi yang merupakan cara penyimpanan data yang memunculkan beberapa masalah sebagaimana telah dijelaskan pada bagian sebelumnya. Tidak disarankan semua redundansi untuk dieliminasi sama sekali. Beberapa alasan dapat diterima untuk menyimpan salinan dari data yang sama, misalnya untuk mempercepat akses. Akan tetapi di dalam suatu sistem basis data, redundansi adalah terkontrol.
b.         Konsistensi data:
Dengan menghilangkan atau mengontrol redundansi, dapat dipangkas terjadinya inkonsistensi data. Jika diberlakukan redundansi yang terkontrol, sistem basis data menjalankan konsistensi dengan mengupdate setiap data yang dimiliki jika terjadi perubahan.
c.         Integrasi data:
Di dalam suatu basis data, data disusun ke dalam suatu struktur logika tunggal, dengan relasi logika yang didefinisikan diantara objek data yang berhubungan.
d.        Pemakaian data bersama:
Suatu basis data dimaksud untuk dipakai bersama oleh semua pengguna yang diberi kewenangan. Banyak sistem basis data sekarang memperbolehkan banyak pengguna berbagi basis data secara berbarengan, meskipun batasan tertentu perlu diberlakukan.
e.         Menjalankan pembakuan:
Dengan pendekatan basis data, terdapat otoritas untuk mendefinisikan dan men-jalankan pembakuan data. Semua perubahan terhadap data, misalnya nama data dan format, menjadi terkontrol.
f.          Mempermudah pengembangan aplikasi:
Pendekatan basis data akan memangkas beaya dan waktu untuk pengembangan aplikasi baru. Pemisahan deskripsi data dari program aplikasi menyebabkan susunan data dapat diubah dan dikembangkan (dalam batas tertentu) tanpa perlu mengubah program aplikasi yang memproses data tersebut.
g.         Menyediakan antarmuka banyak pengguna:
Karena bervariasinya pengguna, dengan tingkat pengetahuan teknis yang berbeda, basis data menyediakan antarmuka pengguna yang bervariasi pula. 
h.         Menggambarkan relasi komplek diantara data:
Suatu basis data mungkin mengandung sejumlah keanekaragaman data yang saling berhubungan di dalam banyak cara. Pendekatan basis data memberikan kemampuan menggambarkan suatu keanekaragaman relasi yang komplek diantara data dengan tetap memberikan kemudahan dan efisiensi di dalam pencarian kembali dan update data yang berhubungan.
i.           Menjalankan batasan keutuhan (integrity):
Banyak aplikasi basis data mempunyai batasan keutuhan tertentu yang diberlakukan pada data. Suatu SMBD menyediakan kemampuan untuk mendefinisikan dan menjalankan batasan tersebut.
j.           Menyediakan backup dan pemulihan (recovery):
Suatu SMBD menyediakan fasilitas untuk backup dan pemulihan data dari kerusakan perangkat keras, perangkat lunak, maupun kesalahan proses.

1.4. Resiko Pendekatan Basis Data
Sebagaimana putusan-putusan yang lain, pendekatan basis data bukanlah tanpa risiko, dan risiko-risiko tersebut harus dikenali untuk dapat ditangani. Pendekatan basis data membawa risiko-risiko sebagai berikut:
a.         Spesialisasi baru:
Adopsi pendekatan basis data atau pembelian perangkat lunak SMBD memerlukan SDM dengan spesialisasi yang baru. Untuk memenuhinya perlu mencari tenaga baru atau dengan mengadakan pelatihan staf yang ada. 
b.         Perlunya beaya awal (start-up cost):
Beaya awal antara lain meliputi beaya untuk pengadaan perangkat keras, perangkat lunak, dan pelatihan. Bahkan untuk aplikasi yang komplek berpotensi memerlukan perangkat keras dan perangkat lunak dengan beaya yang relatip mahal.

c.         Perlunya konversi data:
Resiko ini muncul apabila data yang sudah ada sebelumnya diperlukan untuk basis data (untuk kesinambungan proses), dan dengan sistem penyimpanan data sebelumnya yang belum sesuai dengan keperluan basis data.
d.        Perlunya backup:
Backup atau salinan file ke media penyimpanan yang tidak aktif, berguna di dalam mengembalikan data yang rusak atau hilang, khususnya untuk data yang penting jika terjadi kerusakan data. Perangkat lunak SMBD atau prosedur tambahan dapat digu-nakan untuk keperluan tersebut.
e.         Meningkatnya kompleksitas data:
Di dalam basis data terdapat puluhan bahkan ratusan file yang saling terintegrasi. Pengelola file tersebut relatip komplek. 
f.          Data mudah diserang (vulnerable):
Dibandingkan dengan pemrosesan file tradisional, basis data lebih mengandung kerawanan apabila terjadi masalah di dalam basis data, karena banyak aplikasi secara bersamaan akan terganggu bahkan dapat menjadi lumpuh atau tidak dapat berfungsi. Meskipun gangguan keamanan basis data sudah diantisipasi, akan tetapi apabila sistem keamanannya telah dapat ditembus, penyusup akan dapat mengakses lebih banyak data dibanding di dalam lingkungan pemrosesan file tradisional.
g.         Gangguan dengan adanya data bersama:
Akses tumbukan untuk data bersama melalui beberapa program aplikasi dapat menyebabkan timbulnya beberapa masalah. Diantara masalah tersebut ialah tidak tepatnya hasil update, dan terjadinya deadlock. Pembahasan lebih rinci kedua masalah tersebut diberikan pada bagian berikutnya.
h.         Konflik organisasi:  
Basis data melibatkan beberapa bagian di dalam suatu organisasi. Perlu suatu konsensus untuk pendefinisian maupun “pemilikan” data. Tanpa konsensus tersebut, tanggung jawab data, khususnya di dalam pemeliharaannya menjadi tidak jelas.
Meskipun demikian, secara keseluruhan basis data memberikan pemecahan dalam mengatasi makin meningkatnya kebutuhan akan informasi, makin meluasnya aplikasi, keterkaitan antar aplikasi, dan tuntutan pemakai akan layanan yang semakin cepat dan mudah.
Perkembangan teknologi komputer dan komunikasi yang sangat cepat menawarkan kemampuan yang dapat dimanfaatkan  basis data untuk meningkatkan layanan pengolahan data.
 

Tidak ada komentar: