FILE SEKUEN • Karakteristik file sekuen Atribut-atribut data dikategorikan. Rekord berisi semua nilai data atribut dengan urutan dan posisi yang sama. Rekord-rekord data terurut dalam satu sekuen/aturan tertentu (biasanya berdasarkan atribut kunci). • Penyimpan file sekuen Nama atribut tidak perlu ditulis di tiap rekord dan hanya muncul di bagian deskripsi file. Setiap rekord mempunyai data atribut dalam urutan yang sama. • Komponen file sekuen File utama. File transaction log berstruktur pile.
• Perbandingan file sekuen dengan file pile Dengan kostrain sekuen dan rekord tetap, maka terjadi peningkatan efisiensi dan penurunan fleksibilitas. Pembaharuan terhadap file sekuen tidak mudah dilakukan.
1
• Struktur dan Pengakesan Struktur : - Satu deskripsi tunggal diterapkan ke semua rekord di file sekuen, semua rekord identik. - Jika terdapat penambahan atribut baru di rekord, seluruh file harus di reorganisasi, yaitu setiap rekord ditulis ulangdengan ruang kosong untuk item data baru - Bentuk rekord tetap (fixed record) Implementasi ada dua implementasi utama file sekuen, yaitu : - Rekord-rekord di-link satu dengan lainnya seperti linked-list secara terurut. - Rekord-rekord disimpan terurut secara fisik . Implementasi meminimalkan pengaksesan blok sehingga meningkatkan kinerja pengaksesan sekuen.
2
• Penggunaan File sekuen Commercial batch-oriented processing, dimana pembaharuan dilakukan secara periodik. Konsep file master dan transaksi digunakan untuk organisasi ini. Contoh penggunaan : payroll application (aplikasi penggajian).
• Analisis kinerja file sekuen Ukuran rekord (R) Format rekord tetap, ruang untuk nama atribut diabaikan karena deskripsi atribut hanya satu untuk seluruh file. R=aV dimana: a = jumlah atribut pada satu rekord V = panjang rata-rata nilai atribut 3
Waktu Pengambilan Rekord Tertentu (TF) Waktu pecarian rekord di file sekuen bergantung metode pencarian. Tiga metode pencarian, yaitu : 1. Pencarian secara sekuen, ini digunakan jika argumen pencarian menggunakan atribut bukan kunci. Perhitungan terdapat dua kasus, yaitu : belum terbentu file log TF = ½ b (B/t’) = ½ n (R/t’) telah terbentuk file log file log (overflow) sebesar o → TFo = ½ o (R/t’) TF = ½ (n + o) (R/t’) 2. Pencarian Biner Argumen pencarian adalah atribut kunci, dan dimulai mengakses tengah file (metode bagi dua) sehingga jumlah pengaksesan blok yang diharapkan adalah 2log(b). 4
Perhitungan terdapat dua kasus, yaitu : belum terbentuk file log
TF = 2log (b) (s + r + btt + c) telah terbentuk file log file log (overflow) sebesar o → TFo = ½ o (R/t’)
TF = 2log (b) (s + r + btt + c) + ½ o (R/t’) Dimana c adalah waktu yang diperlukan pemrosesan rekord. 3. Pencarian dengan penebakan Dilakukan akses langsung berdasarkan perkiraan posisi rekord di file kemudian dilanjutkan dengan pencarian sekuen. Perhitungan waktu yang diperlukan untuk pencarian sulit ditentukan.
5
Waktu Pengambilan Rekord Tertentu (TN) Terdapat pengurutan rekord di file sekuen, maka peluang rekord penerus (successor record) di blok yang sama dengan rekord sebelumnya adalah tinggi. Peluang menemukan rekord penerus di blok yang sama ditentukan jumlah rekord yaitu (1/Bfr). TN = btt * 1/Bfr = btt/Bfr Waktu Penyisipan Rekord (TI) Mekanisme : 1. Rekord-rekord disisipkan sesuai urutan kunci. 2. Terdapat dua cara penyisipan, yaitu : Untuk file berukuran kecil dapat dilakukan pergeseran rekordrekord agar sesuai urutan yang ditentukan. Langkah-langkah penyisipan rekord, yaitu : - cari lokasi yang cocok menurut kunci. - Menggeser rekord-rekord sesudah letak penyisipan. - Sisipkan rekord yang baru. TI = TF + ½ (n/Bfr) (btt + TRW) = n(R/t’) + n (r/Bfr)
6
Menyisipkan dulu ke log transaksi Mengumpulkan rekord-rekord baru ke file baru yaitu file log transaksi. TI = s + r + btt + (TY/o) Waktu Pembaharuan Rekord (TU) Ada dua kemungkinan pembaharuan terhadap rekord, yaitu 1. Pembaharuan terhadap bukan kunci Mekanisme : Cari rekord tersebut Perubahan dilakukan dengan penimpaan nilai baru TU = TF + TRW
7
2. Pembaharuan terhadap kunci Mekanisme : Cari rekord tersebut Hapus rekord yang diperbaharui dari file utama (memberi tanda hapus) Sisipkan rekord yang telah diperbaharui ke log transaksi TU = TF (main) + TI (file log)
Kasus Khusus : Pembaharuan secara batch Menumpuk banyak pembaharuan sekaligus agar rekord-rekord di satu blok dilakukan dengan sekali pencarian tidak lagi diperlukan pencarian yang berulang kali. TU = TN + TI Ukuran log transaksi o=d+2v Dimana : d : rekord yang dihapus v : rekord yang di update 8
Waktu Pembacaan Seluruh Rekord (TX) Mekanisme : 1. Pembacaan dilakukan terhadap file utama dan log transaksi. 2. Data diproses secara serial. 3. Log transaksi diurut (sort) lebih dulu, mempermudah pembacaan sekuen. Ada dua kasus, yaitu : 1. File log belum terlalu besar Mekanisme : dilakukan pembacaan dari awal sampai akhir. ikuti jalur ke file log bila rekord berikutnya di file log (file log telah di urutkan). TX = Tsort (o) + (n + o) (R/t’)
9
2. File log telah terlalu besar Langkah terbaik adalah sekaligus dilakukan reorganisasi. TX = TY Waktu Reorganisasi File (TY) Mekanisme : File log diurutkan berdasarkan kunci kemudian proses penggabungan file utama dan file log transaksi
TY = Tsort (o) + nold (R/t’) + o (R/t’) + nnew (R/t’) Bila jumlah rekord yang dihapus adalah d + v, maka : TY = Tsort (o) + 2 (n + o) (R/t’)
10