Lompat ke konten Lompat ke sidebar Lompat ke footer

Struktur dan Penyimpanan Basis Data

Struktur dan Penyimpanan Basis Data

Tempat penyimpanan dan struktur file dimulai dari :

  1. cache
  2. main memory
  3. flash memory
  4. magnetik disk
  5. optical disk
  6. magnetic tapes

 

Penyimpanan (Storage)

  • Primary Storage adalah Media tercepat tetapi datanya tidak permanen (volatile). Memory cache dan main memory.

  • Secondary Storage adalah Level berikutnya dalam hirarki. Data tersimpan permanen. Kecepatan akses sedang.
    • Disebut juga online storage
    • Contoh: flash memory, magnetic disk, Solid State Disk. 

  • Tertiary Storage: Level terendah dalam hirarki. Data tersimpan permanen. Kecepatan akses rendah. 
    • Disebut juga offline storage 
    • Contoh: magnetic tape, optical storage (CD, DVD, Blueray)

 

Ukuran Perfoma Disk

Access time: waktu yang dihitung sejak perintah read atau write dikeluarkan sampai ketika proses transfer data dimulai. Terdiri dari: 
  • Seek time: waktu yang diperlukan untuk memposisikan lengan pembaca cakram ke track yang diinginkan. 
    • Rata-rata seek time adalah ½ dari seek time terburuk 
    • Sekitar 4 sampai 10 milidetik pada harddisk pada umumnya 
  • Rotational latency: waktu yang diperlukan sector yang akan dibaca berada dibawah head.
    • Rata-rata latency adalah ½ dari latency terburuk 
    • 4 – 11 milidetik pada harddisk pada umumnya (5400 sampai 15000 rpm) 
  • Data-transfer rate: waktu yang dibutuhkan sebuah data dapat diambil dari atau disimpan kedalam disk. 
    • 25 – 100MB per detik rate maksimal, lebih rendah untuk track-track yang berada di sisi dalam 
    • Beberapa disk dimungkinkan berada pada disk controller yang sama, sehingga kecepatan pada disk controller tersebut juga penting. 
      • Contoh: ATA-5: 66MB/detik, SATA: 150 MB/detik, Ultra 320 SCSI: 320 MB/detik, Fiber Channel (FC2Gb: 256 MB/detik
  • Mean time to failure (MTTF): rata-rata waktu yang diharapkan sebuah disk dapat bekerja tanpa adanya kegagalan.
    • Umumnya 3 sampai 5 tahun 
    • Kemungkinan adanya kegagalan pada disk baru sangatlah kecil 
    • MTTF akan menurun seiring bertambahnya umur disk 


Akses Tempat Penyimpanan

  • Database file dibagi-bagi menjadi beberapa unit penyimpanan dengan ukuran tetap yang disebut dengan Blocks. Block adalah unit pada alokasi tempat penyimpanan dan juga transfer data. 
  • DBMS berusaha meminimalkan jumlah block yang ditransfer antara disk dan memory. Kita dapat mengurangi jumlah dari disk yang diakses dengan cara menyimpan sebanyak mungkin block didalam main memory. 
  • Buffer: bagian dari memory utama yang tersedia untuk menyimpan copy dari disk blocks. 
  • Buffer manager: sebuah subsystem yang bertanggung jawab untuk mengalokasikan ruang buffer didalam memory

 

Buffer Manager

Program memanggil Buffer Manager ketika mereka membutuhkan sebuah block dari disk. Buffer Manager melakukan hal-hal berikut ini: 

  • Jika block sudah berada di buffer, kembalikan alamat dari blok di main memory 
  • Jika block tidak ada dalam buffer
    • Alokasikan ruangan di buffer untuk block Jika buffer penuh, hapus block-block yang lama 
    • Baca blok dari disk dan simpan ke buffer, kemudian kembalikan alamat dari blok yang ada di main memory

 

Buffer-Replacement Policy

  • Sebagian besar Sistem Operasi menggunakan metode Least Recently Used (LRU) strategy untuk mekanisme penggantian data yang disimpan didalam buffer. 
    • LRU: Jika space di Buffer penuh, maka data yang tidak digunakan paling lama akan dihapus paling dulu. 
  • Pinned Block: block di memory yang tidak diperbolehkan untuk ditulis kembali ke disk.
  • Beberapa metode lain yang bisa digunakan: 
    • Toss-immediate strategy
      • Data di buffer akan langsung dihapus setelah tuple (baris data) terakhir dari block data tersebut selesai diproses. 
    • Most Recent Used strategy
      • System akan me-pin (merubah status block menjadi Pinned Block) block2 yang sedang diproses. Setelah tuple terakhir pada block yang bersangkutan telah diproses, block tersebut akan di-un-pin (dihapus status Pinned Block-nya), dan block ini akan menjadi Most Recently Used block. 
      • MRU bisa dikatakan sebagai kebalikan dari LRU. 
  • Buffer manager dapat juga menggunakan informasi statistik yang berkaitan dengan kemungkinan suatu request akan mereferensikan ke suatu relasi tertentu. 
    • Contoh: sebuah data dictionary akan sering diakses -> block2 dari data dictionary akan selalu disimpan di memory Buffer.

 

Organisasi File pada Database

  • Sebuah database disimpan sebagai kumpulan dari beberapa file. Setiap file terdiri dari record-record yang berurutan. Record adalah kumpulan dari field-field. 
  • Salah satu pendekatan: 
    • Asumsikan ukuran record adalah tetap 
    • Setiap file mempunyai record-record dengan satu tipe yang sama 
    • Setiap file digunakan oleh satu relasi (tabel) saja
  • Pendekatan ini adalah yang paling gampang untuk diimplementasikan

 

Data Dictionary Storage

Data Dictionary (biasa disebut juga System Catalog) digunakan untuk menyimpan metadata, yaitu data tentang suatu data, seperti: 

  • Informasi tentang suatu tabel 
    • Nama Tabel 
    • Nama dan tipe dari setiap atribut pada tabel 
    • Nama dan definisi dari View. 
    • Integrity Constraints 
  • Informasi tentang User Account. 
  • Data-data statistik 
    • Contoh: jumlah baris pada sebuah tabel. 
  • Informasi tentang Index. 
  • Informasi tentang pengelolaan file secara fisik
    • Bagaimana sebuah tabel disimpan (sequential, hash)
    • Lokasi fisik dari tabel.