Teks dapat disimpan dalam berbagai format file yang berbeda. Alat konversi digunakan untuk mengubah konten dokumen menjadi teks yang diberi tag format seperti HTML atau XML sambil mempertahankan beberapa informasi pemformatan penting. Perayap web mengunduh halaman web secara otomatis untuk membangun koleksi yang digunakan oleh mesin pencari. Perayap harus terus memeriksa halaman yang sudah dirangkak untuk memeriksa perub
2. Web Crawler
Menemukan dan mendownload halaman web secara
0tomatis
- menyediakan koleksi untuk pencarian
• Web sangat besar dan terus berkembang
• Web tidak berada di bawah kendali mesin pencari penyedia
• Halaman web terus berubah
• Perayap juga digunakan untuk jenis data lainnya
3. Mengambil Halaman Web
Setiap halaman memiliki sumber daya seragam yang unik
pencari lokasi (URL)
• Halaman web disimpan di server web yang digunakan
HTTP untuk bertukar informasi dengan klien
perangkat lunak
• misalkan.,
4. Mengambil Halaman Web
Program klien perayap web terhubung ke server sistem nama
domain (DNS)
• Server DNS menerjemahkan nama host menjadi alamat protokol
internet (IP)
• Crawler kemudian mencoba untuk terhubung ke server host
menggunakan port tertentu
• Setelah koneksi, crawler mengirimkan HTTP meminta ke server
web untuk meminta halaman
- biasanya permintaan GET
6. Perayap Web
Dimulai dengan satu set benih, yang merupakan satu set URL yang
diberikan sebagai parameter
• Benih ditambahkan ke antrian permintaan URL
• Perayap mulai mengambil halaman dari permintaan antre
• Halaman yang diunduh diurai untuk menemukan tag link yang
mungkin berisi URL berguna lainnya untuk diambil
• URL baru ditambahkan ke permintaan crawler antrian, atau perbatasan
• Lanjutkan hingga tidak ada lagi URL atau disk baru yang penuh
7. Perayapan Web
Perayap web menghabiskan banyak waktu menunggu tanggapan
atas permintaan
• Untuk mengurangi ketidakefisienan ini, perayap web
menggunakan utas dan mengambil ratusan halaman sekaligus
• Perayap berpotensi membanjiri situs dengan
permintaan untuk halaman
• Untuk menghindari masalah ini, perayap web menggunakan
kebijakan kesopanan
- misalnya, penundaan antara permintaan ke server web yang
sama
8. Mengontrol Crawling
Bahkan merayapi situs secara perlahan akan membuat marah
beberapa orang administrator server web, yang keberatan dengan apa
pun menyalin data mereka
• File Robots.txt dapat digunakan untuk mengontrol crawler
10. Kesegaran
Halaman web terus ditambahkan, dihapus, dan dimodifikasi
• Penjelajah web harus terus mengunjungi halamannya telah
merangkak untuk melihat apakah mereka punya diubah untuk menjaga
kesegaran koleksi dokumen
- Salinan basi tidak lagi mencerminkan isi sebenarnya dari halaman
web
11. Freshness
Protokol HTTP memiliki jenis permintaan khusus yang disebut HEAD
yang memudahkan untuk memeriksa perubahan halaman
- mengembalikan informasi tentang halaman, bukan halaman itu
sendiri
12. Freshness
Tidak mungkin untuk terus-menerus memeriksa semua halaman
- harus memeriksa halaman penting dan halaman itu sering
berubah
• Kesegaran adalah proporsi halaman segar
• Mengoptimalkan metrik ini dapat menyebabkan buruk
keputusan, seperti tidak merayapi situs populer
• Usia adalah metrik yang lebih baik
14. Age
Perkiraan usia halaman t hari setelah terakhir merangkak:
Pembaruan halaman web mengikuti Poisson distribusi rata-rata
- waktu hingga pembaruan berikutnya diatur oleh distribusi
eksponensial
15. Age
Semakin tua sebuah halaman, semakin banyak biayanya merangkak
itu
- misalnya, usia yang diharapkan dengan frekuensi perubahan
rata-rata
λ = 1/7 (satu perubahan per minggu)
16. Perayapan Terfokus
Upaya untuk mengunduh hanya halaman-halaman itu tentang topik
tertentu
- digunakan oleh aplikasi pencarian vertikal
• Andalkan fakta bahwa halaman tentang suatu topik cenderung
memiliki tautan ke halaman lain dengan topik yang sama
- halaman populer untuk suatu topik biasanya digunakan sebagai biji
• Perayap menggunakan pengklasifikasi teks untuk memutuskan
apakah
halaman tentang topik
17. Web Dalam
Situs yang sulit ditemukan oleh perayap adalah secara kolektif disebut sebagai
yang dalam (atau tersembunyi) Web
- jauh lebih besar dari Web konvensional
• Tiga kategori besar:
- situs pribadi
• tidak ada link masuk, atau mungkin memerlukan login dengan akun yang valid -
hasil formulir
• situs yang hanya dapat dijangkau setelah memasukkan beberapa data ke
dalamnya sebuah bentuk - halaman bernaskah
• halaman yang menggunakan JavaScript, Flash, atau sisi klien lainnya bahasa
untuk menghasilkan tautan
18. Peta Situs
Peta Situs berisi daftar URL dan data tentang
URL tersebut, seperti waktu modifikasi dan
frekuensi modifikasi
• Dibuat oleh administrator server web
• Memberi tahu crawler tentang halaman yang mungkin tidak
jika tidak temukan
• Memberi petunjuk kepada crawler tentang kapan harus memeriksa a
halaman untuk perubahan
20. Perayapan Terdistribusi
Tiga alasan menggunakan banyak komputer untuk merangkak
- Membantu mendekatkan perayap ke situs yang dirayapi
- Mengurangi jumlah situs yang harus dikunjungi crawler ingat
- Mengurangi sumber daya komputasi yang dibutuhkan
• Crawler terdistribusi menggunakan fungsi hash untuk ditetapkan
URL untuk merayapi komputer
- Fungsi hash harus dihitung pada bagian host
setiap URL
21. Perayapan Desktop
Digunakan untuk pencarian desktop dan pencarian perusahaan
• Perbedaan dengan perayapan web:
- Jauh lebih mudah untuk mencari data
- Menanggapi pembaruan dengan cepat lebih penting
- Harus konservatif dalam hal disk dan CPU pemakaian
- Berbagai format dokumen
- Privasi data sangat penting
22. Umpan Dokumen
Banyak dokumen diterbitkan
- dibuat pada waktu yang tetap dan jarang diupdate lagi
- misalnya, artikel berita, posting blog, rilis pers, surel
• Dokumen yang diterbitkan dari satu sumber bisa diurutkan dalam
urutan yang disebut dokumen
makan
- dokumen baru ditemukan dengan memeriksa akhir pakan
23. Umpan Dokumen
Dua jenis:
- Umpan push memberi tahu pelanggan tentang yang baru dokumen
- Umpan tarik mengharuskan pelanggan untuk memeriksa secara
berkala untuk dokumen baru
• Format paling umum untuk pull feed disebut RSS
- Sindikasi Sangat Sederhana, Ringkasan Situs RDF, Kaya Ringkasan
Situs, atau ...
26. RSS
• ttl tag (waktu untuk hidup)
- jumlah waktu (dalam menit) isi harus dalam cache
• RSS feed diakses seperti halaman web
- menggunakan permintaan HTTP GET ke server web yang
menjadi host mereka
• Mudah diurai oleh crawler
• Mudah menemukan informasi baru
27. Konversi
Teks disimpan dalam ratusan file yang tidak kompatibel format
- misalnya, teks mentah, RTF, HTML, XML, Microsoft Word, ODF,
PDF
• Jenis file lain juga penting
- misalnya, PowerPoint, Excel
• Biasanya menggunakan alat konversi
- mengubah konten dokumen menjadi teks yang diberi tag format
seperti HTML atau XML
- menyimpan beberapa informasi pemformatan penting
28. Character Encoding
Pengkodean karakter adalah pemetaan antara bit dan mesin terbang
- yaitu, beralih dari bit dalam file ke karakter di file layar
- Bisa menjadi sumber utama ketidakcocokan
• ASCII adalah skema pengkodean karakter dasar untuk Inggris
- menyandikan 128 huruf, angka, karakter khusus, dan karakter kontrol
dalam 7 bit, diperpanjang dengan file
bit ekstra untuk penyimpanan dalam byte
29. Pengkodean Karakter
Bahasa lain dapat memiliki lebih banyak mesin terbang
- misalnya, bahasa Cina memiliki lebih dari 40.000 karakter, dengan
lebih dari 3.000 digunakan secara umum
• Banyak bahasa memiliki banyak skema pengkodean
- misalnya, keluarga CJK (Cina-Jepang-Korea) dari Timur
Bahasa Asia, Hindi, Arab
- harus menentukan pengkodean
- tidak dapat memiliki banyak bahasa dalam satu file
• Unicode dikembangkan untuk alamat encoding
masalah
30. Unicode
Pemetaan tunggal dari angka ke mesin terbang itu mencoba untuk memasukkan semua
mesin terbang yang umum digunakan dalam semua bahasa yang dikenal
• Unicode adalah pemetaan antara angka dan mesin terbang
- tidak secara unik menentukan bit ke pemetaan mesin terbang!
- misalnya, UTF-8, UTF-16, UTF-32
31. Unicode
• Proliferasi pengkodean berasal dari kebutuhan untuk kompatibilitas
dan menghemat ruang
- UTF-8 menggunakan satu byte untuk bahasa Inggris (ASCII), sebanyak
4 byte untuk beberapa karakter Cina tradisional
- pengkodean panjang variabel, lebih sulit dilakukan operasi string
- UTF-32 menggunakan 4 byte untuk setiap karakter
• Banyak aplikasi menggunakan UTF-32 untuk teks internal encoding
(pencarian acak cepat) dan UTF-8 untuk penyimpanan disk (lebih
sedikit ruang)
32. Unicode
misalnya, huruf Yunani pi (π) adalah bilangan simbol Unicode
960
- Dalam biner, 00000011 11000000 (3C0 in heksadesimal)
- Pengkodean akhir adalah 11001111 10000000 (CF80 in
Heksadesimal)
33. Menyimpan Dokumen
Banyak alasan untuk menyimpan dokumen hasil konversi teks
- Menghemat waktu perayapan ketika halaman tidak diperbarui
- menyediakan akses yang efisien ke teks untuk potongan generasi,
ekstraksi informasi, dll.
• Sistem database dapat menyediakan dokumen penyimpanan untuk
beberapa aplikasi
- mesin pencari web menggunakan dokumen yang disesuaikan
sistem penyimpanan
34. Menyimpan Dokumen
• Persyaratan untuk sistem penyimpanan dokumen:
- Akses acak
• meminta isi dokumen berdasarkan URL-nya
• Fungsi hash berdasarkan URL adalah tipikal
- Kompresi dan file besar
• mengurangi kebutuhan penyimpanan dan akses yang efisien
- Perbarui
• penanganan volume besar baru dan modifikasi dokumen
• menambahkan teks tautan baru
35. File Besar
Simpan banyak dokumen dalam file besar daripada setiap dokumen
dalam sebuah file
- menghindari overhead dalam membuka dan menutup file
- mengurangi waktu pencarian relatif terhadap waktu baca
• Format dokumen majemuk
- digunakan untuk menyimpan banyak dokumen dalam satu file
- misalkan., TREC Web
37. Kompresi
• Teks sangat redundan (atau dapat diprediksi)
• Teknik kompresi memanfaatkan redundansi ini untuk
memperkecil file tanpa kehilangan file kandungan
• Kompresi indeks akan dibahas nanti
• Algoritme populer dapat memampatkan HTML dan XML teks
oleh 80%
- misalnya, DEFLATE (zip, gzip) dan LZW (kompres UNIX, PDF)
- dapat memampatkan file besar dalam blok untuk membuat
akses lebih cepat
38. BigTable
• Sistem penyimpanan dokumen Google
- Disesuaikan untuk menyimpan, menemukan, dan memperbarui web
halaman
- Menangani ukuran koleksi besar dengan harga murah komputer
39. BigTable
Tidak ada bahasa kueri, tidak ada kueri kompleks untuk optimalkan
• Hanya transaksi tingkat baris
• Tablet disimpan dalam sistem file yang direplikasi dapat diakses oleh
semua server BigTable
• Setiap perubahan pada tablet BigTable akan direkam ke log transaksi,
yang juga disimpan dalam file bersama berkas sistem
• Jika ada server tablet yang mogok, server lain bisa segera membaca
data tablet dan transaksi log dari sistem file dan mengambil alih
40. BigTable
• Secara logis diatur ke dalam baris
• Sebuah baris menyimpan data untuk satu halaman web
• Kombinasi kunci baris, kunci kolom, dan a cap waktu menunjuk ke
satu sel dalam baris
41. BigTable
BigTable dapat memiliki banyak kolom per baris
- semua baris memiliki grup kolom yang sama
- tidak semua baris memiliki kolom yang sama
- penting untuk mengurangi pembacaan disk untuk mengakses data
dokumen
• Baris dipartisi menjadi tablet berdasarkan kunci baris mereka
- menyederhanakan menentukan server mana yang sesuai
42. Mendeteksi Duplikat
Dokumen duplikat dan hampir duplikat terjadi dalam banyak situasi
- Salinan, versi, plagiarisme, spam, situs cermin
- 30% halaman web dalam perayapan besar adalah tepat atau
mendekati duplikat halaman di 70% lainnya
• Duplikat menghabiskan sumber daya yang signifikan selama
perayapan, pengindeksan, dan pencarian
- Nilai kecil bagi sebagian besar pengguna
43. Duplicate Detection
Deteksi duplikat yang tepat relatif mudah
• Teknik checksum
- Checksum adalah nilai yang dihitung berdasarkan isi dokumen
• misalnya, jumlah byte dalam file dokumen
Mungkin untuk file dengan teks yang berbeda memiliki kesamaan
checksum
• Fungsi seperti pemeriksaan redundansi siklik (CRC), telah
dikembangkan yang mempertimbangkan posisi byte
44. Near-Duplicate Detection
• Tugas yang lebih menantang
- Apakah halaman web dengan konteks teks yang sama tetapi iklan
atau format yang berbeda hampir duplikat?
• Dokumen yang hampir duplikat ditentukan dengan menggunakan a
nilai ambang batas untuk beberapa ukuran kesamaan antara pasangan
dokumen
- mis., Dokumen D1 hampir duplikat dari dokumen D2 jika lebih dari
90% kata dalam dokumennya sama
45. Deteksi Hampir Duplikat
Search:
– find near-duplicates of a document D
– O(N) comparisons required
• Discovery:
– find all pairs of near-duplicate documents in the collection
– O(N2 ) comparisons • IR techniques are effective for search scenario
• For discovery, other techniques used to generate compact representations
48. Simhash
• Perbandingan kesamaan menggunakan berbasis kata representasi
yang lebih efektif dalam menemukan duplikat yang mendekati
- Masalahnya adalah efisiensi
• Simhash menggabungkan keuntungan dari ukuran kesamaan berbasis
kata dengan efisiensisidik jari berdasarkan hashing
• Kesamaan dua halaman yang diukur dengan kosinus ukuran korelasi
sebanding dengan jumlah bit yang sama di simhash sidik jari
51. Removing Noise
• Banyak halaman web berisi teks, link, dan gambar yang tidak terkait
langsung dengan konten utama halaman
• Bahan tambahan ini kebanyakan berisik dapat berdampak negatif
pada peringkat halaman
• Teknik telah dikembangkan untuk mendeteksi konten memblokir di
halaman web
- Materi non-konten diabaikan atau dikurangi penting dalam proses
pengindeksan
53. Menemukan Blok Konten
Distribusi kumulatif tag dalam contoh halaman web
- Konten teks utama halaman sesuai dengan "Dataran tinggi" di
tengah distribusi
54. Finding Content Blocks
Mewakili halaman web sebagai urutan bit, dimana bn = 1
menunjukkan bahwa token ke-n adalah a menandai • Masalah
pengoptimalan di mana kita menemukan nilai i dan j untuk
memaksimalkan jumlah tag di bawah i dan di atas j dan jumlah
token nontag antara i dan j
• mis., Maksimalkan