MULTIRING FILE
I.
Pengertian
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.
Gambar berikut menunjukkan
hirarki sederhana dari struktur ring yang berhubungan.
Bila contoh di atas menjadi
record secara individual, maka ilustrasinya sebagai berikut.
Pencarian dalam Multiring File
adalah dengan menelusuri rantai sampai atribut nilai yang dicari ditemukan.
Kemudian rantai baru dimasuki untuk menemukan atribut recod bawahan. Proses ini
diulang terus sampai record yang diinginkan ditemukan.
II. Interlinked Rings
Untuk
pertanyaan (query) yang lebih spesifik, yaitu pertanyaan anggota rantai bawahan
seperti “Daftar semua tukang patri di suatu perusahaan”, dara sebelumnya kurang
efisien karena memerlukan pencarian yang melelahkan. Untuk keperluan ini
digunakan struktur ring sebagai berikut.
Panah Bachman digunakan untuk menunjukkan bahwa pada kotak yang ditunjuk
memiliki banyak record.
Bila kita ekspansikan contoh
di atas dengan memisahkan pekerja dalam berbagai lokasi ke dalam
departemen-departemen yang lebih spesifik, memungkinkan akses dengan urutan
senioritas, dan tambahkan warehouse pada setiap lokasi dan biarkan informasi
stock tersedia. Struktur diagramnya tampak sebagai berikut.
Hubungan di antara ring-ring
tidak harus hirarkis. Hubungan dapat diimplementasi dengan merelasikan anggota
dalam ring-ring yang sama, yang menyediakan banyak lintasan di antara
record-record, atau menghubungkan ring-ring pada level yang lebih rendah
kembali ke ring-ring dengan level lebih tinggi.
Efektivitas dari sebuah proses
dalam melokasikan sebuah record sangat bergantung pada kecocokan pasangan
atribut yang membentuk argument pertanyaan dengan struktur dari file. Bila file
tidak diorganisasikan secara benar, maka proses tidak dapat berjalan secara
efisien, dan dibutuhkan intervensi dari pengguna.
III. Struktur dari Multiring File
Semua
record mempunyai struktur yang sama dalam Multiring File, tetapi isi dan ukuran
merupakan fungsi dari ring-ring di mana mereka berada. Sebuah Multiring File
dapat mempunyai sejumlah kategori record yang berbeda. Di sini definisi file
telah menyimpang dari definisi awal. Di sini record-record tidak sama
formatnya, dan keanggotaan ring serta keanggotaan file harus diketahui sebelum
pemrosesan.
Format record yang sebenarnya
bergantung pada kombinasi dari tipe-tipe ring di mana record tersebut menjadi
anggota. Pasangan nilai atrinbut mengidentifikasi dirinya seperti pada pile.
Tetapi biasanya tidak seperti itu, dan tiap record akan mempunyai
pengidentifikasi tipe record.
Pada contoh berikut, field t
mengidentifikasi record ini sebagai record pekerja. Tiap record dengan tipe t
akan mempunyai field data yang sama dan 7 field pointer. Pengidentifikasi ini
akan memungkinkan referensi ke sebuah deskripsi format recod yang tepat,
disimpan dengan deskripsi umum dari
file.
Untuk menghubungkan
record-record ke dalam ring-ring mereka, pointer-pointer akan muncul dalam
sebuah record yang umum. Sebuah record dapat dimiliki oleh ring-ring sebanyak
jumlah pointer yang dimilikinya.
Dapat juga terdapat
field-field data NULL, tetapi karena terdapat bayak tipe record dengan tujuan
spesifik, file secara keseluruhan relative padat.
Setiap ring pasti memiliki
kepala. Kepala ini dapat berupa poin masukan, anggota dari ring lain, atau
keduanya. Ketika sebuah ring dimasuki dalam sebuah pencarian, poin masukan
dicatat sehingga ring ini tidak dimasuki 2 kali.
IV. Manipulasi Ring
Umumnya organisasi Multiring
File menghindari penggandaan data dengan menempatkan data biasa kepada semua
anggota ring ke dalam record kepala dari ring. Efek negatifnya adalah dalam
desain dasar ring, ketika sebuah record diambil berdasarkan kombinasi kata
kunci pencarian, hasilnya yang dapat diaplikasikan dengan record tidak selalu
dapat dilakukan dengan hanya atribut yang disimpan dalam anggota atau record
kepala yang diakses selama pencarian sepanjang 1 lintasan.
2 alternatif yang digunakan,
yaitu:
1.
Pencarian Paralel
melalui semua ring yang diidentifikasi dalam kata kunci pencarian dapat
dilakukan, dengan menghilangkan pada record-record pada persimpangan ring-ring
tersebut.
2.
Pencarian Inisial
dapat dilakukan berdasarkan atribut dengan efektivitas mempartisi terbaik.
Record-record yang dikumpulkan kemudian dicek untuk ketepatan dengan
menempatkan record kepala untuk tipe atribut lain yang diperlukan dan menolak
record dengan nilai data yang tidak tepat.
Proses yang kedua di atas diaplikasikan dengan langkah-langkah sebagai
berikut.
Query:
Find an Employee with Location ="Thule " and
Profession="Welder".
Enter Location chain;
For each member
record determine if key = Thule ;
When found
followEmplo yee chain;
For every Employee record the profession must
be determined
Follow
the profession chain;
When its header record is reached,
then inspect profession header
for key = Welder
If the field matches the search
key
then Employee member record becomes output;
Continue with the next Employee record;
When its header
record, the Location = Thule is reached,
then the result is complete.
V. Keputusan Desain Ring File
Lama penelusuran rantai
berbanding lurus dengan ukuran rantai. Ukuran rantai-rantai individu dapat
dikurangi dengan menambah jumlah rantai-rantai dan jumlah level dalam struktur
file.
Hal ini digambarkan dengan
rumus sebagai berikut.
y
= x√n dengan x =
level
y
= panjang rantai
n
= record count
Waktu pencarian untuk record
dengan level terendah berkurang secara proporsional sampai akar ke-x dari
record count, n, dan bertambah secara proporsional sampai level x.
Sebuah atribut yang tidak
mempartisi file ke dalam banyak level tidak sangat berguna seperti elemen ring.
Peng-Cluster-an
Ring
Record
yang sering diakses bersama paling baik disimpan dengan derajat lokalitas yang
tinggi. Satu ring umumnya dapat diletakkan seluruhnya dalam 1 silinder, seingga
semua pencarian dihindari saat penelusuran cluster ring ini.
Ketika referensi berulang-ulang
kepada record kepala ring dibutuhkan, kepala record itu dapat berpartisipasi
dalam cluster. Ring berikutnya dengan level lebih tinggi akan sulit untuk
berpartisipasi, kecuali jika ruangan total yang dibutuhkan semua anggota record
dan pendahulunya cukup kecil untuk disimpan dalam satu atau beberapa silinder.
Dalam perubahan database yang
dinamis, peng-cluster-an yang optimal sulit untu dijaga dan keuntungannya
sedikit. Sebuah reorganisasi diperlukan untuk mengembalikan cluster-cluster.
Pengkategorian
Atribut Real
Atribut
yang merepresentasikan data real atau kontinyu tidak menyediakan partisi yang
efektif kecuali jika dikategorikan secara artificial.
VI. Penggunaan
Multiring File
Struktur
Multiring merupakan dasar untuk beberapa database terbesar yang digunakan saat
ini. Sistem informasi manajemen di mana banyak melibatkan tabulasi,
penjumlahan, dan laporan pengecualian telah diimplementasikan menggunakan
daftar Multiring ini.
Beberapa masalah dalam
representasi ruang geografis dan arsitektur juga telah diselesaikan dengan
pendekatan Multiring. Perkembangan saat ini dalam system multifile terintegrasi
bergantung pada kapabilitas yang disediakan oleh struktur ring. Masalahnya
adalah desain yang cermat berdasarkan pengetahuan tentang data dan pola
penggunaan diperlukan sebelum Multiring File dapat diimplementasikan.
VII.
Kinerja
Multiring
Kinerja system Multiring
sangat bergantung pada kecocokan dari penandaan atribut ke ring-ring tertentu.
Ukuran
record dalam Multiring File
Karena
banyak tipe record yang berbeda dalam Multiring File, estimasi akurat didapatkan
hanya dengan mendaftar semua tipe, dengan frekuensi dan ukuran masing-masing.
Pengambilan
record dalam Multiring File
Waktu
untuk mengambil sebuah record adalah fungsi dari jumlah dan panjang rantai yang
dicari. Panjang daripada ring bergantung pada ukuran file, jumlah level, dan
seberapa baik file dipartisi ke dalam ring-ring.
Pengambilan
record berikutnya dari Multiring File
Record
berikutnya untuk urutan yang berhubungan dapat ditemukan dengan menelusuri
rantai tersebut.
Pemasukan
ke dalam Multiring File
Penambahan
record ke dalam Multiring File dilakukan dengan menentukan spasi kosong yang
cocok untuk record, menempatkan semua pendahulu untuk record baru, mengambil
nilai dari link yang tepat dari pendahulu, menetapkannya ke dalam record baru,
dan menempatkan nilai dari posisi record baru ke dalam area-area link
pendahulu.
Meng-Update
record dalam Multiring File
Jika
hanya field data yang akan dirubah, update hanya memerlukan penemuan record dan
penulisan ulang.
Membaca
seluruh Multiring File
Pembacaan
menurut rantai memerlukan bahwa sebuah record kepala diakses untuk setiap ring
tambahan. Baik record kepala baru maupun lama diperlukan untuk bergerak di
antara 2 ring.
Reorganisasi
Mutiring File
Reorganisasi
sebenarnya tidak diperukan sebagau bagian dari prosedur operasi normal. Hanya
saat pemformatan ulang tipe record diperlukan, record-record seperti itu harus
ditulis ulang, Ini hanya memerlukan reorganisasi parsial dari file, karena
perubahan terbatas pada ring-ring pada level-level yang menggunakan tipe-tipe
record itu.
semoga berguna bagi nusa dan bangsa
BalasHapus