Implementasi Basis Data - ARTANA

Implementasi Basis Data

Pengertian
Implementasi basis data merupakan suatu tahapan dalam proses perancangan basis data. Tahap ini merupakan implementasi dari hasil pemodelan logical dan fisikal. Bahasa perintah yang digunakan, baik itu untuk definisi data ataupun penyimpanan data harus sesuai dengan DBMS yang dipilih. Implementasi penyusunan basis data dimulai dari pembuatan berkas-berkas data(tabel-tabel entity) kosong yang akan digunakan untuk menyimpan data dalam basis data. Kemudian dilanjutkan dengan pemasukan data untuk tiap instan entity.

Tahapan Implementasi Basis Data
Tahap implementasi basis data merupakan upaya untuk membangun basis data fisik yang ditempatkan dalam memori sekunder (disk) dengan bantuan DBMS (Database Management System) yang kita pilih. Tahap implementasi basis data diawali dengan melakukan transformasi dari model data yang telah selesai dibuat ke skema/struktur basis data sesuai dengan DBMS yang dipilih. Secara umum, sebuah diagram E-R akan direpresentasikan menjadi sebuah basis data secara fisik. Sedang komponen-komponen Diagram E-R yang berupa himpunan entitas dan himpunan relasi akan ditransformasikan menjadi tabel-tabel (file-file data) yang merupakan komponen utama pembentuk basis data. Selanjutnya atribut-atribut yang melekat pada masing-masing himpunan entitas dan himpunan relasi akan dinyatakan sebagai field-field dari tabel-tabel yang sesuai.

Performansi basis data ditentukan oleh :
• Kualitas dan bentuk perancangan basis data
• Kualitas mesin / komputer
• Platform yang dipilih
• Sistem operasi
• DBMS yang digunakan

Pengkodean/Abstaksi Data
Data yang dilihat oleh pemakai awam (end-user) bisa berbeda dengan bagaimana data / informasi itu disimpan. Apa yang dilihat oleh end-user bisa jadi merupakan hasil pengolahan yang tidak disimpan sama sekali dalam basis data, atau bisa dinyatkan dalam bentuk lain. Alasan untuk membuat suatu pengkodean adalah untuk efisiensi ruang penyimpanan. Dari pemakaiannya, ada dua bentuk pengkodean :

1. Eksternal (User-Defined Coding)
Mewakili pengkodean yang telah digunakan secara terbuka dan dikenal dengan baik oleh pemakai awam. Contoh : Nomor mahasiswa dan Kode matakuliah –> sudah dikenal baik oleh pemakai awam.

2. Internal (System Coding)
Menggambarkan bagaimana data disimpan dalam kondisi sebenarnya, sehingga lebih berorientasi pada mesin. Ada tiga bentuk pengkodean:
a. Sekuensial Pengkodean dilakukan dengan mengasosiasikan data dengan kode yang urut.
Contoh : predikat kelulusan "Sangat Memuaskan", "Cukup Memuaskan", "Memuaskan" dikodekan dengan huruf "A", "B", "C"
b. Mnemonic Pengkodean dilakukan dengan membentuk suatu singkatan dari data yang hendak dikodekan.. Contoh : "Laki-laki" -> dikodekan "L"; "Perempuan" -> dikodekan "P"
c. Blok Pengkodean dinyatakan dalam format tertentu.
Contoh : Nomor mahasiswa dengan format XX.YY.ZZZZ à terdiri atas XX = 2 digit tahun masuk, YY = 2 digit kode jurusan, ZZZZ = 4 digit nomor urut.

Transformasi Model Data ke Basis Data Fisik 
Aturan umum dalam pemetaan Model Data (Level Konseptual dalam Abstraksi Data) yang digambarkan dengan Diagram E-R menjadi Basis Data Fisik (Level Fisik dalam Abstraksi Data) adalah :

1. Setiap himpunan entitas akan diimplemetasikan sebagai sebuah tabel (file data)


  

Gambar 7.1 Tranformasi Himpunan Entitas ke Basis Data Fisik

2. Relasi dengan Relasi Derajat 1-1 (satu ke satu) yang menghubungkan 2 buah himpunan entitas akan direpresentasikan dalam bentuk penambahan/penyertaan atribut-atribut relasi ke tabel yang mewakili salah satu dari kedua himpunan entitas.

Gambar 7.2 Transformasi Relasi Satu ke Satu ke Basis Data Fisik

3. Relasi dengan Derajat Relasi 1-N (satu ke banyak) yang menghubungkan 2 buah himpunan entitas, juga juga akan direpresentasikan dalam bentuk pemberian/pencantuman atribut key dari himpunan entitas pertama (yang derajat 1) ke tabel yang mewakili entitas kedua (yang berderajat N).

Gambar 7.3 Transformasi Relasi Satu ke Banyak ke Basis Data Fisik 


Gambar 7.4 Transformasi Relasi Banyak ke Banyak ke Basis Data Fisik

DBMS dan Struktur Tabel
Bagaimana pilihan-pilihan tipe data dan feature-feature tambahan untuk struktur tabel dari berbagai DBMS secara detail dapat dipelajari dari berbagai dokumen referensi ataupun fasilitas help dari setiap DBMS. Dalam menentukan struktur dari tabel, paling tidak setiap struktur tabel berisikan nama field, tipe field dan ukurannya. Tipe data yang bersifat umum antara lain :

• Data angka : Numerik atau Alfaumerik (Teks) adalah field yang isinya berupa angka, tetapi tidak menunjukkan suatu jumlah. Data demikian kurang cocok kalau dianggap sebagai data Numerik, tetapi lebih cocok digolongkan sebagai Alfanumerik. Misalnya : NIM, NIP
• Data Numerik : Bilangan bulat (integer) atau bilagan nyata (real) integer merupakan tipe data numerik.
• Data Bilangan Bulat (integer) : Byte (1 Byte), Small integer (2 byte) atau long-integer (4 Byte).
• Data Bilangan Nyata : single (4 Byte) atau double (8 byte) tipe data single dapat menampung hingga 7 digit pecahan, sedangkan double hingga 15 digit pecahan. Perlu diperhatikan, dalam komputasi, data integer akan membutuhkan waktu lebih cepat dalam pengolahan data daripada data real.
• Data Uang, jika DBMS menyediakan tipe data yang khusus untuk meyimpan data uang, maka tipe ini paling bagus untuk diterapkan pada field yang menunjukkan data uang.
• Data Teks : ukuran tetap (fixed-character) atau ukuran dinamis (variable-character). Data teks yang ukurannya pasti atau yag tidak pendek, sebaiknya menggunakan fixed-character, sedang yang berukuran panjang atau yag pnjang pendeknya sangat berfariasi, sebaiknya menggunakan variable-character

Indeks dan Struktur Penyimpanan
Pada tahap implementasi, atribut-atribut entitas/relasi yang ditetapkan sebagai kunci(key) akan diwujudkan sebagai Indeks Primer (primary key).

Dan dapat juga ditambahkan Secondary Indeks Ada dua indeks yaitu :
1. Indeks Primer (primary index)
Indeks Primer pada setiap tabel hanya ada satu dan hampir selalu berasal dari kunci primer yang telah ditetapkan dalam sebuah entitas/relasi. Indeks Primary yang baik terdiri atas field-field dengan kriteria sebagai berikut :
a. Field yang menjadi komponen Indeks Primer harus bersifat mandatory(datanya tidak boleh kosong/null)
b. bersifat unik.
c. nilai – nilainya lebih permanen
d. berukuran kecil dengan jumlah field minimal

2. Indeks Sekunder(secondary index)
Digunakan untuk mendukung keberadaan Indeks Primary yang dibuat untuk suatu tabel dengan alasan untuk mempermudah berbagai cara pengaksesan ke suatu tabel. Misalnya : field nama_mahasiswa untuk memudahkan pencarian data berdasarkan nama mahasiswa disamping pencarian berdasarkan nim mahasiswa. Jumlah Indeks Sekunder dalam sebuah tabel boleh lebih dari satu. Nilai – nilai field yang menjadi pembentuk Indeks Sekunder tidak harus bersifat unik.

Struktur Penyimpanan (Storage Structure)
Yang juga berpengaruh dalam menentukan kecepatan akses dan manipulasi data adalah Struktur Penyimpanan yang kita gunakan. Berikut adalah struktur penyimpanan dasar yang dapat diterapkan pada suatu tabel :
• Heap merupakan struktur penyimapanan yang palig sederhanadan karena itu paling hematdalam membutuhkan ruang penyimpanan.
• Hash merupakan struktur penyimpanan yang menempatkan baris-baris data berdasarkan alamat fisik yang diperoleh dari hasil perhitungan (penggunaan fungsi hashing) terhadap nilai key-nya.
• Sekuensial Berindeks merupakan struktur penyimpanan yang menempatkan data dengan urutan tertentu didalam tabel (yaitu berdasarkan nilai Indeks Primernya).
• File Berindeks merupakan struktur penyimpanan yang dikembangkan dari struktur Heap.
• Hampir tidak ada DBMS yag mengakomodasi secara khusus adanya pemakaian struktur penyimpanan Pile dan Multirang. Sehingga struktur penyimpanan ini tidak perlu dipertimbangkan dalam menetukan struktur penyimapanan yang tepat bagi suatu tabel.

Referensi 
1. Waljiyanto, Sistem Basis Data : Analisis dan Pemodelan Data, Graha Ilmu, Yogyakarta, 2003 
2. http://informatika.web.id/implementasi-basis-data.htm 
3. http://lecturer.poliupg.ac.id/riniyn/BasisData/

Berlangganan update artikel terbaru via email: