1 / 30

Pengindeksan Dan Fail Songsang (inverted File)

Pengindeksan Dan Fail Songsang (inverted File). Posting List panjang. Posting List pendek. Disebabkan saiznya posting list disiimpan dalam disk. Terbaik jika indeks disimpan dalam ingatan utama. Indeks Songsang.

Télécharger la présentation

Pengindeksan Dan Fail Songsang (inverted File)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pengindeksan Dan Fail Songsang (inverted File)

  2. Posting List panjang Posting List pendek Disebabkan saiznya posting list disiimpan dalam disk Terbaik jika indeks disimpan dalam ingatan utama Indeks Songsang • Sistem capaian maklumat membangunkan indeks songsang untuk mencari katakunci dalam koleksi dokumen dengan berkesan. • Indeks songsang mengandungi dua komponen iaitu satu senarai bagi setiap katakunci yang dipanggil indeks dan satu senarai yang dipanggil posting list.

  3. Terms Pembinaan indeks • Setiap dokumen diwakilkan dalam bentuk vektor • <term1, term2, term3, …, termn> • Setiap kemasukkan data menggambarkan bilangan sesuatu term itu ujud pada satu-satu dokumen

  4. Indeks Songsang • Secara konsep, ianya telah dipelajari dalam model ruang vektor dimana ianya dijanakan dalam bentuk vektor di antara term vs dokumen. • Fail songsang merupakan “songsangan” dari fail vektor dimana lajur menjadi baris dan baris menjadi lajur.

  5. Doc 1 Doc 2 Now is the time for all good men to come to the aid of their country It was a dark and stormy night in the country manor. The time was past midnight Pembinaan Fail Songsang • Dokumen dihuraikan bagi menghasilkan token dan ia disimpan bersama dengan ID dokumen

  6. Pembinaan Fail Songsang • Setelah selesai semua dokumen dihuraikan, maka fail songsang diisih dalam bentuk tersusun.

  7. Pembinaan Fail Songsang • Term yang berulang pada sesuatu dokumen akan dicantumkan (tambah nilai kekerapan)

  8. Pembinaan Fail Songsang • Kemudian fail boleh dipecahkan kepada dua iaitu • FailDictionary dan • Fail Postings

  9. Pembinaan Fail Songsang Dictionary Postings

  10. Fail Songsang Kelebihan • Meningkatkan keberkesanan penggelintaran. Kelemahan • Keperluan menyimpan struktur data yang saiznya 10 – 100% lebih besar daripada saiz teks dan keperluan untuk menukar indeks jika terdapat penukaran data. • Proses pengemaskinian indeks adalah mahal tetapi tatasusunan yang tersisih mudah dijanakan dan cepat.

  11. Struktur Data yang digunakan pada Fail Songsang • Tatasusunan Terisih (Sorted Arrays) • Pohon B • Struktur Cincangan (Hashing Structures) • Tries (digital search trees)

  12. Tatasusunan Terisih • Fail songsang yang menggunakan metod ini menyimpan katakunci dalam bentuk tatasusunan terisih, berserta dengan bilangan dokumen yang mengandungi katakunci tersebut dan hubungan yang menghubungkan ke dokumen-dokumen tersebut. • Penggelintaran dalam tatasusunan ini ialah berdasarkan penggelintaran binari. • Kebaikan : senang nak diimplementasi • Keburukan : pengemaskinian indeks agak mahal

  13. Tatasusunan Terisih • Penghasilan tatasusunan fail songsang terisih boleh dibahagi kepada 2 atau 3 langkah: • Teks yang digunakan sebagai input dihuraikan menjadi senarai perkataan-perkataan berserta dengan lokasinya dalam teks (tentukan penggunaan katahenti dan cantasan sama ada perlu dimasukkan atau tidak. Ini bergantung kepada kekangan penggunaan masa dan storan dalam operasi pengindeksan). • Senarai perkataan di songsangkan dari senarai perkataan dalam susunan lokasi ke senarai perkataan terisih bagi kegunaan carian. Pengisihan dibuat dalam susunan tertentu beserta semua lokasi yang dikaitkan bagi setiap term/perkataan.

  14. Tatasusunan Terisih • Proses lanjutan terhadap fail songsang yang terhasil seperti meletakkan pemberat sebutan atau penyusunan semula atau penggunaan pemadatan (compression) bagi fail. (proses ini adalah opsional)

  15. Pohon B Pohon-B biasanya digunakan untuk tujuan gelintaran data. Ia mesti mempunyai nombor kunci dan anak. Pohon pada order m nerupakan pohon dimana setiap nod mempunyai sebanyak-banyaknya m anak. Bagi setiap nod, jika k merupakan bilangan sebenar anak pada nod, maka k-1 merupakan bilangan kunci pada nod Rujuk rajah dibawah dimana baris pertama menunjukkan nod bagi setiap kunci manakala baris kedua menunjukkan penunjuk ke kunci anak.

  16. Pohon B • Jika pohon gelintar dalam order 4 maka ia harus memenuhi syarat berikut • The keys in each node are in ascending order. • Bagi setiap nod jika berikut adalah benar. • Sub pokok bermula dari rekod Node.Branch[0] hanya ada kunci yang kurang dari Node.key[0] • Sub pokok bermula dari rekod Node.Branch[1] hanya ada kunci yang lebih dari Node.key[0] dan pada masa yang sama kurang dari Node.Key[1] • Sub pokok bermula dari rekod Node.Branch[2] hanya ada kunci yang lebih dari Node.key[1] dan pada masa yang sama kurang dari Node.Key[2] • Sub pokok bermula dari rekod Node.Branch[3] hanya ada kunci yang lebih dari Node.key[2]

  17. Pohon B • Berikut merupakan contoh bagi pohon-B dengan order 5. Ini bermaksud semua nod luar mempunyai sekurang-kurangnya ceil(5/2) = 3 anak. Bilangan maksimum anak bagi nod adalah 5 (4 adalah bilangan maksimum kunci). Setiap nod daun mesti mengandungi sekurang-kurangnya 2 kunci.

  18. Pohon B (Kemasukkan Data Baru) • Katakan kemasukkan data baru akan dibuat ke atas pohon-B yang kosong di mana ia menggunakan order 5. • Diberi huruf-huruf berikut : C N G A H E K Q M F W L T Z D P R X Y S. • Ini bermaksud nod boleh mempunyai maksima 5 anak dan 4 kunci. Semua nod selain akar mesti mempunyai minimum 2 kunci. • 4 huruf dimasukkan pada nod seperti rajah disebelah

  19. Pohon B (Kemasukkan Data Baru) Masukkan E, K, dan Q Masukkan H, Masukkan M

  20. Pohon B (Kemasukkan Data Baru) Huruf F, W, L, dan T masuk Z

  21. Pohon B (Kemasukkan Data Baru) Masukkan D Masuk S

  22. Pohon B (Penghapusan Data) Penghapusan huruf H

  23. Pohon B (Penghapusan Data) Hapuskan huruf T.

  24. Hashing • Fungsi Hash ialah fungsi h(k) yang menukarkan kunci kepada suatu alamat bagi suatu julat 0  SaizJadual-1 • Fungsi hash digunakan untuk memetakan kekunci ke dalam slot di dalam Jadual Hash. • Contoh : • Katakan kita menentukan untuk menggunakan 1000 alamat maka jika U merupakan semua kemungkinan set kekunci, maka fungsi hash adalah dari U ke {0, 1, 2, …..999}

  25. Contoh 2 : Hashing • hash function ialah hash(key) = key % prime. • Guna prime = 101. Ini bermaksud jadual akan memegang sehingga 101 rekod iaitu indeks dari 0  100. • Jika ingin memasukkan 225 ke dalam jadual maka pengiraannya • 225 % 101 = 23 • Maka data kekunci 225 akan disimpan pada indeks 23 Namun begitu, terdapat kekunci yang berbeza tetapi dihantar alamat yang sama maka akan berlaku perlanggaran (collision) Seperti contoh 1, di mana terdapat dua atau lebih yang bermula dengan 2 huruf pertama yang sama. Maka satu proses yang dinamakan rehashing perlu dilakukan

  26. Rehashing Fungsi Rehash Fungsi kedua yang boleh digunakan untuk memilih lokasi jadual bagi item baru yang akan dimasukkan. Jika lokasi tersebut juga telah digunakan maka fungsi rehash boleh digunakan bagi mendapat likasi ketiga dan seterusnya. • Contoh mudah fungsi rehash : • rehash(k) = (k + 1) % prime

  27. Hashing Kaedah untuk mengurangkan perlanggaran • Cuba dapatkan fungsi hash yang terbaik untuk penaburan rekod • Penggunaakn ruang ingatan yang lebih besar. Meningkatkan ruang pengalamatan, contohnya jika keperluan ialah 1000 maka lebihkan sehingga 2000 ruang tambahan. • Letakkan lebih dari satu rekod pada satu alamat (penggunaan buckets)

  28. Hashing (Abu Ata) • Memudahkan sesuatu alamat disimpan dan dicapai secara terus serta cepat dan betul. • Dikira berdasarkan Kod ASCII bagi sesuatu huruf dan dijadi penghubung antara huruf-huruf perkataan yang diindeks • Hubungan dikira berdasarkan susunan huruf antara set huruf dan untuk huruf berikutnya berdasarkan susunan huruf yang bersebelahan. • Mungkin berlaku perlanggaran. Cincangan semula dilakukan dan satu alamat baru akan dijanakan bagi mendapatkan satu rekod yang kosong.

  29. Hashing (Abu Ata) • Semua huruf ditukar kepada huruf kecil • Set 26 huruf abjad diberi nilai berdasarkan susunan jujukan dalam set abjad contoh : a=1, b=2, c=3 ……..,y=25,z=26 • Huruf bagi suatu perkataan dan huruf yang berikutnya dan pengiraan adalah seperti berikut • Kedudukan huruf pertama dalam set abjad (peraturan 2) • Kedudukan huruf kedua dalam set abjad (peraturan 2) • Keputusan pada (i) di darab dengan 26 • Campur keputusan pada (ii) dan (iii) • Campur keputusan bagi peraturan di 2 dengan peraturan di 3

  30. Tugasan • Apakah Trie dan Patricia. • Dapatkan perbezaan antara Trie dan Patricia. • Terangkan bagaimana ianya digunakan dalam pengimplementasian kamus.

More Related