FILE SEKUEN BERINDEKS • Tujuan file sekuen berindeks adalah untuk meningkatkan kecepatan akses di file sekuen tanpa mengurangi manfaat dan sifat file sekuen.
• Komponen file sekuen File utama, berisi data. File indeks, untuk memberi akses acak lebih baik. File overflow , untuk menangani penambahan rekord ke file.
• Indeks untuk File Sekuen Berindeks Statik. Indeks multilevel, diindeks terus sampai indeks terakhir termuat di satu blok. Block anchor.
1
• Keunggulan File sekuen Berindeks File dapat diproses sekuen maupun langsung secara efisien.
• Struktur dan Pengaksesan Kemampuan pengaksesan satu rekord secara langsung (bergantung pada perangkat penyimpan sekunder. Struktur sekuen berindeks tidak dimungkinkan pada magnetic tape karena tidak mendukung pengaksesan langsung.
• Penggunaan File Sekuen Berindeks File ini efisien untuk penyimpanan data terstruktur bagus dan pemrosesan terhadap seluruh rekord. Contoh penggunaan : sangat sering digunakan pada pengambilan data cepat ( online access).
2
• Analisis kinerja file sekuen Ukuran rekord (R) Ukuran data dipengaruhi dua faktor yaitu 1. Pada daerah overflow adalah o’ atau No’ 2. Pada daerah utama adalah Nm Penyimpanan sekuen berindeks menggunakan format rekord tetap bergantung jumlah atribut a dan ukuran pointer.
R=aV+P dimana: a = jumlah atribut pada satu rekord V = panjang rata-rata nilai atribut P = Panjang field pointer Jumlah rekord (N) = Nm + No 3
Jumlah blok untuk menyimpan rekord pada file utama : i1 = Nm / Bfr
dimana : i = jumlah blok indeks
ilevel = (ilevel - 1 / y)
maka b ilevel = ilevel / y = ilevel + 1
Ukuran total file sekuen berindeks : Si = (bi + b2 + b3 + ... + 1) B = (i2 + b3 + ... + 1) B Total ruang penyimpanan yang diperlukan : Rtotal = (Si + (Nm + No) R) /N
4
Waktu Pengambilan Rekord Tertentu (TF) Mekanisme dan perhitungan : 1. Akses indeks, yaitu TAn= x (s + r + btt) 2. Akses daerah utama, yaitu TAq= s + r + btt 3. Akses daerah overflow, yaitu TAo= o’ / Nm (s + r + btt)
Perhitungan : TF = TAn + TAq + Tao Pembacaan rekord tanpa membaca overflow : TF = TAn + TAq = (x + 1) (s + r + btt) Pembacaan rekord yang telah ada penyisipan, yaitu membaca overflow :
TF = TAn + TAq + Tao = (x + 1 + o’/n) (s + r + btt) 5
Waktu Pengambilan Rekord Tertentu (TN) Mekanisme : Untuk mencapai rekord berikutnya dapat secara seri atau lansung ke daerah berbeda. Pencarian dimulai setelah rekord terakhir, terdapat 6 kasus : 1. Rekord sudah ada di buffer. 2.Tidak ada di buffer, rekord terdapat di blok berikutnya dalam satu selinder (tidak mengalami penyisipan pada blok tersebut). 3.Tidak ada di buffer, rekord terdapat di blok berikutnya tidak di satu selinder yang sama (tidak mengalami penyisipan pada blok tersebut). 4. Rekord berikutnya, di blok overflow (mengalami penyisipan di blok tersebut). 5. Rekord berikutnya, di blok overflow lain di satu selinder yang sama (rekord saat ini merupakan rekord sisipan). 6. Rekord berikutnya di blok data utama (rekord saat ini merupakan rekord sisipan). 6
Perhitungan : Rekord berikutnya di daerah utama, maka hanya diperlukan pembacaan blok : TN = (1/Bfr) (s + r + btt) Pada daerah overflow, diperlukan : ToF = o’ / Nm (r + btt) TN = (1/Bfr) (s + r + btt) + o’ / Nm (r + btt) Waktu Penyisipan Rekord (TI) Mekanisme : 1. Baca dan tulis ulang rekord predecessor atau blok untuk overflow. 2. Baca dan tulis ulang blok overflow untuk rekord yang disisipkan atau di push. TI = TF + TRW + r + btt + TRW dimana : TRW = 2 r = TF + 5r + Btt
7
Waktu Pembaharuan Rekord (TU) Ada dua kemungkinan pembaharuan terhadap rekord, yaitu 1. Pembaharuan terhadap bukan kunci TU = TF + TRW 2. Pembaharuan terhadap kunci Mekanisme : Cari rekord tersebut. Rekord yang diperbaharui diberi tanda hapus. Rekord baru disisipkan. TU = TF + TRW +TI
8
Waktu Pembacaan Seluruh Rekord (TX) Mekanisme : membaca dari awal sampai akhir file secara serial TX = TF + (n + o’ - 1) TN = [(n +o’ Bfr) / Bfr] (r +btt) Waktu Reorganisasi File (TY) Mekanisme : Membaca dari awal sampai akhir secara serial Menulis ulang (rewrite) ke file tanpa menggunakan overflow. TY = [(n +o’ Bfr) / Bfr] (r +btt) + (n + o’ – d) (R/t’) + (SI /t’)
9