Anda di halaman 1dari 17

INDEKS

Indeks merupakan suatu sikuensi dalam suatu proses. Indeks dapat dijadikan sebagai suatu acuan
dalam berbagai proses, termasuk dalam akses file. File indeks berisi berisi kumpulan isian indeks yang
merujuk record dalam file utama. Isian indeks berisi pasangan nilai atribut kunci record dan pointer acuan
untuk pengaksesan seketika record tersebut yaitu nilai kunci dan pointer. Untuk record-record yang
berukuran besar, indeks berukuran yang sangat kecil dibanding dengan record data.

Kapasitas penyimpanan untuk indeks yang lebih kecil dibanding dengan file data sehingga ruang
pencarian (search) pada file indeks selalu terurut menurut atribut kunci agar pencarian dapat berlangsung
dengan cepat.

Indeks menjadi lebih efektif pada file berukuran sangat besar dimana indeks mempunyai jumlah
bloks lebih kecil. Pencarian dengan indeks yang lebih besar dapat terbantu oleh pengindeksan file dengan
level indeks yang semakin kecil sampai dapat dimuat dalam satu blok.

Terdapat 2 jenis indeks yaitu :

1. Indeks statis
Indeks statis terjadi pada saat reorganisasi, dimana indeks tersebut tidak akan berubah karena
pembaharuan (update). Record-record baru selalu ditempatkan pada posisi overflow dan dikaitkan
pada record-record sebelumnya dalam file

2. Indeks dinamis
Indeks dimanis ini terjadi pada file berindeks majemuk. Pembaharuan (update) dilakukan terhadap
file utama dan bukan pada posisi overflow, karena record akan dicari berdasarkan indeks.
Pembaharuan tersebut dapat berupa : Insert, Update, Delete dimana semua perubahan yang terjadi
mengikuti irama file utama.

Parameter indeks dapat dibedakan antara lain :

1. Rasio fanout y (fanout ratio y), jumlah isian indeks di satu blok indeks
2. Height (x) ke dalam indeks (banyaknya level indeks)

Fanout Ratio

y =  (B) / (v + P) 

dimana : B = ukuran blok, V = ukuran field kunci (atribut dan nilainya), P = ukuran field pointer.

Height

x =  ylog  n / Bfr 

Dimana : n = jumlah record data dalam satu file, y = fan out, Bfr = blocking factor (B/R)
Contoh :

Jika diketahui :

Metode fixed blocking :

Ukuran blok (B) = 1024 byte

Ukuran record (r) = 100 byte

Jumlah record (n) = 1.000.000 buah

Ukuran record (P) = 4 byte

Ukuran field kunci (V) = 10 byte

Berapa nilai y dan x ?

Jawab :

Bfr =  B/r  =  1024 / 100  =  10,24  = 10

y =  (B) / (v + P)  =  (1024) / (10 + 4)  =  73,14  = 73

x =  ylog  n / Bfr  =  73log 1.000.000 / 10  =  73log 100.000   =

= log (100.000) / log(73)  = 5 / 1,863  = 2,684  3

(https://asanisembiring.files.wordpress.com/2012/02/bab5.doc)

BLOCK ANCHOR VS RECORD ANCHOR

Terdapat 2 tipe pengacuan pada indeks yaitu :

1. Block anchor
Block anchor adalah bahwa indeks tidak menunjuk langsung ke record, tetapi ke blok yang memuat
record

2. Record Anchor
record anchor adalah bahwa indeks menunjuk ke record. Jika terdapat n rekord data, maka banyak
entri indeks diperlukan = n/Bfr
(http://ichejawary.blogspot.com/2014/02/sekilas-tentang-organisasi-berkas.html)

PENEMPATAN INDEKS

Terdapat tiga alternatif penempatan indeks yaitu :

1. Sebagai file terpisah dari data


2. Mencadangkan ruang di tiap silinder
3. Mendatangkan ruang di tiap blok
TEKNIK PUSH-THROUGH

Kegunaannya :peningkatan efisiensi karena hanya menggunakan satu pointer ke overflow per
blok. Teknik ”push-through” adalah :

 Record baru disisipkan segera setelah posisi terurutnya


 Record-record sesudah record yang disisipkan digeser (di push) dalam satu blok.

BLOCK
Block (blok) merupakan unit terkecil dari transfer data (disebut blok fisik). Sistem file dalam sistem
operasi membagi disk menjadi sejumlah blok fisik (physical block) yang berukuran sama. Blok yang biasa
diguna kan mulai dari 1 KB sampai dengan 64 KB (1 segment). Masing-masing blok mempunyai satu alamat
yang digunakan untuk menunjuk blok secara tepat dimana blok tersebut berada.

Sistem operasi menyimpan file dalam 1 blok atau lebih, masing-masing blok dapat berisi 1 record
atau lebih. Blok biasanya byte-byte yang tidak digunakan untuk menyimpan data melainkan menyimpan
kendali informasi yang disebut header yang terdapat di awal blok. Header berisi informasi mengenai
alamat dari blok berikutnya yang digunakan untuk menyimpan file.

Dalam sistem operasi bahwa sistem file bertanggung jawab dalam alokasi dan dealokasi file.
Proses ini menimbulkan dua masalah yaitu :

1. Alokasi ruang penyimpanan


2. Pencatatan ruang tersedia untuk alokasi

BLOCKING FACTOR
Block ini merupakan unit data yang ditransfer pada satu operasi I/O tunggal. Blok berukuran tetap
berisi sekumpulan karakter yang dipindah dari penyimpanan ke memory atau sebaliknya. Blok data berisi
satu atau beberapa rocord sehingga untuk mengakses satu record harus mengakses lebih dari satu blok
dimana ditentukan oleh metode blocking yang digunakan.

Record disimpan secara blok yaitu unit penyimpanan, dimana penempatan record-record ke blok
disebut blocking yang bertujuan untuk meningkatkan kecepatan pengambilan record dan menghemat
tempat penyimpanan.

Sejumlah record yang dapat dimuat dalam 1 blok disebut blocking factor, record tetap dapat
dihitung jumlahnya dalam blok. Sedangkan record tidak tetap untuk mencari panjangnya harus ditentukan
nilai rataan jumlah record yang termuat dalam suatu blok. Blocking factor merupakan karakteristik yang
penting bagi pengukuran kinerja file.
Dapat disimpulkan bahwa, misalkan :

File A mempunyai blocking factor = 1 artinya tiap-tiap blok berisi 1 record

File B mempunyai blocking factor = 10 artinya tiap-tiap blok berisi 10 record.

Sehingga :

Untuk pembacaan seluruh record dalam file A memerlukan 1.000.000 pengaksesan blok,
sementara File B hanya memerlukan 100.000 pengaksesan blok, maka penghematan yang
dilakukan adalah 900.000 kali pengaksesan blok. Bila tiap akses blok butuh waktu 50 milidetik,
maka penghematan yang dilakukan adalah 50 x 900.000 = 45.000.000 milidetik = 12.5 jam. Jadi
blocking factor bernilai 10 memberikan penghematan waktu sebesar 12,5 jam dibanding blocking
factor bernilai 1.

UKURAN BLOCK

Ukuran blok yang besar memerlukan ukuran memory komputer yang besar. Terdapat trade-off
antara besarnya blok yang berarti memerlukan memory yang besar dan peningkatan kinerja komputer.
Penggunaan satu ukuran blok yang sama untuk seluruh device berbeda menyebabkan pemborosan ruang
penyimpanan. Ukuran blok harus dipilih secara hati-hati agar meminimumkan pemborosan dan
menyederhanakan algoritma pengaksesan.

Beberapa pertimbangan penentuan ukuran blok yaitu :

1. Ukuran blok tetap menurunkan kompleksitas program


2. Ukuran blok tetap dalam beragam perangkat berbeda dapat memboroskan ruang penyimpanan
3. Ukuran blok dapat mempengaruhi kinerja sistem file
4. Ukuran blok besar dapat mengakibatkan data yang dipindahkan banyak yang tidak dipergunakan
ketika hanya butuh satu record tetapi menggunakan memory yang besar
5. Ukuran blok kecil berarti akan terjadi pembacaan berulang-ulang untuk data besar.

PENGHEMATAN BLOCK
Blok data mempunyai alamat yang bertugas merujuk blok tersebut dan alamat blok tersebut
disebut bllock pointer. Terdapat 3 cara pengalamatan blok yaitu :

1. Penghematan fisik disk


Penghematan fisik disk mengacu pada satu unit data secara fisik. Alamat blok dari media
penyimpanan disebut nomor blok fisik (physical block number)

2. Pengalamatan relatif
Menggunakan bilangan bulat dari 0 sampai dengan jumlah maksimum blok. Alamat relatif dikonversi
menjadi alamat fisik dengan suatu perhitungan yang menangani pengalamatan relatif. Perhitungan
dilakukan oleh sistem operasi untuk logical block number (LBN) yang relevan dengan blok pertama
dan pada umumnya pada perangkat magnetic tape

3. Pengalamatan simbolik
 Tiap blok diberi alamat simbolik
 Digunakan tabel alamat, berisi alamat fisik atau blok relatif dan proses pencarian (loop up) untuk
mendapatkan alamat blok
 Identifier block bisa menggunakan bilangan bulat atau kunci ke alamat dengan transformasi /
hashing

ALOKASI FILE
Sistem operasi melakukan pencarian file dan blok-blok file karena pencatatan pada magnetic disk
mengenai struktur penyimpanan dari magnetic tersebut. Terdapat blok-blok penyimpanan sekunder
tersebut. Tidak terdapat standar yang diterima secara menyeluruh dengan tatacara tersendiri dalam
struktur pencatatan tersebut.

Langkah-langkah alokasi dan dealokasi blok file :

1. Lakukan penguncian tabel alokasi disk


2. Lakukan pembacaan tabel alokasi disk
3. Lakukan pencarian ruang bebas berdasarkan tabel alokasi disk
4. Lakukan alokasi ruang dan perbaharui tabel alokasi disk dan penulisan data ke disk
5. Lakukan pembacaan tabel alokasi file
6. Lakukan penulisan tabel alokasi file yang diperbaharui ke disk
7. Lakukan pembukaan kunci terhadap tabel alokasi disk

SHARED FILE
Merupakan file yang tidak hanya diacu satu direktory dan directory-directory lain. Sistem
manajemen file tidak lagi berupa pohon melainkan graph berarah tak melingkar. Directed Acyclic Graph
(DAG) diperuntukkan untuk multiuser, kebutuhan shared file sangat diperlukan dimana file dapat dipakai
bersama diantaranya banyak pemakai.

Terdapat 3 isi pokok dalam shared file yaitu :

1. Teknik implementasi shared file


Shared file dapat diimplementasikan dengan 3 teknik :

 Pengcopyan
 I-Node
 Symbolic link
2. Hak akses shared file
File yang dipakai bersama dikopi ke masing-masing directory pemakai. Keunggulannya :

 Sederhana
 Terdapat redundansi, sehingga kerusakan satu copy-an masih tercopy-an lain
Kelemahannya :

Perubahan yang dibuat suatu pemakai tidak terlihat pada pemakai lain. Kelemahan ini dapat
berakibat fatal maka harus memerlukan satu mekanisme penjagaan integritas yang rumit
 Penggunaan ruang disk sangat besar karena duplikasi atau pengcopy-an file yang sama
3. Manajemen pengaksesan simultan
SHARED FILE DENGAN I-NODE
Blok-blok disk dari file yang digunakan bersama, tidak didaftarkan dalam directory melainkan
pada struktur kecil tergabung dengan file. Directory pemakai lain cukup menunjuk struktur tersebut.
Struktur data kecil tersebut adalah i-node.

Keuntungannya sebagai berikut :

 Tidak terdapat copy-an


 Modifikasi oleh pemakai akan terlihat pemakai lain
 Tidak memerlukan mekanisme penjagaan integrasi yang rumit

Kelemahan :

 Jika sistem menghapus file dan juga membersihkan i-node maka directory pemakai lain akan merujuk
i-node tidak absah
 Jika i-node kemudian diberikan ke file lain maka akan menunjuk ke file yang baru atau file yang tidak
dimaksud

SHARED FILE DENGAN SYMBOLIC LINKING


Sistem membuat file bertipe LINK berisi jalur file yang dikaitkan di directory. Kita file bertipe link
dibaca maka sistem operasi akan mengetahui bahwa file yang harus dibaca adalah nama file yang ditunjuk
file tipe link. Sistem mencari directory yang memuat I-Node file tersebut.

Keuntungan :

 Symbolic linking dapat digunakan untuk me-link file di mesin manapun


 Bila symbolic linking dihilangkan tidak menimbulkan efek apapun dari file
Kelamahan :

 File yang berisi jalur harus dibaca. Jalur di parse dan diikuti komponen demi komponen sampai I-Node.
Semua aktivitas memerlukan sejumlah pengkasesan disk
 Pemborosan lain adalah diperlukan satu I-Node ekstra untuk symolic linking
HAK AKSES PADA SHARED FILE
Sistem manajemen file harus menyediakan alat bantu agar mengijinkan pemakai file bersama
dengan menyediakan sejumlah pilihan (options) teknik pengendalian pengaksesan file bersama.

Hak-hak akses sangat beragam bergantung sistem operasi dimana daftar hak-hak pengaksesan
pemakai yang dapat diterapkan pada file :

 Node
 Knowledge
 Execution
 Reading
 Appending
 Updating
 Changing protection
 Deletion
(https://asanisembiring.files.wordpress.com/2012/02/bab5.doc)

ORGANISASI FILE
Adalah suatu teknik atau cara yang digunakan untuk menyatakan dan menyimpan record-record
dalam sebuah file

Enam Organisasi File

Terdapat enam organisasi dasar, kebanyakan organisasi file sistem nyata termasuk salah satu
atau kombinasi kategori-kategori ini.

Enam organisasi atau pengaksesan dasar adalah sebagai berikut:

1. File pile (pile)

File pile merupakan struktur yang paling sederhana dan jarang digunakan secara praktis.
Namun merupakan dasar evaluasi bagi struktur – struktur lainnya.

Pengertian File Pile: Menyediakan kemampuan untuk mengolah data secara fleksibel. Pengaturan data
dalam file cenderung tidak terstruktur. Merupakan struktur organisasi yang menggunakan tempat
penyimpanan data yang bervariasi baik ukuran maupun strukturnya.

2. File sekuen (sequential file)

Pengertian File Sekuen: Sequential file merupakan suatu cara ataupun suatu metode
penyimpanan dan pembacaan data yang dilakukan secara berurutan. Dalam hal ini, data yang ada akan
disimpan sesuai dengan urutan masuknya. Data pertama dengan nomor berapapun, akan disimpan
ditempat pertama demikian pula dengan data berikutnya yang juga akan disimpan ditempat berikutnya.
Dalam melakukan pembacaan data, juga akan dilakukan secara berurutan, artinya, pembacaan akan
dimulai dari data paling awal dan dilanjutkan dengan data berikutnya sehingga data yang dimaksud bisa
diketemukan.
3. File sekuen berindeks (indexed-sequential file)

Organisasi berkas indeks sequential adalah Berkas/file yang disusun sedemikian rupa sehingga
dapat diakses secara sequential maupun secara direct (langsung) atau kombinasi keduanya, direct dan
sequential.

Contoh sederhana dari organisasi ini adalah susunan data yang ada di sebuah buku kamus. Kita bisa
mengakses buku kamus tersebut secara sequential (berurutan), maupun melalui index (daftar isi) nya.

Definisi File Sekuensial Berindeks : Struktur organisasi yang mengombinasikan indeks dengan sekuensial
file. Keunggulannya pencarian data dan update file berdasarkan 1 atribut tertentu jauh lebih baik
daripada sekuensial file.

4. File berindeks majemuk (multiple indexed file)

File Brindeks Majemuk (Multiple Indexed File) : File indeks berisi kumpulan isian indeks untuk
mengacu record di file utama. Isian indeks berisi pasangan nilai atribut kunci record dan pointer acuan
untuk pengaksesan seketika record tersebut, yaitu ( nilai kunci, pointer ). Pada file berindeks majemuk,
pembaruan dilakukan terhadap file utama bukan file overflow. Karena record dicari lewat indeks, maka
indeks harus dinamis. Begitu terjadi pembaruan ( insert, update, delete ), maka indeks –indeks
diperbarui mengikuti perubahan di file utama.

Definisi File Berindeks Majemuk : File indeks dengan banyak key. Memungkinkan pencarian data dengan
menggunakan lebih dari 1 atribut. Cukup fleksibel. Proses update kompleks Pengambilan record lebih
mudah.

5. File berhash (hashed or direct file)

File ber-Hash (Hashed File) : adalah Metode penempatan dan pencarian yang memanfaatkan
metode Hash disebut hashing atau ‘Hash addressing’ dan fungsi yang digunakan disebut fungsi hashing /
fungsi Hash. Fungsi hashing atau fungsi Hash inilah yang dapat menjadi salah satu alternatif dalam
menyimpan atau mengorganisasi File dengan metode akses langsung. Fungsi Hash berupaya
menciptakan “fingerprint” dari berbagai data masukan. Fungsi Hash akan mengganti atau
mentransposekan data tersebut untuk menciptakan fingerprint, yang biasa disebut Hashvalue (nilai
Hash

Definisi Hash File : Memungkinkan pencapaian record secara cepat berdasarkan rumus tertentu,
Format record tetap

6. File cincin (multiring file)

Multiring File : merupakan metode pengorganisasian file yang berorientasi pada pemrosesan
subset dari record secara efisien. Subset tersebut digambarkan sebagai grup dari beberapa record yang
terdiri dari nilai atribut yang biasa. Contohnya “Semua pekerja yang berbicara bahasa Perancis”. Subset
dari record dihubungkan bersama secara eksplisit menggunakan pointer. Rantai penghubung ini
menentukan urutan anggota dari subset. Setiap subset mempunyai record kepala yang merupakan
record awal dari suatu rantai. Sebuah record kepala berisi informasi yang berhubungan dengan seluruh
record anggota di bawahnya. Record-record kepala ini juga dapat dihubungkan menjadi sebuah rantai.
Tipe rantai tertentu yang digunakan untuk menggambarkan hal ini dinamakan ring, yang merupakan
rantai di mana pointer anggota terakhir digunakan untuk menunkuk record kepala dari rantai. Ring-ring
dapat disarangkan dalam banyak level kedalaman. Dalam hal ini record anggota dari ring level ke-i
record kepala ring bawahan pada level i-1. Ring level terbawah, yang berisi data terakhir, selalu
dianggap berada pada level 1

Definisi Multiring File : Terdidri dari kumpulan record yang memiliki interkoneksi antar record.
Mempercepat pencarian. Boros tempat karena membutuhkan pointer.

(http://compplannet.blogspot.com/2013/10/pengetahuan-tentang-organisasi-file.html)

Atribut dan Struktur Direktori


Atribut Direktori

Atribut atau informasi dalam suatu direktori dapat berbeda-beda tergantung pada sistem
operasi yang digunakan. Sebagai sebuah berkas, direktori bisa memiliki beberapa atribut, antara lain:

Nama

Merupakan nama dari direktori itu sendiri.

Alamat

Merupakan alamat dari direktori tersebut.

Tanggal

Berisi keterangan mengenai tanggal pembuatan direktori tersebut.

Ukuran

Merupakan besarnya ukuran suatu direktori, biasanya dalam satuan byte, kilobyte, megabyte,
gigabyte. Batas maksimum dari suatu direktori bergantung pada sistem berkas yang digunakan.

Proteksi

Berguna untuk perlindungan. Hal ini mencakup siapa saja yang berhak mengakses,
penyembunyian file, read-only, dan lain-lain. Dalam Unix, proteksi berguna untuk mengubah atribut
berkas dengan menggunakan perintah "chmod".

Atribut-atribut pada direktori dirancang sewaktu pembuatan sistem operasi, sehingga atribut
yang ada tergantung pada pembuat sistem operasi tersebut. Atribut-atribut di atas merupakan atribut
yang umum dan sering digunakan.
Struktur Direktori

Operasi-operasi direktori yang dapat dilakukan pada direktori adalah:

 Mencari berkas, kita dapat menemukan sebuah berkas didalam sebuah struktur direktori.
Karena berkas-berkas memiliki nama simbolik dan nama yang sama dapat mengindikasikan
keterkaitan antara setiap berkas-berkas tersebut, mungkin kita berkeinginan untuk dapat
menemukan seluruh berkas yang nama-nama berkas membentuk pola khusus.
 Membuat berkas, kita dapat membuat berkas baru dan menambahkan berkas tersebut kedalam
direktori.
 Menghapus berkas, apabila berkas sudah tidak diperlukan lagi, kita dapat menghapus berkas
tersebut dari direktori.
 Menampilkan isi direktori, kita dapat menampilkan seluruh berkas dalam direktori, dan
kandungan isi direktori untuk setiap berkas dalam daftar tersebut.
 Mengganti nama berkas, karena nama berkas merepresentasikan isi dari berkas kepada user,
maka user dapat merubah nama berkas ketika isi atau penggunaan berkas berubah. Perubahan
nama dapat merubah posisi berkas dalam direktori.
 Melintasi sistem berkas, ini sangat berguna untuk mengakses direktori dan berkas didalam
struktur direktori.

Direktori Satu Tingkat

Ini adalah struktur direktori yang paling sederhana. Semua berkas disimpan di dalam direktori
yang sama. Struktur ini tentunya memiliki kelemahan jika jumlah berkasnya bertambah banyak, karena
tiap berkas mesti memiliki nama yang unik.

Direktori Dua Tingkat

Kelemahan yang ada pada direktori tingkat satu dapat diatas pada sistem direktori dua tingkat.
Caranya ialah dengan membuat direktori secara terpisah. Pada direktori tingkat dua, setiap pengguna
memiliki direktori berkas sendiri (UFD). Setiap UFD memiliki struktur yang serupa, tapi hanya berisi
berkas-berkas dari seorang pengguna.

Ketika seorang pengguna login, master direktori berkas (MFD) dicari. Isi dari MFD adalah indeks
dari nama pengguna atau nomor rekening, dan tiap entri menunjuk pada UFD untuk pengguna tersebut.
Ketika seorang pengguna ingin mengakses suatu berkas, hanya UFD-nya sendiri yang diakses. Jadi pada
setiap UFD yang berbeda, boleh terdapat nama berkas yang sama.

Direktori Dengan Struktur Tree

Struktur direktori dua tingkat bisa dikatakan sebagai pohon dua tingkat. Sebuah direktori
dengan struktur pohon memiliki sejumlah berkas atau subdirektori lagi. Pada penggunaan yang normal
setiap pengguna memiliki direktorinya sendiri-sendiri. Selain itu pengguna tersebut dapat memiliki
subdirektori sendiri lagi.
Dalam struktur ini dikenal dua istilah, yaitu path relatif dan path mutlak. Path relatif adalah path yang
dimulai dari direktori yang aktif. Sedangkan path mutlak adalah path yang dimulai dari direktori akar.

Direktori Dengan Struktur Acyclic-Graph

Jika ada sebuah berkas yang ingin diakses oleh dua pengguna atau lebih, maka struktur ini
menyediakan fasilitas "sharing", yaitu penggunaan sebuah berkas secara bersama-sama. Hal ini
tentunya berbeda dengan struktur pohon, dimana pada struktur tersebut penggunaan berkas atau
direktori secara bersama-sama dilarang. Pada struktur "Acyclic-Graph", penggunaan berkas atau
direktori secara bersama-sama diperbolehkan. Tapi pada umumnya struktur ini mirip dengan struktur
pohon.

Direktori Dengan Struktur Graph

Masalah yang sangat utama pada struktur direktori "Acyclic-Graph" adalah kemampuan untuk
memastikan tidak-adanya siklus. Jika pada struktur 2 tingkat direktori, seorang pengguna dapat
membuat subdirektori, maka akan kita dapatkan direktori dengan struktur pohon. Sangatlah mudah
untuk tetap mempertahankan sifat pohon setiap kali ada penambahan berkas atau subdirektori pada
direktori dengan struktur pohon. Tapi jika kita menambahkan sambungan pada direktori dengan
struktur pohon, maka akan kita dapatkan direktori dengan struktur graph sederhana.

Proses pencarian pada direktori dengan struktur "Acyclic-Graph", apabila tidak ditangani dengan
baik (algoritma tidak bagus) dapat menyebabkan proses pencarian yang berulang dan menghabiskan
banyak waktu. Oleh karena itu, diperlukan skema pengumpulan sampah ("garbage-collection scheme").
Skema ini menyangkut memeriksa seluruh sistem berkas dengan menandai tiap berkas yang dapat
diakses. Kemudian mengumpulkan apa pun yang tidak ditandai sebagai tempat kosong. Hal ini tentunya
dapat menghabiskan banyak waktu.

(http://ikc.dinus.ac.id/umum/ibam/ibam-os-html/x5037.html)

Format Record
Record dapat mempunyai format seperti pada record struktur file lain. Record dapat berisi pasangan
atribut-nilai seperti pada file pile. Pilihan ini agar record mempunyai fleksibilitas tinggi. Record dapat
berstruktur seperti pada file sekuen.

Penempatan Record
Karena digunakan record anchor maka tidak ada batasan ukuran record dan penempatan record
. Record dapat ditempatkan dimanapun di lokasi kosong yang memadai.
Struktur File Indeks
Perubahan struktur di file berindeks majemuk memerlukan penyisipan, penghapusan atau
kedua operasi terhadap file indeks. Solusi untuk ini menggunakan indeks B-tree. Blok-blok indeks di B-
tree harus dijaga agar setidaknya memuat setengah, effective fanouty eff bernilai diantara y dan y/2 .
Yao menyatakan bahwa pada penyisipan dan penghapusan acak, B-tree mencapai kepadatan yeff/y atau
mendekati In 2=0, 69 sehingga yeff = 0,69y. Untuk analisis diasumsikan kepadatan B-tree sebesar 0,69.

Ketinggian B-tree adalah jumlah level. Ketinggian merupakan fungsi dari yeff . Untuk keperluan
analisis diasumsikan B-tree mencapai stabilitas, maka:

X=| logYeff n’|

Dimana : satu indeks mengacu n’ record dengan n’ ditentukan oleh jumlah record yang
mempunyai nilai atribut yang dapat diindeks.

Pengaksesan

Masalah utama file berindeks majemuk adalah semua indeks ke record harus diperbarui saat
satu record ditambahkan atau dihapus. Satu indeks harus diubah saat nilai satu field diubah.

Analisis Kinerja File Berindeks Majemuk

Analisis berikut merupakan ringkasan analisis yang dilakukan Gio Wiederhold. Pada
perhitungan kinerja file berindeks majemuk, maka digunakan asumsi berikut :

1.Seluruh atribut di –indeks .

2.Indeks menggunakan B-Tree.

3.Record data memakai struktur pile.

4.Indeks diindeks kembali

5.Indeks sudah stabil (yeff / y =0,69)

Indeks sudah stabil sehingga dens = yeff / y =0,69. Kebutuhan ruang untuk indeks adalah 1/0,69 atau
1,44 kali kebutuhan bersih.

Ukuran Record (R)

Total ruang yang diperlukan adalah

1. Ruang untuk file data

2. Ruang untuk seluruh indeks.

3. Ruang untuk file data

Sama dengan ruang yang diperlukan file pile, sehingga ukuran Record data adalah

Rmain = a’ (A+V+2)
Ruang untuk seluruh indeks

1. Diperlukan a indeks untuk setiap atribut. Karena atribut sparse, maka hanya ada a’ atribut per record
sehingga jumlah isian di indeks adalah

n’ = n(a’/a)

2. Tiap isian adalah berukuran Vindex +P dan ukuran satu indeks diestimasi dengan

SI(one)1=n’((Vindex + P)/dens)=1,44((n a’)/a) X (Vindex+P)

3. Blok-blok untuk indeks level lebih tinggi memerlukan ruang lebih kecil. Indeks level kedua hanya
memerlukan SI2 ≈ SI1/yeff. Untuk memperhitungkan level-level indeks lebih tinggi, maka dapat
ditambahkan faktor 5% ke SI sehingga mengubah faktor 1,44 menjadi 1,5. Total ruang yang di perlukan
untuk indeks adalah.

x SItotal= a ∑ SIi ≈

1,5 n a’(Vindex + P)

i=1

Total kebutuhan ruang adalah ruang file data ditambah ruang seluruhnya indeks.

Kebutuhan ruang per Record adalah ruang data di tambah ruang indeks, yaitu :

Rtotal = Rmain + a’ Rindex = a’ (A+V+2) + 1,5 a’(Vindex + P)

Jika Vindex disamakan dengan V, maka

R = a’ ( A + 2,5V + 1,5P + 2 )

Waktu Pengambilan Record Tertentu (TF)

Waktu yang diperlukan serupa file sekuen berindeks hanya tidak perlu memperhitungkan daerah
overflow karena defile berindeks majemuk tidak ada daerah overflow.Ketinggian indeks (x) adalah lebih
besar,dibanding file sekuen berindeks karena file berindeks majemuk menggunakan record anchor
sedang di file sekuen berindeks menggunakan block anchor.

Perhitungan

TF = x( s + r + btt ) + s + t + btt = ( x + 1 )( s + r + btt )

Dimana

x adalah ketinggian dari B-tree

Jika tiap indeks disimpan di satu silider tunggal, maka beberapa seek dapat dihilangkan sehingga TF
menjadi sebagai berikut.

TF = 2s + (x+1) (r + btt )
Contoh : record # 1

NIM : 7 byte

Nama : 20 byte

Alamat : 30 byte

Pendi. : 10 byte

Total : 67 byte

secara matematis (logical) ukuran record dari contoh diatas adalah 67 byte, akan tetapi dalam
kenyataan diperlukan ruang yang lebih besar dari 67 byte untuk tiap recordnya.

(https://herdissuryatna.wordpress.com/tag/sistem-berkas/)

Waktu Pengambilan Record Berikutnya (TF)

Pencarian untuk record berikutnya didasarkan asumsi blok indeks terakhir berada di buffer sehingga
hanya memerlukan pengambilan record data.

Perhitungan:

TN = s + r + btt

Waktu Penyisipan Record (TI)

Untuk penambahan satu record, record ditempatkan disembarangan daerah bebas dan kemudian a’
indeks yang mengacu ke atribut record ini diubah. Proses penyisipan mengharuskan menemukan semua
indeks yang berubah.

Perhitungan:

TI = (1 + a’) s + (3 + 4 a’) + ( 1+ 2 a’) btt

Waktu Pembaruan Record (TU)

Mekanisme

1. Pencarian record

2. Pembaruan terhadap data

3. Pengubahan indeks dimana data berubah


Pembaruan melibatkan

1. Satu pengubahan record data

2. Sebanyak a indeks yang berubah

Perhitungan:

TU = (4+ 2aupdate + 2a’) + (s + 2r + btt)

Jika Record yang di ubah tidak perlu dipindahkan,maka sebanyak a’-a update yang tidak perlu diubah
sehingga menjadi

TU = (4+ 4aupdate + 2a’) + (s + 2r + btt)

Waktu Pembacaan Seluruh Record (TX)

Mempunyai dua kemungkinan,yaitu :

• Secara serial (dibuat indeks”keseluruhan”)

• Jika pointer alokasi ruang dapat diikuti, pencarian dilakukan sekali per blok.

Perhitungan

Secara Serial

Tx = TF + (n-1) TN

Mengikuti Pointer

Tx = n (R/t)

Waktu Reorganisasi File (TY)

Pada file berindeks majemuk mempunyai karakteristik berikut:

1. Beberapa implementasi tidak membutuhkan reorganisasi.

2. Reorganisasi hanya untuk menghilangkan ruang yang disebabkan penghapusan

Mekanisme reorganisasi biasanya dilakukan pada saat-saat berikut:

1. Saat pemulihan (recovery).

2. Saat distribusi isian indeks sangat buruk,perlu rekonstruksi.


Mekanisme

Reorganisasi melibatkan

1. Reorganisasi file data

2. Reorganisasi seluruh file indeks

Langkah

1. Pembacaan seluruh Record di file utama

2. Pembaruan terhadap seluruh file indeks

3. Tulis ke file sementara Record file utama yang masih berlaku (bukan ditandai sebagai dihapus)

Perhitungan

Waktu yang diperlukan untuk pembaruan satu file indeks adalah

TY (one) = TX+ Tsort (n’)

sehingga

TY (one) = 2TX+ aTy (one)

Soal

1. Menghitung Kinerja file berindex majemuk struktur file sekuen berindex.

Parameter harddisk

a. Putaran disk (RPM) = 8000 rpm

b. Seek time (s) = 5 ms

c. Transfer rate (t) = 2Kbyte/ms atau 2048 Byte/ms

d. Waktu untuk pembacaan dan penulisan (TRW) = 2 ms

Parameter Penyimpanan

a. Metode Blocking : Variable length spanned blocking

b. Ukuran blok (B) = 4096 byte

c. Ukuran Pointer blok (P) = 8 byte

d. Ukuran interblok Gap (G) = 1024 byte

Parameter File

a. Jumlah record di file utama (n) = 100.000 Record


b. Jumlah field rata-rata (a’) = 8 field

c. Panjang nilai (V) = 25 Byte

Parameter Index

a. Ukuran index (V+P) = 20 Byte

b. Metode Index : B-tree

c. Effective fan-out (Yeff) = 0,69

d. Jumlah attribut yang diperbaharui (aupdate)=5 Parameter Pemrosesan

e. waktu untuk pemrosesan blok ( c )= 2 ms

Hitung :

Fan-out(y), height(X), Rtotal,TF, TN, TI , TU, TX, TY, W, W total 2. Gunakan data di no. 1 tapi metode
blocking adalah Variable length unspanned Blocking

Anda mungkin juga menyukai