RINGKASAN PERTEMUAN 5 6 7 8
Juni 23, 2020ORGANISASI BERKAS LANGSUNG
Perkembangan media perekam data dalam hal kemampuan untuk menampung volume data yang sangat besar harus diimbangi dengan peningkatan teknik pencarian kembali data yang tersimpan. Untuk mendapat rekaman yang diasosiasikan dengan suatu kunci primer, sangat diharapkan agar proses langsung menuju ke alamat tempat rekaman dengan kunci tertentu disimpan. Dengan demikian waktu pencarian akansangat baik, yaitu 1 probe untuk setiap rekaman yang dicari. Akan tetapi, teknik tersebut memiliki kerugian karena diperlukan ruang yang sangat besar untuk menampung semua rekaman.
Untuk menampung data NIM mahasiswa diperlukan ruang yang besar, meski jumlah mahasiswa mungkin hanya 500, pasti ada beberapa nomor yang kosong karena beberapa alasan, misalnya sudah lulus, mengundurkan diri, drop-out, cuti, dan sebagainya. Contoh klasik yang menggambarkan fenomena konversi kunci rekaman adalah sistem reservasi penerbangan. Jika suatu maskapai penerbangan memiliki nomor penerbangan dari 1 sampai 999, ingin memantau reservasi pesawat selama setahun yang jumlah harinya 1 sampai 366 , maka nomor penerbangan dan hari-ke dapat dihubungkan untuk mendapatkan lokasi rekaman yang berisi data reservasi penerbangan pada hari tertentu. Dengan simbol + menandakan hubungan, maka untuk menyediakan semua kemungkinan penerbangan diperlukan ruang alamat sebesar 999366 unit.
Karena kecil kemungkinan dalam satu maskapai terdapat lebih dari 100 penerbangan, maka ruang alamat maksimum yang diperlukan adalah 36699. Diperlukan satu fungsi untuk memetakkan cakupan nilai kunci yang lebih luas ke dalam cakupan yang lebih sempit nilai alamat. Fungsi yang dikenal dengan fungsi hashakan melakukan pemetaan sebagaimana diharapkan. Satu fungsi hash yang paling popular dan paling sering diimplementasikan adalah modulus N, dengan N sebagai ukuran tabel atau berkas.
Para pegawai memiliki NIP dengan panjang total 9 digit, terdiri atas 3 digit pertama sebagai identitas departemen, sementara 6 digit terakhir adalah nomor urutnya. Pemotongan bisa dilakukan dibagian mana saja, tentunya dengan konsekuensi masing-masing. Hashing dengan penggeseran memiliki proses yang serupa dengan hashing lipatan, bedanya setelah ditentukan batasan. Hashing dengan penguadratan adalah fungsi hashing dengan menguadratkan kunci.
Hasil penguadratan ini kemudian dapat dikombinasi dengan pemotongan atau lipatan untuk mendapatkan alamat yang diperbolehkan.
ORGANISASI BERKAS DENGAN BANYAK KUNCI
A. METODE ORGANISASI
Ada banyak teknik yang dipakai untuk organisasi file dengan banyak kunci. Berikut ini dua teknik dasar untuk pemberian hubungan antara sebuah index dan data record dari file, yaitu:
1. Inverted
2. Multilist
Banyak bahasa program kompilator tidak memberikan kemampuan untuk mendukung organisasi file banyak kunci. Karenanya diperlukan paket program tambahan untuk mendukung sistem pengolahan data manajemen yang hampIr semuanya menggunakan organisasi file banyak kunci. Contoh sebuah sistem perbankan yang mempunyai beberapa pemakai seperti kasir, pegawai kredit, manajer cabang, pegawai bank, nasabah, dll. Semuanya memerlukan akses data yang sama dengan format record sebagai berikut:
Adanya pemakai yang berbeda memerlukan akses record-record ini dengan cara yang berbeda. Seorang kasir hendak mengidentifikasi sebuah record account menurut ID-nya. Seorang pegawai kredit memerlukan akses semua record menurut nilai overdraw-limit atau semua record account dengan sebuah nilai No Sosial Sociaty. Seorang manajer cabang hendak membuat laporan berkala untuk semua record account yang disortir berdasarkan ID. Seorang nasabah memerlukan akses recordnya dengan memberikan ID yang dipunyainya atau kombinasi dari Nama, No Sosial Sociaty, dan Type. Satu pendekatan yang dapat mendukung semua jenis akses adalah dipunyainya banyak file yang berbeda. Setiap file diorganisasi untuk melayani satu jenis keperluan. Untuk contoh adalah sistem perbankan di atas, harus ada: a. File account yang organisasinya sekuensial dengan nilai kunci ID .
b. File account yang organisasinya sekuensial dengan record diurut menurut Overdraw-Limit .
c. File account yang organisasinya relatif dengan kunci No SS .
d. File account yang organisasinya sequensial dengan record diurut menurut kode group .
e.
Kita memiliki 5 file yang semuanya mempunyai record yang sama. Kelima file ini hanya berbeda dalam organisasinya dan cara aksesnya. Pengulangan data dari beberapa file bukan merupakan cara yang baik untuk mengakses record dengan berbagai cara. Lagi pula cara ini memerlukan ruang yang besar di penyimpanan dan kesulitan pada waktu pemutakhiran record secara serentak. File dengan organisasi banyak kunci adalah cara terbaik untuk mengatasi masalah di atas. File ini menggunakan indeks dan bukan pengulangan data seperti cara diatas. Konsep dari akses banyak kunci umumnya diimplementasikan dengan pembentukan banyak indeks untuk memberikan yang berbeda terhadap record.Cara ini menggunakan linked-list.
B.
Metode Akses pada File Terbalik Apakah ID = 198121 mempunyai account dengan tipe ‘002’?
Contoh di atas memerlukan data record dalam pengaksesannya. Agar dapat menjawab pertanyaan di atas dalam hal jumlah dan setiap nilai second y dalam indeks multilist mempunyai banyak record dalam link-list di samping penunjuk untuk record pertama dan nilai kunci. Tabel di bawah ini menunjukkan variasi dari indeks kode grup dan overdraw limit:
ORGANISASI BERKAS DENGAN BANYAK KEY
Nasabah
Memerlukan akses recordnya dengan memberikan ID yang dimilikinya atau kombinasi dari NAME, SOCNO dan Type. File account yang organisasinya indeks sequential dengan nilai key untuk melayani kasir, pegawai bank dan nasabah. Jadi kita mempunyai 5 file, semuanya mempunyai record yang sama. Kelima file itu hanya berbeda dalam organisasi dan cara aksesnya.
Indeks inversi yang sederhana dibentuk sebagai sebuah tabel. Inversi file ACCOUNT terhadap SOCNO menghasilkan indeks inversi.
ADDRESS
Sebuah indeks inversi dengan key SOCNO untuk sebuah relatif file dengan nilai key ID akan memberikan sebuah file yang dapat diakses langsung oleh sebuah ID atau SOCNO.
Indeks inversi dapat juga dipakai dengan key yang bukan unik.
Bedanya, karena di sini dibutuhkan banyak kunci, maka di tabel tersebut disimpan pula kunci-kunci atribut lainnya yang dibutuhkan. Data record mempunyai penunjuk untuk data record selanjutnya dengan nilai key dan seterusnya. Maka terdapat sebuah linked-list dari data record untuk setiap nilai dari secondary key.
Mana cara yang terbaik ?
Dari ketiga cara di atas, yang terbaik adalah menggunakan indeks GROUP-CODE.
ORGANISASI BERKAS RELATIF
Record tidak perlu tersotir secara fisik menurut nilai key. Dalam hal ini, perlu kita buat hubungan yang akan menerjemahkan antara NILAI KEY dan ADDRESS. Dari nilai key ke address dalam penyimpanan sekunder. Pada waktu sebuah record ditulis ke dalam berkas relatif, fungsi pemetaan R digunakan untuk menerjemahkan NILAI KEY DARI RECORD menjadi ADDRESS, dimana record tersebut disimpan.
Begitu pula pada waktu akan meretrive record dengan nilai key tertentu, fungsi pemetaan R digunakan terhadap nilai key tersebut, dimana record tersebut dapat ditemukan. Tetapi perlu diketahui bahwa nilai key tidak urut secara logic.
Sedangkan berkas transaksinya terdiri dari field-field sebagai berikut
Field ACCOUNT NUMBER dipakai sebagai nilai key untuk kedua berkas tersebut. Pada saat nilai key ACCOUNT NUMBER dimasukkan ke dalam transaksi, nilai key tersebut akan me-retrieve secara langsung record yang ada pada berkas induk. Jika TRANS-TYPE = ‘C’ atau ‘D’, maka record-record dari berkas induk CUSTOMER-ACCOUNT akan dimodifikasi dengan AMOUNT dan DATE yang ada di berkas transaksi, dimana ACCOUNT NUMBER yang menentukan lokasi record dalam berkas tersebut. Kedua, record dari berkas relatif dapat di up-date langsung tanpa perlu merekan kembali semua record.
Keuntungan dari berkas relatif ini adalah kemampuan mengakses record secara langsung. Kalkulasi Pengalamatan mutlak Pengalamatan relatif.
Pengalamatan Mutlak
Fungsi pemetaan R àADDRESS, di mana NILAI KEY = ALAMAT MUTLAK. Nilai key diberikan oleh pemakai program yang sama dengan ADDRESS SEBENARNYA dari record tersebut disimpan pada penyimpanan sekunder.
Perbaikan atau perubahan alat, dimana berkas berada, akan mengubah nilai key. Reorganisasi berkas relatif akan menyebabkan nilai key berubah.
Keuntungan dari pengalamatan relatif
à Nilai key dari sebuah record dapat ditentukan lokasi recordnya dalam sebuah penyimpanan sekunder tanpa memerlukan waktu proses berarti. Nilai key dari sebuah field dapat dipakai sebagai alamat relatif. Misal dari 2000 jenis barang yang mempunyai nilai key PART NUMBER dipakai sebagai alamat relatif. Kelemahan nilai key dari sebuah field dipakai sebagai alamat relatif adalah terjadinya pemborosan ruangan dimana berkas relatif menyediakan ruang untuk 9999 jenis barang dari sebenarnya 2000 jenis barang, terjadi pemborosan kurang lebih 80%.
Untuk nilai key NIP yang terdiri dari 9 digit dari berkas pegawai yang berjumlah 2000 record akan terjadi pemborosan 99,99998% ruang dimana berkas relatif menyediakan alamat relatif untuk 999.999.999 pegawai. Untuk mengatasi pemborosan ruang adalah dengan cara mendapatkan sebuah key yang nilai jangkauannya mempunyai populasi tinggi. Sebagai contoh 8200 jenis barang akan lebih efisien mempunyai PART NUMBER sebanyak 4 digit sebagai nilai key-nya yang juga merupakan alamat relatif. Dasar pemikiran pendekatan pencarian tabel adalah sebuah tabel atau direktori dari nilai key dan address.
Untuk menemukan sebuah record dalam berkas relatif, pertama dicari dalam direktori nilai key dari record tersebut, akan menunjukkan alamat dimana record tersebut berada dalam penyimpanan.
0 komentar