IMPLEMENTASI BASIS DATA

1. Pengantar
  • Tahap implementasi basis data merupakan upaya untuk membangun basis data fisik yang ditempatkan dalam media penyimpan (disk) dengan bantuan DBMS
  • Tahap ini diawali dengan melakukan transformasi dari model data yang telah selesai dibuat struktur basis data sesuai DBMS yang dipilih
  • Secara umum, sebuah ERD akan diwujudkan menjadi sebuah basis data secara fisik. Sedangkan komponen-komponen ER yang berupa himpunan entitas dan himpunan relasi akan diwujudkan menjadi tabel-tabel.  Selanjutnya, atribut-atribut yang melekat pada masing-masing himpunan entitas dan himpunan relasi akan dinyatakan sebagai field-field dari 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

2. Pengkodean / Abstraksi 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 :
    • 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
    • Internal (system coding)
      • Menggambarkan bagaimana data disimpan dalam kondisi sebenarnya, sehingga lebih berorientasi pada mesin

  • Ada tiga bentuk pengkodean :
    • Sekuensial
      • Pengkodean dilakukan dengan mengasosiasikan data dengan kode yang urut
      • Contoh : predikat kelulusan “Sangat Memuaskan”, ”Cukup Memuaskan”, “Memuaskan” à dikodekan dengan huruf “A”, “B”, “C”
    • Mnemonic
      • Pengkodean dilakukan dengan membentuk suatu singkatan dari data yang hendak dikodekan.
      • Contoh : “Laki-laki” à dikodekan ‘L”; “Perempuan” à dikodekan “P”
    • 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

3. Transformasi Model data ke Basis data fisik
  • Aturan umum dalam pemetaan model data yang digambarkan dalam ERD (level konseptual) menjadi Basis data fisik (level fisik) adalah :

a.   Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (file data)

b.   
Relasi dengan derajat relasi 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


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


d.    Relasi dengan derajat relasi banyak-ke-banyak, yang menghubungkan 2 buah himpunan entitas akan diwujudkan dalam bentuk tabel khusus, yang memiliki field (atau foreign key) yang berasal dari kunci-kunci dari himpunan entitas yang dihubungkannya

4. DBMS dan Struktur tabel
  • Dalam menentukan struktur dari tabel, paling tidak setiap struktur tabel berisikan nama field, tipe field dan ukurannya
  • Tatacara penamaan field, pilihan tipe field serta fasilitas tambahan lainnya untuk struktur tabel sangat tergantung pada DBMS yang digunakan
  • Tipe data yang bersifat umum adalah :
    • Data Alphanumerik, isinya berupa angka tapi tidak menunjukkan jumlah, sehingga dianggap sebagai teks. Misalnya : Nomhs, NIP
    • Data Numerik, isinya berupa angka yang menunjukkan jumlah. Misalnya : SKS, Gaji pokok
    • Data bilangan bulat (integer), Byte (1 byte), Small-Integer (2 byte), Long Integer (4 byte)
    • Data bilangan nyata, Single (4 byte), Double (8 byte). Tipe data single dapat menampung hingga 7 digit pecahan, sedangkan double hingga 15 digit pecahan
      • Dalam komputasi, data integer akan membutuhkan waktu lebih cepat dalam pengolahan data dibandingkan real. Begitu juga, karena ruang penyimpanan yang dibutuhkan lebih kecil, maka data single akan lebih cepat dalam pengolahan dibandingkan double
    • Data uang (currency), pemakaian tipe ini sangat membantu dalam mengatur tampilan data yang berkaitan dengan nilai uang, misalnya dengan adanya pemisahan ribuan/jutaan dan adanya tanda mata uang
    • Data teks, ada dua jenis yaitu ukuran tetap (fixed character) dan ukuran dinamis (variable character). Misalnya field nomhs lebih tepat bertipe fixed character karena ukurannya pasti dan pendek. Sedangkan nama mahasiswa sebaiknya bertipe variable character karena panjang dan bervariasi
  • Pertimbangan dalam menentukan tipe data bagi setiap field adalah :
    • Kecukupan domain
      • Harus dapat menjamin bahwa tipe data yang dipilih pada tiap field akan dapat menampung semua nilai yang akan diisikan ke dalam field tersebut
    • Efisiensi ruang penyimpanan
      • Apabila pemilihan tipe data tidak tepat (berlebihan), akibatnya akan memperbesar ukuran tabel secara keseluruhan
    • Kecepatan pengolahan data
      • Pada akhirnya, pemilihan tipe yang tidak tepat juga mengakibatkan pengaksesan data menjadi lebih lambat

5. Indeks dan Struktur penyimpanan
  • Pada tahap implementasi, atribut-atribut entitas / relasi yang ditetapkan sebagai kunci (key) akan diwujudkan sebagai Indeks Primer (primary index). Dan dapat juga ditambahkan Secondary index
  • Ada 2 indeks :
a.    Indeks Primer (primary index)
§  IP pada setiap tabel hanya ada satu dan hampir selalu berasal (ditentukan) dari kunci primer yang telah ditetapkan dalam sebuah entitas / relasi
§  IP yang baik terdiri atas field-field dengan kriteria sbb :
o   Field yang menjadi komponen IP harus bersifat mandatory (datanya tidak boleh kosong atau berisi nilai null)
o   Keseluruhan nilai IP bersifat unik
o   Nilai-nilainya lebih permanen (idealnya tidak pernah berubah)
o   Berukuran kecil (pendek) dengan jumlah field minimal (sedikit)

b.    Indeks Sekunder (secondary index)
§  Digunakan untuk mendukung keberadaan IP yang dibuat untuk suatu tabel dengan alasan untuk mempermudah berbagai cara pengaksesan ke suatu tabel
§  Misalnya : field Nama_Mahasiswa à untuk memudahkan pencarian data berdasar nama mahasiswa; disamping pencarian berdasar NOMHS
§  Catatan :
o   Jumlah IS dalam sebuah tabel boleh lebih dari Satur
o   Nilai-nilai field yang menjadi pembentuk IS tidak harus bersifat unik

6. Struktur penyimpanan
  • Ada 7 pilihan struktur penyimpanan dasar yang dapat diterapkan pada suatu tabel (bergantung pada DBMS yang dipakai) yaitu : Pile, Heap, hash, Sekuensial Berindeks, File berindeks, Multiring
  1. Heap
    • Merupakan struktur penyimpanan yang paling sederhana dan paling hemat dalam kebutuhan ruang penyimpanan
    • Setiap baris data disusun berdasar kronologis penyimpanannya. Record yang pertama disimpan akan ditempatkan di posisi awal ruang penyimpanan, dan begitu seterusnya
    • Pengubahan data tidak akan mengubah urutan record tersebut. Jika terjadi penghapusan, maka record-record dibawahnya akan dimampatkan untuk mengisi tempat yang kosong akibat penghapusan
    • Pencarian data berjalan dengan lambat, karena dilakukan secara sekuensial baris demi baris
    • Struktur ini cocok untuk tabel berukuran kecil dan jarang berubah
  2. Hash
    • Baris-baris data ditempatkan berdasar nilai alamat fisik yang diperoleh dari hasil perhitungan (fungsi hashing) terhadap nilai key-nya. Karena itu penempatan record dalam tabel tidak tersusun berdasarkan kedatangannya. Bisa jadi record yang terakhir dimasukkan justru menempati urutan pertama
    • Memiliki performansi yang paling baik dalam hal pencarian data tunggal berdasar kunci indeks
    • Struktur ini cocok untuk tabel-tabel yang sering menjadi acuan bagi tabel lain
    • Kelemahannya membutuhkan ruang penyimpanan awal yang besar, untuk menjamin agar record-record yang disimpan tidak menempati alamat yang sama à dibutuhkan alokasi ruang penyimpanan
  3. Sekuensial berindeks
    • Menempatkan data engan urutan tertentu berdasarnilai indeks primernya
    • Record yang memiliki nilai IP paling kecil dibandingkan record yang lain akan ditempatkan di awal ruang penyimpanan tabel meskipun dimasukkan belakangan
    • Performansi turun pada saat terjadi penambahan atau perubahan data yang menyangkut nilai indeks primernya, karena perlu dilakukan penataan ulang
    • Struktur ini cocok untuk tabel yang sifatnya statis, dan untuk pencarian data kelompok dalam suatu tabel (lebih baik daripada hash)
  4. File berindeks
    • Dikembangkan dari struktur heap. Record-record disusun berdasar kronologis penyimpanannya (seperti heap). Namun disediakan pula file indeks yang disusun berdasar nilai key setiap record yang berguna untuk membantu proses pencarian data ke suatu tabel
    • Terdapat 2 komponen yaitu komponen data dan komponen indeks. Komponen data disusun dengan struktur heap, dan komponen indeks disusun dengan struktur sekuensial berindeks
    • Struktur ini cocok untuk tabel yang dinamis dan berukuran besar

1 komentar:

Shikamaru Nara mengatakan...

good job gan
Solder Temperatur

Posting Komentar

 

Serba Ada Blog Copyright © 2011-2012 | Powered by Blogger