You are on page 1of 3

TEKNLOGI GOOGLE

Google dirancang pada skala yang baik untuk data set yang sangat besar, sehingga penggunaan ruang penyimpanan untuk menyimpan index menjadi lebih efisien. Struktur-struktur data tersebut dioptimasikan untuk akses yang cepat dan efisien. Diharapkan hal tersebut bisa menurunkan harga secara relative untuk indeks dan penyimpanan teks atau HTML terhadap jumlah yang tersedia, skala ini sangat menguntungkan bagi sistem terpusat seperti Google. Google Architecture Overview 4 bahasa digunakan dalam google yaitu C++,java,python dan java script, tetapi

kebanyakan fungsi-fungsi di google diimplementasikan kedalam bahasa C++ atau C untuk efisiensi dan agar program bias berjalan di solaris maupun linux. Struktur Data Besar/major

Struktur data Google dioptimalkan sehingga koleksi dokumen yang besar dapat dijelajahi, diindeks, dan dicari dengan biaya yang rendah. Meskipun, CPU dan tingkat masukan keluaran massal telah meningkat secara dramatis selama bertahun-tahun, disk pencarian masih membutuhkan sekitar 10 ms untuk pengeksekusian. Google dirancang sebisa mungkin untuk dapat menghindari pencaraian disk, dan ini telah memiliki pengaruh besar pada desain struktur data.

Gambar 1. arsitektur google

Crawling the Web Menjalankan web crawler adalah tugas yang menantang. Ada kinerja rumit dan masalah keandalan . Crawling adalah aplikasi yang paling rapuh karena melibatkan interaksi dengan ratusan ribu server web dan server berbagai nama yang semuanya di luar kendali sistem. Untuk menyekala ratusan jutaan halaman web, Google memiliki sistem merangkak cepat didistribusikan. Sebuah URLserver tunggal melayani daftar URL ke sejumlah crawler.Baik URLserver dan crawler diimplementasikan di Python. Setiap Crawler menjaga sekitar 300 koneksi yang terbuka sekaligus. Hal ini diperlukan untuk mengambil halaman web pada kecepatan yang cukup cepat. Pada kecepatan puncak, sistem dapat merangkak lebih dari 100 halaman web per detik menggunakan empat crawler. Jumlah ini kira-kira 600K per detik data. Sebuah tekanan performansi utama adalah DNS lookup. Setiap crawler memelihara cache DNS sendiri sehingga tidak perlu melakukan lookup DNS sebelum merangkak setiap dokumen. Masing-masing dari ratusan koneksi dapat berada di sejumlah negara bagian yang berbeda: pencarian DNS, menghubungkan ke host, mengirim permintaan, dan menerima respon. Faktorfaktor ini membuat crawlermenjadi komponen kompleks dari sistem. Crawler menggunakan IO asinkron untuk mengelola event, dan sejumlah antrian untuk memindahkan jemputan halaman dari state yang satu ke state yang lain Searching Tujuan dari pencarian adalah untuk memberikan hasil kualitas pencarian secara efisien. batas pada waktu respon yaitu sekali jumlah tertentu (saat ini 40.000) dari dokumen yang sesuai yang ditemukan maka dokumen tersebut akan ditampilakn. Berikut lagkah-langkah mencai dengan menggunakan suatu query tertentu: 1. Parse query. 2. Mengkonversi kata-kata menjadi wordIDs. 3. Mencari ke awal doclist dalam laras pendek untuk setiap kata. 4. Scan melalui doclists sampai ada dokumen yang cocok dengan semua kata yang dicari. 5. Hitunglah rank dari dokumen untuk query. 6. Jika kita berada di barel pendek dan pada akhir doclist apapun, mencari ke awal doclist di barel penuh untuk setiap kata dan lanjut ke langkah 4.

7. Jika kita tidak pada akhir setiap doclist pergi lanjut ke langkah 4 8. Urutkan dokumen yang cocok dengan cara diranking dan tampilkan

SISTEM PERANKINGAN

Google mengelola lebih banyak informasi tentang dokumen-dokumen web dari mesin pencari yang serupa. Setiap hitlist meliputi posisi, font, dan informasi kapitalisasi. Selain itu faktor hits dari jangkar teks dan PageRank dari dokumen. Dengan menggabungkan semua informasi ini ke peringkat adalah hal yang sulit. Fungsi peringkat dirancang sehingga tidak ada faktor tertentu yang terlalu banyak mempengaruhi . Pertama, pertimbangkan kasus yang paling sederhana - sebuah query kata tunggal. Dalam rangka untuk memeringkat sebuah dokumen dengan query kata tunggal, Google melihat daftar dokumen hit untuk kata itu. Google menganggap setiap hit bias menjadi salah satu dari beberapa jenis (judul, anchor, URL, Font teks biasa besar, teks biasa ...)masing-masing memiliki bobotnya tersendiri. Jenis-bobot membuat sebuah vektor diindeks oleh jenis. Google menghitung jumlah hit dari setiap jenis di daftar hits. Kemudian setiap perhitungan diubah menjadi bobot hitungan. Bobot-hitungan meningkat secara linear dengan jumlah pada awalnya, tetapi cepat lancip sehingga lebih dari jumlah tertentu tidak akan membantu. Lalu diambillah l dot product dari vektor-hitungan bobot dengan vektor bobot tipe untuk menghitung skor IR untuk dokumen. Akhirnya, skor IR dikombinasikan dengan PageRank untuk memberikan peringkat akhir untuk dokumen.

You might also like