Sistem Temu-Kembali Informasi Konstruksi Indeks

dokumen-dokumen yang mirip
Distributed Indexing dengan MapReduce. Arif N

1. Pendahuluan. 1.1 Latar belakang

Sistem Temu-Kembali Informasi Temu-Kembali Boolean

INDEXING AND RETRIEVAL ENGINE UNTUK DOKUMEN BERBAHASA INDONESIA DENGAN MENGGUNAKAN INVERTED INDEX

MANAJEMEN MEMORI SISTEM OPERASI

1. Address Binding. Sebuah program ditempatkan dalam disk dalam bentuk berkas biner Sebelum dieksekusi, sebuah program harus ditempatkan di memori.

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER ARSITEKTUR SISTEM MEMORI

Sistem Temu-Kembali Informasi Perhitungan Kemiripan

Pertemuan Ke-10 Cache Memory

Organisasi & Arsitektur Komputer

Tugas Arsitektur & Organisasi Komputer RAID (Redundancy Array of Independent Disk) Oleh : Atika Juliana

perkembangan yang diraih, namun ada juga kegagalan dan ketidakstabilan pada masingmasing Database Engine. Database yang bekerja 24 jam dan yang memili

Algoritma Huffman dan Kompresi Data

Search Engines. Information Retrieval in Practice

Bab 10. Implementasi Sistem File POKOK BAHASAN: TUJUAN BELAJAR: 10.1 STRUKTUR SISTEM FILE

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT

IMPLEMENTASI INVERTED INDEX DENGAN SISTEM MANAJEMEN BASISDATA UNTUK MENDUKUNG MODEL PEMEROLEHAN BOOLEAN

DIAGRAM SITASI PAPER. Disusun oleh: Anggy Tias Kurniawan SK2A

MEDIA PENYIMPANAN. Alif Finandhita, S.Kom

BAB I PENDAHULUAN 1.1 LATAR BELAKANG MASALAH

Arsitektur Komputer dan Sistem Operasi. Hirarki Memori. Sekolah Teknik Elektro dan Informatika - ITB

Penggunaan Pohon Huffman Sebagai Sarana Kompresi Lossless Data

Fauzan Azmi Apa itu Search Engine. Cara Kerja Search Engine. Lisensi Dokumen:

MEDIA PENYIMPANAN BERKAS STRUKTUR & ORGANISASI DATA 1

BAB IV PENGUJIAN DAN ANALISIS

Mempercepat kerja memori sehingga mendekati kecepatan prosesor. Memori utama lebih besar kapasitasnya namun lambat operasinya, sedangkan cache memori

Pemrosesan File. Jatnika 1. Kumpulan atau koleksi item yang tersimpan dalam media penyimpanan sekunder Processor.

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

MANAJEMEN RUANG KOSONG

SISTEM OPERASI TERDISTRIBUSI

PENGAKSESAN DAUN SECARA RANDOM PADA HASH TREE

Pengelolaan Memori Sistem Operasi (TKE113117) Program Studi Teknik Elektro, Unsoed

Komponen-komponen Komputer

RESUME SISTEM OPERASI MAIN MEMORI

sistem basis data ti ti ukdw Indexing Materi Minggu ke-10 Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 04/07/13 budi susanto 1

IMPLEMENTASI INVERTED INDEX DENGAN SISTEM ORDBMS MENGGUNAKAN COLLECTION UNTUK MENDUKUNG MODEL PEMEROLEHAN BOOLEAN

Sistem Temu Kembali Informasi/ Information Retrieval IRS VS SI LAIN

Disk & Memory Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika.

IKI 20100: Struktur Data & Algoritma

BAB 2 STRUKTUR SISTEM OPERASI. Komponen Sistem Operasi

Chapter 4 Internal Memory

Storage P g eripherals

PENGENALAN BINARY INDEXED TREE DAN APLIKASINYA

Pertemuan ke 5 Cache Memory. Computer Organization Dosen : Eko Budi Setiawan

MANAJEMEN MEMORI. Memory manager : Salah satu bagian sistem operasi yang mempengaruhi dalam menentukan proses mana yang diletakkan pada antrian.

MEDIA PENYIMPANAN BERKAS

BAB I PENDAHULUAN. Klasifikasi Data. Sistem Berkas & Akses

Sistem Temu-Kembali Informasi Pengantar Perkuliahan

BAB I PENDAHULUAN. Dengan semakin besar kapasitas media penyimpanan dan harga yang semakin

Konsep Dasar Sistem Berkas. Rudi Susanto

Implementasi Struktur Data Rope menggunakan Binary Tree dan Aplikasinya dalam Pengolahan Teks Sangat Panjang

Pengantar Memori dan Memori Internal

Manfaat Graf dalam Cloud Computing

Contoh Perhitungan Kemiripan Cosinus pada Model Ruang Vektor

MODUL 7 MANAJEMEN DISK

Hanif Fakhrurroja, MT

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

Pengalamatan Disk. Urutan penomoran alamat logika disk mengikuti aturan :

ORGANISASI FILE. Alif Finandhita, S.Kom

Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 04 --

JARINGAN UNTUK MERGING

2. Dasar dari Komputer, Sistem Bilangan, dan Gerbang logika 2.1. Data Analog Digital

BAB 2 LANDASAN TEORI. menyediakan layanan ke komputer lain melalui koneksi jaringan. Server dapat

Kode Huffman dan Penggunaannya dalam Kompresi SMS

Pendeteksian Kemacetan Lalu Lintas dengan Compute Unified Device Architecture (CUDA)

IT233-Organisasi dan Arsitektur Komputer Pertemuan 4

MANAJEMEN MEMORI. Manajemen Memori 1

BAB III METODOLOGI PENELITIAN

Temu-Kembali Informasi 2017

File Sequensial Berindeks

Hanif Fakhrurroja, MT

PERTEMUAN. Karakteristik-karakteristik penting sistem memori. D. Metode akses. E. Kinerja

4. SISTEM OPERASI TERDISTRIBUSI

ORGANISASI SISTEM KOMPUTER & ORGANISASI CPU Oleh: Priyanto

BAB 1 PENDAHULUAN UKDW

STBI Sistem Temu Balik Informasi Temu-Balik Boolean. Husni. Husni.trunojoyo.ac.id Komputasi.wordpress.

Kata Kunci : File Log, Java, Mapreduce, Paralel, Linux, Jaringan, Hadoop, Keamanan Aplikasi Web. PENDAHULUAN

1. Komputer Mainframe Awal. 2. Komputer yang Lebih Kecil. 1. Prosesor (Processor) 2. Memori (Memory) 3. Penyimpanan (Storage)

BAB III METODOLOGI PENELITIAN

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB III PERANGKAT KERAS PEMROSESAN

Pertemuan ke 5 BAB IV Sintesis Rangkaian Sekuensial (2) Deskripsi Manfaat Relevansi Learning Outcome Materi I. Rangkaian Memori Terbatas RAM dinamik

Penerapan Algoritma Greedy Pada Pembacaan Blok di Hard Disk

Sistem Operasi Terdistribusi

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL VI FAILOVER CLUSTER


(Scott Mueller, 2003)

Tugas Makalah. Sistem Temu Kembali Informasi (STKI) TI Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System

KONSEP DASAR STRUKTUR & ORGANISASI DATA 1


1. Jelaskan karakteristik memori lengkap beserta contohnya

Pertemuan 8 : Sistem Memory

BAB 2 TINJAUAN PUSTAKA

BAB IV IMPLEMENTASI DAN PENGUJIAN

PENGARUH PADA PEMROSESAN PARALEL UNTUK KOMPRESI VIDEO

IMPLEMENTASI DAN ANALISIS STRUKTUR DATA INDEX SB-TREE PADA TEXT RETRIEVAL SYSTEM

SISTEM FILE. Hani Irmayanti, M.Kom

TUGAS BASIS DATA FILE ORGANIZATION IF2250 SEMESTER GENAP 2013/2014

Transkripsi:

Sistem Temu-Kembali Informasi Konstruksi Indeks Husni Program Studi Teknik Informatika Universitas Trunojoyo Madura Semeter Gasal 2015 08 Okt. 2015

Konstruksi Indeks Bagaimana suatu indeks dibangun? Strategi apa yang dapat digunakan dengan memory utama terbatas? Blocked sort-based Indexing Single-pass in memory indexing Distributed indexing Dynamic Indexing 2

Perangkat Keras Banyak keputusan rancangan dalam information retrieval didasarkan pada karakteristik hardware Perlu memahami cara kerja hardware dan bagaimana pengaruhnya terhadap proses IR. 3

Hardware: Review Akses terhadap data dalam memory jauh lebih cepat daripada akses data pada disk Disk seeks (pencarian lokasi data pada disk): Tidak ada data yang ditransfer dari disk selama penempatan disk head. Transfer potongan data besar lebih cepat daripada transfer banyak potongan kecil I/O Disk berbasis blok: Membaca dan menulis blok-blok data (bukan file atau potongan kecil) Ukuran blok: 8KB s.d 256 KB. 4

Hardware: Review Server yang digunakan dalam sistem IR (sekarang) mempunyai beberapa GB memory utama, bahkan ada yang puluhan GB Ruang disk yang tersedia jauh lebih besar (Ribuan G bahkan puluhan T) Fault tolerance sangat mahal: jauh lebih murah menggunakan banyak mesin biasa daripada satu mesin berfitur toleran kerusakan. 5

Web Hosting Google Diperkirakan Google mempunyai lebih dari 2 juta server (total 16 Petabytes RAM, 8*2*10 6 Gigabytes) Tersebar pada setidaknya 12 lokasi di seluruh dunia Jaringan serat optik kapasitas tinggi yang dibangun beberapa tahun terakhir menghubungkan semua lokasi (server) tersebut. 6

Asumsi Hardware Simbol Statistik Nilai s rerata seek time 5 ms = 5 x 10 3 s b transfer time per byte 0.02 μs = 2 x 10 8 s/b clock rate dari processor 10 9 s 1 p operasi tingkat rendah 0.01 μs = 10 8 s (misal: banding dan tukar kata) ukuran memory utama beberapa GB ukuran ruang disk 1 TB atau lebih Contoh: membaca 1GB dari disk Jika disimpan dalam blok-blok berdampingan: 2 x 10 8 s/b x 10 9 B = 20s Jika disimpan dalam 1M potongan 1KB: 20s + 10 6 x 5 x 10 3 s = 5020s = 1.4 h 7

Contoh Dokumen Reuters RCV1 8

Statistika Reuters RCV1 Simbol Statistika Nilai N Jumlah dokumen 800,000 L rerata #token per dok. 200 M term(= jenis word) 400,000 rerata bytes per token 6 (termasuk spasi/tanda baca) rerate bytes per token 4.5 (tanpa spasi/tanda baca) rerata bytes per term 7.5 T non-positional postings 100,000,000 4.5 bytes per token kata vs. 7.5 bytes per jenis kata: Mengapa? Mengapa T < N*L? 9

Pembuatan Index: Review Dokumen diurai (parsing) untuk mengekstrak kata-kata, kemudian disimpan bersama dengan ID-dokumennya. 10

Langkah Kunci Setelah semua dokumen diparsing, isi file inverted diurutkan berdasarkan termnya Fokus: Langkah Pengurutan Ada 100 juta item yang harus diurutkan pada Reuters RCV1 (setelah menghapus Doc-Id ganda untuk setiap term) 11

Meningkatkan Konstruksi Indeks Konstruksi index dalam-memory tidak diskalakan Bagaimana meng-konstruksi suatu indeks untuk koleksi sangat besar? Pertimbangkan batasan hardware (yang baru saja direview) Memory, disk, kecepatan, dll. 12

Konstruksi Indeks Berbasis Urutan Saat membangun indeks, dokumen diparsing satu demi satu Tidak mudah memanfaatkan trik kompresi (jauh lebih kompleks) Posting akhir untuk suatu term tidak lengkap, kecuali telah sampai akhir Pada 12 bytes per entri posting non-positional (term, doc, freq), memerlukan banyak ruang untuk koleksi besar T = 100,000,000 dalam kasus RCV1 --> 1.2GB Ini dapat dikerjakan dalam memory (2015), tetapi koleksi bertambah jauh lebih besar, misalnya New York Times menyediakan indeks >150 tahun berita Sehingga perlu menyimpan hasil antara pada disk. 13

Gunakan algoritma sama untuk Disk? Algoritma konstruksi indeks yang sama dapat digunakan untuk koleksi lebih besar, tetapi menggunakan disk (menggantikan memory)? Scan dokumen, dan simpan posting (term, doc,freq) dari setiap term yang bersesuaian pada file Urutkan posting dan bangun daftar posting untuk semua term TIDAK: Mengurutkan T = 100,000,000 record (term, doc, freq) pada disk sangatlah lambat terlalu banyak disk seeks Perlu algoritma pengurutan eksternal 14

Kemacetan Parsing dan buat entri posting satu per satu dokumen Urutkan entri posting berdasarkan term (kemudian berdasarkan Dokumen dari setiap term) Melakukan ini dengan disk seeks random akan sangat lambat harus mengurutkan T = 100M records Jika setiap perbandingan memerlukan 2 disk seeks dan N item dapat diurutkan dengan perbandingan NLog 2 N, berapa lama proses ini berlangsung? Simbol Statistika Nilai s rerata seek time 5 ms = 5 x 10 3 s b transfer time per byte 0.02 μs = 2 x 10 8 s p operasi level rendah 0.01 μs = 10 8 s (misal: banding & tukar kata) 15

Solusi (2*ds-time + comparison-time)*nlog 2 N seconds = (2*5*10-3 + 10-8)* 108 log 2 108 ~= (2*5*10-3)* 108 log 2 108 karena waktu yang diperlukan untuk perbandingan sebenarnya sepele (sebagai waktu untuk mentransfer data dalam memori utama) = 10 6 * log 2 10 8 = 10 6 * 26,5 = 2,65 * 10 7 s = 307 hari! Apa yang dapat dilakukan? 16

BSBI: Blocked sort-based Indexing (Pengurutan dengan disk seeks lebih kecil) Record 12-byte (4+4+4) (term-id, doc-id, freq) Dibangkitkan ketika memparsing dokumen Harus mengurutkan 100 juta record 12-byte tersebut berdasarkan term-nya Definisikan suatu block ~ 10 juta record Dapat dengan mudah masuk ke dalam memory Ada 10 blok pada kasus corpus (RCV1) Ide dasar dari Algoritma: Akumulasikan posting untuk setiap blok (menulis file), (membaca dan) mengurutkan, menulis ke disk Kemudian gabung blok-blok terurut tersebut ke dalam satu deretan terurut yang panjang. 17

18

Mengurutkan 10 blok 10 juta record Baca setiap blok dan urutkan (dalam memory): dengan quicksort diharapkan hanya perlu 2N log 2 N langkah pada contoh ini: 2 * (10 juta log 2 10 juta) langkah Latihan: perkirakan waktu total untuk membaca setiap blok dari disk dan kemudian quicksort-kan sekitar 7 detik 10 kali perkiraan ini memberikan 10 sorted runs dari setiap records sebanyak 10 juta Jelas perlu 2 salinan data pada disk masih dapat dioptimisasi 19

Block sorted-based indexing 20

Menggabungkan Sorted Runs? Buka semua file blok dan pelihara buffer baca (read) yang kecil- dan buffer tulis (write) untuk indeks terakhir bergabung Dalam setiap iterasi pilih term-id paling rendah yang belum diproses Semua postings lists untuk termid ini dibaca dan digabungkan, dan list tergabung ini ditulis kembali ke disk Setiap read buffer diisi ulang dari filenya ketika diperlukan Memungkinkan membaca potongan berukuran wajar dari setiap blok ke dalam memori dan kemudian menulis potongan output berukuran layak, maka kita tidak terhukum oleh disk seeks. 21

Masalah Lain Algoritma sort-based Anggapan: kamus dapat dijaga di dalam memory Perlu kamus (yang tumbuh secara dinamis) untuk mewujudkan pemetaan term ke termid Sesungguhnya dapat dikerjakan dengan posting (term, docid) menggantikan posting (termid, docid)...... tetapi file antara akan menjadi lebih besar - dapat diselesaikan dengan metode konstruksi indeks yang skalabel tetapi lebih lambat 22

SPIMI: Single-pass in-memory indexing Ide kunci 1: Bangkitkan kamus terpisah untuk setiap blok - tidak perlu memelihara pemetaan term-termid lintas blok Ide kunci 2: Jangan mengurutkan postingakumulasikan postings dalam postings lists sesuai kemunculannya Tetapi pada akhirnya, sebelum penulisan ke disk, urutkan term-term tersebut. Dengan dua ide ini kita dapat membangkitkan inverted index lengkap untuk setiap blok Banayak Indeks terpisah ini kemudian dapat digabungkan ke dalam satu indeks besar (karena term diurutkan). 23

SPIMI-Invert Saat memory telah exhausted - tulis indeks dari blok (kamus, daftar posting) ke disk Gabungan blok analog dengan BSBI (+ penggabungan kamus). 24

SPIMI: Kompresi Kompresi mengakibatkan SPIMI lebih efisien. Kompreasi term-term Kompresi posting 25

Indexing Terdistribusi Untuk indexing skala web (don t try this at home!): harus menggunakan distributed computing cluster Mesin tunggal bersifat fault-prone (rawan salah) Tak terduga dapat melambat atau gagal Bagaimana memanfaatkan pool mesin demikian? 26

Pusat Data Google Data center Google terutama mengandung mesin-mesin yang penting Data center disebar di dunia Perkiraan: total 2 juta server Perkiraan: Google menginstal 100,000 server setiap 3 bulan Didasarkan pada pengeluaran 200 250 juta dolar dalam se-tahun Menguasai 10% dari kapasitas komputasi dunia?! 27

Pusat Data Google Bayangkan suatu sistem non-fault-tolerant dengan 1000 node Setiap node mempunyai ketersediaan 99.9% (peluang up (hidup) pada satu waktu), apa itu ketersediaan sistem? Semuanya secara simultan up Jawaban: 37% (p yang tetap up )jumlah server = (0.999) 1000 Hitung jumlah server yang rusak per menit untuk instalasi 1 juta server. 28

Indexing Terdistribusi Pelihara mesin master yang mengarahkan pekerjaan indexing dianggap aman Pecahkan indexing ke dalam himpunan tugas (paralel) Mesin master memberikan setiap tugas ke mesin yang idle dari suatu pool. 29

Tugas Paralel Akan digunakan dua himpunan pekerjaan paralel Parsers Inverters Pecahkan koleksi dokumen input ke dalam splits Setiap split merupakan subset dari dokumen(bersesuaian dengan blok dalam BSBI/SPIMI) 30

Parsers Master memberikan suatu split (pecahan) ke mesin parser yang idle Parser membaca dokumen pada suatu waktu dan memperlihatkan pasangan (term-id, doc-id) Parser menulis pasangan ke dalam j partisi Partisi digunakan berdasarkan range huruf pertama dari term (misal: a-f, g-p, q-z) di sini j = 3. Selanjutnya: melengkapi inversi indeks 31

Inverters Inverter menghimpun semua pasangan (termid, doc-id) (= postings) untuk satu partisi term (dari segmen berbeda yang diproduksi oleh parsers) Urutkan dan tulis ke postings lists. 32

Aliran Data: MapReduce 33

MapReduce Algoritma konstruksi indeks seperti telah dijelaskan merupakan instans dari MapReduce MapReduce (Dean dan Ghemawat 2004) adalah framework yang tangguh dan simple secara konsep untuk komputasi terdistribusi tanpa harus menulis kode untuk bagian distribusi Menyelesaikan masalah komputasi besar pada mesin murah atau node-node yang dibangun dari bagianbagian standard (processor, memory, disk), berlawanan dengan super-computer yang hardwarenya khusus Sistem indexing di Google (ca. 2002) terdiri dari sejumlah fase, masing-masing diimplementasikan dalam MapReduce. 34

MapReduce Konstruksi indeks hanya satu fase Fase lain (tidak terlihat di sini): mengubah indeks term-partitioned ke dalam indeks documentpartitioned (untuk pemrosesan query) Term-partitioned: satu mesin menangani suatu subrange dari term Document-partitioned: satu mesin menangani suatu sub-range dari dokumen Kebanyakan search engines menggunakan indeks document-partitioned load balancing yang lebih baik, dll. 35

Skema Konstruksi Indeks dalam MapReduce Skema dari peta (map) dan fungsi-fungsi reduce map: input list(k, v) reduce: (k,list(v)) output Instansiasi dari skema untuk konstruksi indeks map: koleksi web list(termid, docid) reduce: (<termid1, list(docid)>, <termid2, list(docid)>, ) (postings list1, postings list2, ) Contoh konstruksi indeks map: (d2 : "C died.", d1 : "C came, C c ed.") (<C, d2>, <died,d2>, <C,d1>, <came,d1>, <C,d1>, <c ed, d1> reduce: (<C,(d2,d1,d1)>, <died,(d2)>, <came,(d1)>, <c ed,(d1)>) (<C,(d1:2,d2:1)>, <died,(d2:1)>, <came,(d1:1)>, <c ed,(d1:1)>) tidak menulis term-id agar readability lebih baik 36

Indexing Dinamis Tadi kita menganggap koleksi bersifat statis Bagaimana menangani: Dokumen hadir seiring waktu dan perlu disisipkan Dokumen dihapus dan diubah Ini berarti bahwa kamus dan postings lists harus dimodifikasi: Update postings untuk terms telah siap dalam kamus Term baru ditambahkan ke kamus. 37

Pendekatan Paling Simpel Pelihara indeks utama yang besar Dokumen-dokumen baru masuk ke dalam indeks pembantu yang kecil Pencarian lintas keduanya, kemudian gabungkan hasilnya Penghapusan Invalidation bit-vector untuk dokumen terhapus Filter dokumen hasil pencarian dengan memanfaatkan invalidation bit-vector ini Secara berkala, re-index ke dalam satu indeks utama. 38

Persoalan dengan Indeks Utama & Pembantu Seringnya penggabungan (merge) Kinerja buruk selama merge Sesungguhnya: Menggabungkan indeks pembantu ke dalam indeks utama efisien jika kita memelihara file terpisah untuk setiap postings list Merge sama dengan penambahan sederhana Tetapi kemudian diperlukan banyak file - tidak efisien bagi SO Asumsi dalam kuliah berikutnya: Indeks adalah satu file besar Realitanya: menggunakan suatu skema dimanapun di antara (misal: men-split daftar posting sangat besar, menghimpun daftar posting yang panjangnya 1 dalam satu file dll.). 39

Merge Logaritmik Pelihara suatu rangkaian indeks, masing-masing dua kali sebelumnya Pelihara yang terkecil (Z0) dalam memory Yang lebih besar(i0, I1, ) pada disk Jika Z0 menjadi terlalu besar (> n), tulis ke diak sebagai I0 atau gabung dengan I0 (jika I0 sudah ada) sebagai Z1 Tulis Z1 gabungan ke disk seperti I1 (jika bukan I1) atau gabungkan dengan I1 untuk membentuk Z2. dll. 40

Indeks permanen telah disimpan 41

Merge Logaritmik Indeks Pembantu dan Utama: waktu konstruksi indeks O(T2) karena setiap posting diakses dalam setiap merge Merge logaritmik: Setiap posting di-merge O(log T) kali, sehingga kompleksitasnya O(T log T) Sehingga merge logaritmik jauh lebih efisien untuk konstruksi indeks Tetapi pemrosesan query (sekarang) memerlukan merging O(log T) indeks itu adalah O(1) jika hanya mempunyai satu indeks utama dan auxiliary 42

Persoalan lanjutan dengan Banyak Indeks Statistika bijak koleksi sulit dirawat (dipelihara) Misal ketika berbicara koreksi ejaan: alternatif terkoreksi mana yang diberikan kepada pengguna? Kita katakan, ambil satu yang paling hits Bagaimana merawat yang teratas dengan banyak indeks dan vektor bit invalidasi? Satu kemungkinan: abaikan semuanya kecuali indeks utama untuk pengurutan demikian Statistika demikian sering digunakan untuk perankingan hasil. 43

Indeks Dinamis pada Search Engines Semua search engine besar saat ini melakukan indexing dinamis Indeks mereka sering mengalami perubahan incremental Item berita, blog, halaman web topik baru Grillo, Crimea, Tetapi(kadang kala/biasanya) mereka juga secara berkala me-rekonstruksi indeks dari dasar (scratch) Query processing kemudian dialihkan ke indeks baru, dan indeks lama kemudian dihapus 44

Tren Google 45

Urutan Indeks Lain Indeks Posisional Urutan sama dari masalah pengurutan hanya lebih besar Membangun indeks n-gram karakter: Saat teks diparsing, enumerasikan n-grams Untuk setiap n-gram, perlu pointers ke semua term kamus yang mengandungnya postings Entri posting yang sama (yaitu terms) akan muncul berulang dalam parsing dokumen - perlu hashing efisien untuk menjaga trak ini Misal: Jika trigram uou hadir maka term deciduous akan ditemukan pada setiap teks occurrence of deciduous Hanya perlu memroses sekali untuk setiap term. 46

Bahan Bacaan Buku IIR Bab 4 47

Pertanyaan? 48