• Tidak ada hasil yang ditemukan

PERTEMUAN 6 ORGANISASI BERKAS BANYAK KUNCI

2. Inverted File

Tabel 6. 3 Inverted File 2

No.SS ID

741258963 789654123 589632145 554478963 563252236 445666987 322566963 353265567 545563212 332654789 585665478 522365412 256545856 544587412 554121239 252365698 125225687 526336549 554887963 522569874

55489 12896 14785 10124 13785 15563 21429 20584 17445 11786 14564 74563 19889 18778 16566 97841 44523 55642 33215 65698

Pengertian Kunci Utama

Kunci Utama (primary key) Adalah nilai yang digunakan dalam database untuk mengidentifikasi baris dalam tabel. Kunci utama juga digunakan dalam struktur penyimpanan data di file.

Struktur Inverted File

Struktur Inverted File memajukan direktori record pada sebuah berkas terangkai, yang mana record memiliki penunjuk terhadap semua subset. Struktur inverted file dapat dilihat pada tabel berikut :

Gambar 6. 2 Struktur Inverted File

Terdapat 2 berkas dalam struktur inverted file ini, direktori dan berkas data.

2 berkas tersebut diterapkan menggunakan struktur terpisah. Berkas data diterpakan sebagai direct access (akses langsung), dan direktori diterapkan sebagai serial access. Ini mengurangi pemeliharaan direktori saat catatan baru ditambahkan ke berkas. Jika nilai kunci dicari, file direktori dapat berupa file berurutan, atau dapat diindeks dalam urutan nilai besar.

Direktori File

Direktori file adalah sebuah penamaan terhadap sejumlah file, ini adalah cara untuk mengelompokan file sehingga kita dapat mengatur sejumlah file tersebut.

File direktori memiliki organisasi berurutan diindeks, yaitu record dapat diakses secara acak atau secara berurutan. Ada satu file direktori per file data.

Ada satu record direktori pada tabel berikut : Tabel 6. 4 Direktori File

Data Key Key Number Pointer to Data Record

Ada satu record direktori pada gambar di bawah untuk setiap Key yang muncul di setiap record data. Dengan demikian, file data yang terdiri dari 1.000 record, masing-masing dengan lima kunci, memerlukan sebuah urutan langsung oleh 5.000 Record data. File direktori tersimpan dalam file kunci.

Panjang field kunci data telah ditetapkan di dalam file direktori tertentu, namun file direktori yang berbeda mungkin memiliki field kunci data yang berbeda panjang. Panjang field kunci data sama dengan panjang kunci terbesar dalam file data yang sesuai. Kunci data yang lebih pendek dari maksimum yang dibiarkan di dalam file direktori dan diisi ke kanan dengan nilai null. Ini akan menjamin urutan yang benar dalam file direktori.

Nomor kunci menunjukkan field kunci dalam rekaman data yang berisi nilai dalam field kunci data terkait. Programmer harus menetapkan nomor kunci untuk setiap field kunci dalam record data. Tombol bernomor dari satu sampai sepuluh disebut secondary key (kunci sekunder), dan setiap nomor tombol nol disebut primary key (kunci utama). Hal ini tidak diperlukan untuk menetapkan primary key, tetapi ada keuntungan yang signifikan yang diperoleh dari penggunaannya.

Bidang ketiga di setiap record direktori adalah lokasi fisik relatif dari sebuah data record (dalam file data) yang berisi kunci data tersebut.

Kunci dimana catatan direktori tertentu diketahui perangkat keras atau sistem operasi adalah seluruh direktori record. Bahkan jika dua record data berisi nilai kunci, dan nomor kunci yang sama, alamat fisik mereka yang berbeda menjamin catatan direktori yang unik. Demikina juga jika salah satu data record berisi nilai

yang sama di dua field kunci yang berbeda, keunikan dalam file direktori terjamin dengan nomor kunci yang berbeda yang ditetapkan ke dua field kunci.

Data File (Berkas Data)

File data memiliki organisasi langsung, dan berisi semua data pengguna.

Kunci setiap rekaman data adalah lokasi fisik rekaman relatif terhadap awal file, yang memastikan kunci unik untuk setiap record. Kunci yang ditunjukkan pada gambar berikut adalah kunci yang diketahui pengguna dan yang muncul di file direktori, kunci ini bukanlah kunci dimana record data diketahui hardware atau sistem operasi.

Gambar 6. 3 Data Record

File data dapat diakses terlebih dahulu hanya dengan membaca record direktori, dan kemudian mendapatkan pointer ke record data yang sesuai.

Cara Pengaksesan Berkas Terbalik (Inverted File)

Metode akses pada inverted file menggunakan indeks yang disebut inverted index atau inverted directory (file yang dibalik). Setiap daftar inverted index, alamat maupun key untuk semua record mempunyai atribut yang sama. Misalnya : Inverted index dapat ponting ke address catatan seluruh pegawai yang berusia 18 hingga 25, 26 hingga 30, 31 hingga 35, dan seterusnya.

Untuk melokasikan record untuk berbagai alternatif seperti, usia, jenis kelamin, dan status pernikahan, beberapa file diperlukan. Berkas terbalik ini membuat efisiensi pada saat akses catatan yang mempunyai relasi logika cukup tinggi.

Metode ini memberikan kemudahan yang lebih baik untuk penggunaan satu atau beberapa rekaman atribut dan file pelacakan. Data juga dibutuhkan untuk mendeskripsikan relasi dan alamat catatan yang diidentifikasi oleh berkas terbalik, yang diidentifikasi sebagai data keluaran tambahan. Contoh file inverted bisa dilihat dari struktur pada tabel diatas.

Penggunaan Inverted File

Penggunaan inverted file dapat kita lihat pada contoh berikut :

Gambar 6. 4 Sekumpulan Tabel Penggunaan Inverted File

Indeks pengalamatan tidak langsung

1) Pembalikan dapat memakai key yang tidak memiliki nilai unik, misalnya indeks menurut key kode grup.

Gambar 6. 5 Record dengan Inverted Index berdasarkan nilai Kode Group

Pada gambar di atas menjelaskan penggunaan pengindeksan terbalik berdasarkan kunci Kode-Group.

2) Struktur indeks terbalik memakai addressing nilai No.Soc. secara tidak langsung.

Gambar 6. 6 Record dengan Inverted Index berdasarkan nilai No.SOC

Pada gambar di atas menjelaskan penggunaan index inversion dengan menggunakan nilai kunci No.Soc berdasarkan pengalamatan tidak langsung.

Merupakan salah satu ciri dari inverted file adalah beberapa pertanyaang yang dapat dijawab tanpa perlu mengakses file data. Misalnya, permintaan berikut ini dapat diproses menggunakan inverted file seperti pada gambara diatas dan diatas.

1) Apakah ada nomor rekening untuk No. Society “22456315”.

2) Berapa banyak rekening berdasarkan Kode-Group “DT0001”.

3) Berapa banyak rekening berdasarkan cabang “NE”.

4) Apakah cabang “NE” memiliki rekening Tipe “0002”.

5) Apakah No.Soc “00256984” memiliki rekening tipe “0002”.

Pertanyaan di atas merupakan pertanyaan-pertanyaan yang dapat dijawab tanpa perlu mengakses file data.

Dokumen terkait