SlideShare a Scribd company logo
1 of 56
Download to read offline
Search Engines
Information Retrieval in Practice
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
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.,
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
Merayapi Web
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
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
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
Benang Perayap Sederhana
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
Freshness
Protokol HTTP memiliki jenis permintaan khusus yang disebut HEAD
yang memudahkan untuk memeriksa perubahan halaman
- mengembalikan informasi tentang halaman, bukan halaman itu
sendiri
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
Freshness vs. Age
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
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)
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
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
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
Contoh Peta Situs
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
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
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
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 ...
RSS Example
RSS Example
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
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
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
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
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
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)
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)
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
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
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
TREC Web Format
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
BigTable
• Sistem penyimpanan dokumen Google
- Disesuaikan untuk menyimpan, menemukan, dan memperbarui web
halaman
- Menangani ukuran koleksi besar dengan harga murah komputer
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
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
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
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
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
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
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
Fingerprints
Fingerprint Example
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
Simhash
Simhash Example
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
Noise Example
Menemukan Blok Konten
Distribusi kumulatif tag dalam contoh halaman web
- Konten teks utama halaman sesuai dengan "Dataran tinggi" di
tengah distribusi
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
Finding Content Blocks
Pendekatan lain
gunakan struktur DOM
dan visual (tata letak)
fitur
2019 crawls and feeds

More Related Content

Similar to 2019 crawls and feeds

Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
sofiaheleni
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
fatmawati2195
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
fifirahmi
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
jumawarni
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
merysiswinda
 

Similar to 2019 crawls and feeds (20)

Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7
Bahasan 7Bahasan 7
Bahasan 7
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 Teknologi Website
Bahasan 7 Teknologi WebsiteBahasan 7 Teknologi Website
Bahasan 7 Teknologi Website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7
Bahasan 7Bahasan 7
Bahasan 7
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Materi Bahasan 7
Materi Bahasan 7 Materi Bahasan 7
Materi Bahasan 7
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 
Materi Bahasan 7
Materi Bahasan 7 Materi Bahasan 7
Materi Bahasan 7
 
Bahasan 7 teknologi website
Bahasan 7 teknologi websiteBahasan 7 teknologi website
Bahasan 7 teknologi website
 

2019 crawls and feeds

  • 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
  • 55. Finding Content Blocks Pendekatan lain gunakan struktur DOM dan visual (tata letak) fitur