chương 1, chúng tôi đã phân tích rất kỹ cáo thành phân và độ phức tạp trong việc xây đựng của mỗi thánh phân của công cụ Search nói chung rồi, nên khi áp dụng vào bài toáa này, chúng tôi không pặp nhiều khó khăn. Qua việc xây dựng một công cụ nhớ nảy, chủng tôi hiểu rồ hơn về sự phức tạp và khỏ khăn của công việc xây dựng Search Engine cho Web. LY THUYET CHUNG VE SEARCH ENGINE 1.1, TONG QUAN VE MANG INTERNET VA SEARCH ENGINE Khéng cé dinh nghia chinh xac nao vé théng tin. Khai mém théng tin gan lién với sự ra đời của máy tính và ngành công nghệ thông tin, Có thể hiểu théng tin IA “tin tức hap sự thật về một cái gì dé".
Théng tin mang dén cho con người sự cảm nhận về thể giới bên ngoài Tủy theo kiêu mẫu, nội dung, chất lượng, cảch thức lưu trừ, cách truyền. của thông tin má ta có thể chia ra nhiều loại thông tin khác nhau. Sự ra đời của mang Internet (mang của các mạng máy ti) đã kéo theo một loại thông tin đỏ là thông lin mang Théng tin trên mạng bao gồm rat nhiều kiểu, được lưu trữ ở khắp nơi trên thê giới. Dạng chỉnh của thông tin trên mạng chính là các trang tài liệu được viết bằng ngôn ngữ đứnh đầu siêu văn bản LIUML(iyper-fext Marlaup Language) mà ta quen gọi la trang Web (Web page).
Tap hep eac trang Web tao thanh Web. Sé hong trang Web hiện tại là cực kỳ lớn. Có thể đến hàng triệu ty pages, va do dé téng dung lượng, của tất cã các trang Web có thể đến hàng nghỉn terabytes. Nội dung các trang Wcb có thể nhiều hoặc ít tùy theo trang, số người biên tập, số người sử dựng, quản trị.
Vì thê việc kiếm soát chứng là không đơn giản. Giữa một khói lượng thông tin khống 16 như vậy, việc người dùng biết và chọn ra cho mình những thông tin cần thiết không hẻ đễ chút nào. Người dùng sẽ phải bắt đầu khai thác nguồn théng tin không lỗ này như thế nào? Thông thường người dùng sẽ sử dụng một công cụ cho phép truy cập các nguồn tài nguyên dé, gọi là trình duyét Internet (Internet browser). Trinh duyệt sẽ giao tiếp với các chương trình cung cắp thông tin dưới dang trang Web goi la Web server được chạy trên các máy tính lớn (server) của các nhà cung cấp thông tin.
Trình duyệt và Web server giao tiếp với nhau bằng giao (hic HTTP (Hyper-Text Transfer Protocol) 1a một giao thức nuyễn văn bản theo định dạng siêu van ban. Trong tình huống này người ding phải biết chính xác Web server nào có chứa thông tín mình cằn đến, hay nói cách khác là địa chỉ của trang Web mà người dùng muốn truy cập. Mỗi dia chi trang Web duge goi la mét URL (Uniform Rescourse Locator) URL. có cầu trúc hHpzảên máy chútên miền/đường dẫn cục bộ đến trang Web Một tập hợp các trang Web có chung tên miễn được gọi là một Website (ví dụ như Website của trường dại học Quốc gia Hà nội có tổn miễn là vma.
Người dùng viêng thắm xhiểu trang Web sẽ không thẻ nhớ © địa chỉ (thường là đải và khó nhớ). Hơn tiữa, sự ra đời của các trang Web mới là đáng kể, trong khi dó người dùng không biết 6 dén chủng nếu như không được chỉ dẫn. Trong trường hợp người dùng khong biét dia chỉ của trang Web có chứa thông tín mà họ cân, họ sẽ phối bắt đầu như thế nào? Hai câu trả lời la dank ba Web (Web directory) va. m6 to tim kiếm thông tin trên mạng (Scarch engine) Danh bạ Web lả một Web site chứa các liên kết đến rất nhiều trang Web khác nhau lrên thế giới, dược sắp xếp theo các chủ dễ.
Người đùng truy cập danh bạ Web va lin theo các chủ để, rẻ chủ để cơn,. họ sẽ có dược muột danh sách các trang Web về Tĩnh vực mã họ quan lâm. Một trong số các Website cùng cấp danh bạ Web tốt nhất hién nay la Yahoo (http:/4vww. Chang han ta o6 thé tim thay dia chi tang 'Web của hậu hết các trường đại học trên thể giới trong mục Education của Yahoe.
Search Engine không cung cấp danh sách cae trang Web nhu Web directory. Mỗi khi người đùng cân thông tin ma khéng biét cha chi trang Web, họ sẽ truy cập Search Engine ưa thích của họ bằng hình duyệt ( thâu Search Rngine cũng là một Web site), nói cho Search Engine biét ho cần thông tin gì bằng cách nhập vào các lừ khóa cho thông tia cần tìm Từ khóa ở đây la từ ngữ thông thường có liên quan đến thông tin cân tìm. Chẳng han muén tim thông tin vé Search Engine o6 thé str dung tir khóa “Search”, “Search engine”,. Search Engine sẽ tiến hành phân tích yêu cầu tìm kiếm đó, thực hiện tim theo sự hiểu biết của nò (fờm đrên cơ sở địt liệu về Web mà nó có dược) và trà lại cho người dùng danh sách các URL dẫn dến các trang Web má nó tim dược (dã có sự sắp xếp) và một phân nội dung dược trịch rút ra (exiractor) từ trang, Weh có chưa từ khóa dần tìm.
Đứng trên khía cạnh thi Soarch Engine clinh là một Search Engine trả lời câu hỏi QAM (Question Answer Machine) Ngày nay, khải niệm Search Engine đã trở nên khả phổ biến vả Search Hngine lả một trong số những công cụ (dịch vụ) được người dùng sử dụng nhiều nhất trên mang Internet. Google (hitp:/www.com) là môi trong số các Search Rngine cho kết quả tìm kiểm chính xác nhật hiện nay. CÁC MÔ HÌNH KIỀN TRÚC CỦA SEARCH ENGINE 1. Mô hình kiến trúc chung Hình sau đây đưa ra kiến trúc mức cao của một Search Engine, trong đó các thành phân của kiến trúc này đảm nhiệm các chức năng khá cụ thế Indexes Text Suructure Utility cà Usage feedhack Hinh 1.
M6 hinh kién trac chung của Search engine[14] Crauler là chương trình có nhiệm vụ khám phá và tải về các trang leb từ mang Internet, Ching dõi theo các trang Web giống như người dùng duyệt Web. Crawler xuất phát với tập các URI.s khởi đầu, sau khi tải các trang Web vẻ, Crawler tách cac URLs trong trang Web đó ra, chuyên cho Crawl Control (BG diéu khién crawl), B6 điều khiên sẽ quyết định liên kết nào sẽ được khám phá tiếp theo và trả lại cho crawler. (Một số chức năng của bộ điều khiển đôi khi được crawler tự thực hiện), Crawler cũng đồng thởi chuyên các trang Web đã khám phả được vào kho đữ liệu Heb (pages reposifory) và tiếp tục khám phả Web cho tới khi nao không còn gì để khám phá hoặc bị cạn tải nguyên hay được lệnh dừng,. Giải thuật co bản này có thể được sửa chữa nhằm đạt được hiệu quả tốt nhật theo một nghĩa nảo đỏ.
Ví dụ crawler của một Search Engine nảo đó được thiết kẻ đẻ khám phá cảng nhiều Web site cảng tốt, bỏ lại các trang Web bị “vùi sâu” trong một site (đường đến các trang Web nảy dài và phức tạp) trong khi crawler của một Search Engine khác lại được giao nhiệm vụ khám phá một vùng (domain) nào đó. Bộ điểu khiển crawler nắm giữ vai trò điều khiên, hưởng hoạt động cho các crawlers. Khi Search Engine ít nhất một lần hoàn thảnh một vỏng crawl, bộ điều khiên có thể nhận được thông bảo bởi vài ebï mục (imdexes) được tạo ra trong quá trình khám. phá trước đó.
Bộ điều khiên căn cứ vào chỉ mục đề quyết định xem những liên kết nào nên viếng thăm, những liên kết nào nên bỏ qua. Bộ điều khiến đôi khi sử dụng thong 8 tì phán hỏi tử phía Query Engine dẻ diều khién crawler (duoc thé hign qu mii tén ndi Quary Engine va. Crawl control trong mé hinh kign tric) Việc viếng thăm lai mét trang Web nao đỏ để kiểm tra xem trang Web đỏ có cập nhật thông tia gì mới đối hỏi tải nguyên khá lớn. Nó sẽ bao gồm những công việc kết nổi đến Website, tái dữ liệu về vả so sánh với đữ liệu cũ đã có để chồng trùng, Sau Xhủ kiểm tra việc dữ liệu có bị lặp giữa một trang với nhau và các nguồn khác nhau, chương trình mới quyết định có cập nhật hay không, Như vậy, việc này đòi hỏi tiêu tốn cỗ CPU bên cmwlor, dưỡng truyền mạng và â thời gim Irả lời ña hoi chứa thông tin, thoi gian đề kiểm tra xem đữ liệu có trùng không.
Trong lính vực các trang Web dạng báo chí (news) hiện tượng trùng lặp thông tin đo các bảo đẫn lại thông tin của nhau hiện nay là rất nhiêu. Trong lĩnh vực hàng hóa hoặc rao vặt, việc request kiểm tra cập nhật cho các trang con đễ lảm Server bên phục vụ quả tái. Bói vì những trang Web. nay có tắt nhiều trang con vi mếi sán phẩm được rao bản đới hói phải có một trang con riêng biết, và có rất nhiều sản phẩm được rao bán và do dó, mỗi khi Crawler gửi yêu cầu (roqucst) đến, các Wcbsite loại này dễu phải tạo những trang con có nội dụng để trả lời.
Nếu bên Crawler sử dụng quá nhiều server và gũi quả nhiều requcst thì nó cũng. chẳng khác DDOS bao nhiều. ‘Tat nhién, téc dé cap nhật của các trang Web khác nhau cũng rất khác nhau. Với những trang báo như Vnexpress.net thí thời gian cập nhật sẽ nhanh hơu rất nhiều so với những trang Web của các trưởng dại học nhu coltech vau.
Do dé, viée cộp nhật oác trang Web với khong thời gian bao lầu, vi thổa thuận giữa phía crawler với bên server chứa thông tin cũng cần phải được tính toán va can nhac. indexer module (mé-dun đánh chỉ mục) tách các từ cần thiết có trong mỗi trang, Web, ghi lai URL etia trang Web có chứa chúng. Kết quá là bình thành nên một bảng, tra ru mà lừ các URI,; thể biết được tứr có trong van ban cia URL dé. ndex có thể coi là một.
cách tái lỗ chức lại văn bên theo một cách riêng dễ phục vụ cho việc tim kiêm. Với một cách tổ chức đữ liệu khác nhau, ta có thể có cách tìm kiểm khác nhau Collection analysis module (mé-dun phan tich tay) Mét module phan tich tap các Index nhằm rút ra các thông tin quan trong có thẻ tính off ]me với muc dich cho việc lùn kiếm để dàng và nhanh chồng hơn Utility index trong hình vẽ được tạo ra bỏi collection analysis module. Ví dụ nhu utility index cho biét các trang Web có có chiều dải, mức độ quan trọng hay thận) chí là số lượng ánh có trọng nó cho trước. Collection analysis module sit dung text index và siruelure index đễ lao 1a utility index.