Google chạy trên mạng phân tán gồm hàng ngàn máy tính giá rẻ (low-cost computers) và có thể thực hiện nhanh các xử lý song song. Google có 3 phần:
- Googlebot
- Indexer
- Query processor
1. GOOGLEBOT, GOOGLE’S WEB CRAWLE
Googlebot là robot thu thập dữ liệu web của google, nó tìm và lấy về các trang web và giao cho Google indexer. Chức năng của nó giống như trình duyệt web, nó gởi request tới web server để yêu cầu một trang web, tải nguyên trang về và giao cho bộ phận lập chỉ mục của Google.
Googlebot gồm nhiều máy tính gởi yêu cầu và tải về các trang rất nhanh. Thực tế, googlebot có thể gởi hàng ngàn yêu cầu một giây cùng một lúc. Để tránh làm tràn ngập web server, hay lấn áp các yêu cầu của người dùng, googlebot đã cố ý gởi các yêu cầu tới mỗi trang web chậm hơn khả năng của nó rất nhiều.
Googlebot tìm các trang qua 2 cách:
Thông qua tìm kiếm các liên kết bằng cách thu thập trang web.
Các kẻ gởi thư rác đã tìm ra các để tạo ra các chương trình bắn phá form thêm URL ở địa chỉ trên, bằng hàng triệu URL với mục đích quảng cáo thương mại. Google từ chối các URL được gởi thông qua form thêm URL mà nó nghi ngờ là đang cố đánh lừa người dùng bằng các thủ thuật như: bao gồm các hidden text / link trên một trang, nhồi nhét quá nhiều từ không liên quan vào một trang, kỹ thuật che giấu (cloaking) (còn gọi là mồi câu và chuyển đổi), sử dụng dụng chuyển hướng lén lút (sneaky redirects), tạo ra các cửa ra vào (doorways), các tên miền hoặc các tên miền con có nội dung cơ bản giống nhau, ở câu truy vấn tự động tới google, và các liên kết tới các “láng giềng xấu” (bad neighbors). Do đó, ở form thêm url có sử dụng capcha để tránh các spambot.
Khi Googlebot tìm nạp một trang, nó cũng lấy tất cả các liên kết có trong trang và thêm vào một hàng đợi để thu thập sau đó. Googlebot nhắm tới thu thập một ít rác (spam) vì hầu hết các tác giả trang web chỉ liên kết tới các trang mà họ tin tưởng chúng là các trang chất lượng cao. Bằng cách thu thập các liên kết từ mỗi trang nó bắt gặp, googlebot có thể xây dựng nhanh chóng một danh sách các liên kết bao phủ rộng khắp thế giới web. Kỹ thuật này được gọi là thu thập theo chiều sâu (deep crawling), nó cũng cho phép googlebot thăm dò sâu trong một site riêng lẻ. Thu thập theo chiều sâu cho phép đạt tới hầu như mọi trang web, nhưng vì thế giới web rất lớn, việc này tốn thời gian, nên một số trang có thể chỉ được thu thập chỉ một lần một tháng.
Mặc dù chức năng của đơn giản, nhưng Googlebot phải được lập trình để xử lý một số thách thức. Trước tiên, kể từ khi Googlebot sẽ gửi ra các yêu cầu đồng thời cho hàng ngàn trang, hàng đợi các URL “visit soon” phải được liên tục kiểm tra và so sánh với các URL đã có trong chỉ mục của Google để tránh sự trùng lắp trong hàng đợi, dẫn tới googlebot phải lấy cùng một trang hai lần. Googlebot cũng phải xác định bao lâu sẽ viến thăm lại một trang. Google mong muốn tái chỉ mục các trang đã thay đổi để cung cấp kết cập nhật nhất, nhưng không muốn phí tài nguyên để tái chỉ mục cho các trang mà không có thay đổi nào.
Để thực hiện điều này, google liên tục thu thập lại các trang phổ biến thường xuyên thay đổi với một tỷ lệ tuần suất các trang thay đổi. những thu thập như vậy gọi là “fresh crawl”. Các trang báo được download hàng ngày, các trang có báo giá cổ phiếu được tải xuống thường xuyên hơn nhiều. “fresh crawl” thao tác với ít trang hơn “deep crawl”. Google kết hợp cả hai để sử dụng hiệu quả tài nguyên và làm cho các chỉ mục phù hợp với hiện tại.
2. GOOGLE’S INDEXER
Các trang mà googlebot tải về dưới dạng văn bản (full text) sẽ được lưu trong CSDL chỉ mục của google.Chỉ mục này được sắp thứ tự abc theo các từ tìm kiếm (search key), mỗi mục sẽ lưu một danh sách các tài liệu có chứa từ này và vị trí nó xuất hiện trong văn bảng. Cấu trúc này giúp truy xuất nhanh tới các tài liệu có chứa các từ khóa truy vấn của người dùng.
Các từ phổ biến được gọi là stop words (vd: is, on, or, of, how, why, các số và ký tự đơn) và các dấu câu,
được bõ qua, nó cũng chuyển các ký tự thành chữ thường để tăng hiệu xuất.
3. GOOGLE’S QUERY PROCESSORE
Bộ xử lý truy vấn có một số bộ phận, bao gồm giao diện người dùng (hộp tìm kiếm), “engine” đánh giá câu truy vấn và so khớp chúng với các tài liệu liên quan, và bộ phận định dạng kết quả (“results formatter”)
google sử dụng thuật toán PageRank để xếp hạng các trang web. Một trang với PageRank cao hơn thì được coi là quan trọng hơn và có nhiều khả năng được liệt kê ở trên một trang có PageRank thấp hơn.
PageRank được xem sét dựa vào hàng trăm yếu tố và quyết định tài liệu nào có liên quan nhất với câu truy vấn, gồm độ phổ biến của trang; vị trí và lượng từ tìm kiếm có trong trang; vị trí các từ tìm kiếm có gần nhau trong trang không. Nguồn: http://superkidskhtn.blogspot.com
Nguồn tiếng Anh: http://www.googleguide.com/google_works.html
0 nhận xét:
Đăng nhận xét