Kiểm tra trùng lặp nội dung trong Apodiea

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Sử dụng thông tin gần kề vị trí trong khảo duyệt Web theo phương thức mạng ngang hàng (Trang 39 - 41)

Khi nút A bắt gặp trang web này, nó cần kiểm tra lại dù trang này có bị trùng lặp hay không. Vì vậy, nút A tìm kiếm giá trị băm của nội dung trang web và tìm thấy nút C chịu trách nhiệm về trang này, do đó nút A sẽ nhờ nút C kiểm tra thông tin nội dung trang web này có bị trung lặp không. Lúc đó nút A có thể gửi cả lô toàn bộ yêu cầu và định kỳ vấn tin nút C về các thông tin mới đƣợc cập nhật tại nút C. Sau đó nút C có thể gửi lại các phản hồi theo lô cho nút A. Nó cũng có thể chỉnh sửa danh sách Seen-Content của mình để chú thích những trang web mới mà nút A tải về. Lƣu ý rằng độ trễ khi lấy thông tin về tính trùng lặp trang web không ảnh hƣởng đến hiệu suất mạng vì cũng có độ trễ là đáng kể khi tải và xử lý một trang web cụ nào đó. Điều này là do tốc độ tải dữ liệu thƣờng nhanh hơn nhiều so với tốc độ xử lý và kết quả là quá trình xử lý có độ trễ đáng kể từ sau lúc tải dữ liệu về.

2.3.2 Các thành phần của Apoidea

Các nút trong hệ thống Apoidea là các máy của ngƣời dùng trên Internet mà đang duyệt web đƣợc dùng để thu thập dữ liệu. Các nút này đóng vai trò là cả client lẫn server trong nhiệm vụ thực hiện khảo duyệt web. Một việc khảo duyệt URL có thể đƣợc tung ra bởi bất kỳ nút nào trong hệ thống. Không có lịch trình của nút nào trong hệ thống cũng nhƣ không có bất kỳ nút nào biết hết toàn bộ mô hình của hệ thống. Có ba yếu tố chính để tạo nên hệ thống mạng ngang hàng Apoidea.

1. Nút thành viên: yếu tố đầu tiên là nút thành viên trên toàn mạng bao phủ. Các nút thành viên cho phép các nút trao đổi trực tiếp với các nút khác để phân phối nhiệm vụ hoặc trao đổi thông tin. Một nút mới có thể gia nhập vào

hệ thống Apoidea bằng cách liên hệ với một nút trong hệ thống mạng Apoidea. Có một số phƣơng pháp bootstrapping để xác định một nút mới gia nhập. Giả thiết rằng dịch vụ Apoidea có liên kết với một tên miền DNS. DNS sẽ chịu trách nhiệm xử lý ánh xạ tên miền Apoidea với địa chỉ IP của một hoặc nhiều nút bootstrapping Apoidea. Một nút bootstrapping duy trì một danh sách các nút Apoidea hiện đang có trong hệ thống. Để gia nhập vào hệ thống Apoidea để khảo duyệt web, một nút mới tìm kiếm tên miền Apoidea trên hệ thống DNS để lấy đƣợc địa chỉ IP của nút bootstraping. Nút boostrapping chọn ngẫu nhiên một số nút xin gia nhập từ danh sách nút và cung cấp địa chỉ IP của nút đó. Để liên hệ đƣợc với nút mới gia nhập trong hệ thống Apoidea, nút mới kết nạp vào hệ thống thông qua thủ tục khởi tạo của giao thức Apoidea.

2. Giao thức: yếu tố thứ hai là giao thức của Apoidea, bao gồm việc phân vùng công việc khảo duyệt web và thuật toán tìm kiếm. Trong Apoidea mọi nút đều tham gia quá trình khảo duyệt web, và một nút bất kỳ có thể thông báo địa chỉ URL mới đã đƣợc khảo duyệt. Khi một địa chỉ URL mới vô tình đƣợc thu thập bởi một nút bất kỳ, thì đầu tiên nút này sẽ xác định nút nào chịu trách nhiệm khảo duyệt URL này. Điều này có đƣợc thông qua hoạt động tìm kiếm đƣợc cung cấp trong giao thức Apoidea. Giao thức Apoidea có một số bƣớc tƣơng tự với giao thức Chord [3]. Có ba điều quan trọng trong sự phối hợp của các nút: (1) làm thế để tìm đƣợc các nút có khả năng khảo duyệt địa chỉ URL biết trƣớc tốt nhất, (2) làm thế nào để các nút mới gia nhập vào hệ thống, và (3) làm thế nào Apoidea quản lý lỗi hoặc việc rời khỏi hệ thống của các nút hiện có hệ thống. Một tính năng độc đáo của giao thức này là khả năng tính toán phân phối nhanh chóng của hàm băm, ánh xạ công việc khảo duyệt URL với các nút chịu trách nhiệm tƣơng ứng với các URL.

3. Khảo duyệt: yếu tố thứ ba là quá trình xử lý các yêu cầu khảo duyệt URL. Mỗi việc khảo duyệt URL đƣợc phân công cho một nút với ánh xạ định danh với tên miền URL. Dựa trên tiêu chí ánh xạ định danh, các URL đƣợc khảo duyệt tại các nút phụ trách chúng và đƣợc chuyển hoàn toàn tới các nút khác các nút phụ trách bị lỗi hoặc do sự vào/ra khỏi hệ thống của nút. Từ quan điểm của ngƣời dùng, mỗi nút trong mạng ngang hàng cần đƣợc trang bị cùng với middleware Apoidea, một hệ thống phần mềm ở tầng thứ hai. Tầng thấp là tầng giao thức Apoidea chịu trách nhiệm kết nối giữa các nút với nhau. Tầng cao hơn là hệ thống khảo duyệt web chịu trách nhiệm thu thập các địa chỉ URL đƣợc phân công, giải quyết các URL Last-seen để tránh bị

khảo duyệt trùng, và xử lý các trang đã đƣơc khảo duyệt. Bất kỳ yêu cầu khảo duyệt một ứng dụng nào đểu có thể kết hợp với tầng này.

Phần tiếp theo đề cập đến phần giữa của kiến trúc Apoidea đƣợc thiết kế chạy trên tất cả nút Apoidea.

2.2.1 Kiến trúc hệ thống tại một nút Apoidea

Kiến trúc hệ thống Apoidea áp dụng cho mọi nút đƣợc tạo từ ba phần chính nhƣ sau:

1. Lƣu trữ: thành phần này gồm tất cả kho dữ liệu mà mỗi nút cần duy trì 2. Worker: thành phần này gồm các module thực hiện lấy các trang từ WWW

và xử lý chúng để chiết xuất các trang ra nhiều địa chỉ URL.

1. Giao diện: thành phần này tạo nên giao diện của mỗi nút tham gia, quản lý việc truyền thông trong mạng Apoidea.

Kiến trúc hoàn chỉnh của Apoidea đƣợc chỉ trong hình 12

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Sử dụng thông tin gần kề vị trí trong khảo duyệt Web theo phương thức mạng ngang hàng (Trang 39 - 41)

Tải bản đầy đủ (PDF)

(90 trang)