Tải bản đầy đủ (.pdf) (12 trang)

Nghiên cứu các phương pháp nén chỉ số trong các hệ thống tìm kiếm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (444.33 KB, 12 trang )

1

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

LÊ THỊ HOÀI THU

NGHIÊN CỨU CÁC PHƢƠNG PHÁP NÉN CHỈ
SỐ TRONG CÁC HỆ THỐNG TÌM KIẾM
Ngành: Công Nghệ Thông Tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN

NGƢỜI HƢỚNG DẪN KHOA HỌC

CHỦ TỊCH HỘI ĐỒNG

PGS.TS HÀ QUANG THỤY

GS.TS VŨ ĐỨC THI

Hà Nội - 2015


2

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

MỤC LỤC


LỜI CAM ĐOAN...........................................................................................................1
MỤC LỤC ......................................................................................................................2

LÊ THỊ HOÀI THU

DANH MỤC CÁC KÝ HIỆU VIẾT TẮT .................Error! Bookmark not defined.
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ.....................Error! Bookmark not defined.
DANH MỤC BẢNG ....................................................Error! Bookmark not defined.
PHẦN MỞ ĐẦU ............................................................................................................5
CHƢƠNG 1. KIẾN TRÚC CHUNG CỦA MÁY TÌM KIẾM ..................................7

NGHIÊN CỨU CÁC PHƢƠNG PHÁP NÉN
THÀNH PHẦN CHỈ SỐ TRONG MÁY TÌM KIẾM ................................................7
CHỈ SỐ TRONG CÁC HỆ THỐNG TÌM KIẾM
1.1

Khái niệm bộ công cụ tìm kiếm thông tin..........................................................7

1.1.1 Tổng quan về hệ thống tìm kiếm ...................................................................7
1.1.2 Quy trình tìm kiếm thông tin .........................................................................8
1.1.3

Một số vấn đề trong tìm kiếm thông tin ..................................................9

1.1.4 Cấu trúc điển hình của một máy tìm kiếm ...................................................10
LUẬN
VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
1.2

Tập chỉ số trong máy tìm kiếm ........................Error! Bookmark not defined.


1.2.1 Các bƣớc để xây dựng hệ thống tìm kiếm thông tin . Error! Bookmark not
defined.
1.2.2

Cấu trúc của bảng chỉ số ngƣợc .............Error! Bookmark not defined.

1.2.3

Chia bảng chỉ số .....................................Error! Bookmark not defined.

1.3 Tổng quan về phƣơng pháp lập chỉ số ................Error! Bookmark not defined.
1.3.1
Xác định mục từ quan trọng cần lập chỉ số ......... Error! Bookmark not
defined.
1.3.2
1.3.3

Một số hàm tính trọng số mục từ. ..........Error! Bookmark not defined.
Hà Nội - 2015
Lập chỉ mục tài liệu ...............................Error! Bookmark not defined.


3
KẾT LUẬN CHƢƠNG I ..........................................Error! Bookmark not defined.
CHƢƠNG II. MỘT SỐ PHƢƠNG PHÁP NÉN CHỈ SỐ, NÉN CHỈ SỐ NGƢỢC
TRONG MÁY TÌM KIẾM .........................................Error! Bookmark not defined.
2.1 Chỉ số ngƣợc .......................................................Error! Bookmark not defined.
2.2


Phƣơng pháp nén chỉ số ...................................Error! Bookmark not defined.

2.2.1 Lƣu trữ theo khối .........................................Error! Bookmark not defined.
2.2.2. Nén bộ từ điển từ vựng nhƣ một chuỗi .......Error! Bookmark not defined.
2.2.3 Nén tập tin posting .......................................Error! Bookmark not defined.
2.3 Các phƣơng pháp nén chỉ số cập nhật .................Error! Bookmark not defined.
2.3.1

Mã Glomb .....................................................Error! Bookmark not defined.

2.3.2

Simple9 Coding .....................................Error! Bookmark not defined.

2.3.3

Binary Code ...........................................Error! Bookmark not defined.

2.3.4

PforDelta ................................................Error! Bookmark not defined.

2.3.5

Interpolative Coding ..............................Error! Bookmark not defined.

2.4 Cải tiến thuật toán PFD .......................................Error! Bookmark not defined.
KẾT LUẬN CHƢƠNG 2 ..........................................Error! Bookmark not defined.
CHƢƠNG III. TÌM HIỂU VỀ LUCENE ..................Error! Bookmark not defined.
3.1. Tìm hiểu về lucene .............................................Error! Bookmark not defined.

3.1.1. Giới thiệu chung về Lucene ........................Error! Bookmark not defined.
3.1.2. Tìm hiểu các lớp đối tƣợng lập chỉ mục .....Error! Bookmark not defined.
3.1.2. Tìm hiểu các lớp đối tƣợng tìm kiếm..........Error! Bookmark not defined.
3.2 Lập chỉ số trong Lucene ......................................Error! Bookmark not defined.
3.2.1. Các tiến trình lập chỉ số ..............................Error! Bookmark not defined.
3.2.2 Các toán tử cơ bản trong lập chỉ số với Lucene......... Error! Bookmark not
defined.
3.2.3 Khuếch đại các tài liệu và các trƣờng ..........Error! Bookmark not defined.
3.2.4 Điều khiển tiến trình lập chỉ số ....................Error! Bookmark not defined.


4

3.2.5

Tối ƣu hóa việc lập chỉ số ......................Error! Bookmark not defined.

3.3 Tìm kiếm trên tập chỉ số.....................................Error! Bookmark not defined.
3.3.1 Tìm kiếm một thuật ngữ cụ thể ....................Error! Bookmark not defined.
3.3.2 Bô ̣ chuyể n đổ i câu truy vấ n của ngƣời dùng : QueryParser ................. Error!
Bookmark not defined.
3.3.3 Sƣ̉ du ̣ng lớp IndexSearcher .........................Error! Bookmark not defined.
3.4 Tiến trình phân tích của Lucene ..........................Error! Bookmark not defined.
3.5 Định dạng chỉ số trong lucene .............................Error! Bookmark not defined.
3.5.1 Cấu trúc chỉ số .............................................Error! Bookmark not defined.
3.5.2 Chỉ số ngƣợc ....................................................Error! Bookmark not defined.
TỔNG KẾT CHƢƠNG 3 ..........................................Error! Bookmark not defined.
CHƢƠNG 4 - CÀI ĐẶT THỬ NGHIỆM VÀ KẾT QUẢ THỰC HIỆN ....... Error!
Bookmark not defined.
4.1 Giới thiệu chƣơng trình thử nghiệm ....................Error! Bookmark not defined.

4.2 Kết quả thử nghiệm ............................................Error! Bookmark not defined.
KẾT LUẬN CHƢƠNG 4 ..........................................Error! Bookmark not defined.
KẾT LUẬN ..................................................................Error! Bookmark not defined.
TÀI LIỆU THAM KHẢO...........................................................................................11
PHỤ LỤC .....................................................................Error! Bookmark not defined.


5

PHẦN MỞ ĐẦU
Trong xã hội phát triển, thông tin thực sự trở thành nguồn tài nguyên quan
trọng, nguồn của cải to lớn của xã hội. Các mối quan hệ, tính trật tự của tổ chức là
những thuộc tính căn bản của mọi hệ thống kinh tế - xã hội. Hệ thống càng phát triển
tức là càng có nhiều yếu tố tạo thành mối quan hệ giữa chúng càng phức tạp do đó
lƣợng thông tin càng phong phú. Chính vì vậy mà ngày nay cùng với sự phát triển của
Công nghệ Thông tin cũng nhƣ sự phát triển nhanh chóng của mạng máy tính toàn cầu
và sự bùng nổ thông tin, các kho dữ liệu số đã đƣợc hình thành ở khắp mọi nơi và
không ngừng gia tăng về dung lƣợng, nhƣng thông tin thì vẫn luôn là cần thiết thậm
chí thiếu với họ. Các kho dữ liệu này ẩn chứa một lƣợng thông tin vô cùng lớn. Nhƣng
vấn đề đặt ra là làm thế nào để “khai thác, tìm kiếm” tổng hợp kho thông tin đó để cho
nó trở nên hiệu quả và có giá trị đối với ngƣời dùng. Những thông tin này đƣợc lƣu trữ
và biểu diễn ở rất nhiều dạng khác nhau nhƣ văn bản, âm thanh, hình ảnh vv... có thể
thấy khối lƣợng dữ liệu khổng lồ mà ngƣời sử dụng có thể truy xuất nếu không đƣợc
tổ chức lƣu trữ tốt và kèm theo một phƣơng thức xử lý hiệu quả để có thể khai thác và
tìm kiếm lƣợng thông tin trong đó thì chúng cũng chỉ là những thông tin không mang
lại chút lợi ích nào cho ngƣời dùng.
Để giải quyết vấn đề này, ngƣời ta đã xây dựng các hệ thống tìm kiếm thông
tin. Nó giúp con ngƣời tìm kiếm và chọn lọc ra những tài liệu có chứa thông tin cần
thiết. Do ngƣời sử dụng luôn yêu cầu kết quả tìm kiếm chính xác, đầy đủ và với các
vận tốc tìm kiếm nhanh nên các hệ thống tìm kiếm thông tin luôn đƣợc nghiên cứu và

phát triển cùng với các kỹ thuật lƣu trữ, thuật toán tìm kiếm hiệu quả và tối ƣu nhất.
Nhƣ đã biết, tập hợp các trang Web đáp ứng một câu hỏi trả về từ máy tìm kiếm
nói chung là rất lớn. Mặc dù các kỹ thuật dựa trên các liên kết đã nâng cao chất lƣợng
và độ chính xác của kết quả tìm kiếm, nhƣng tìm kiếm dựa trên văn bản (chẳng hạn
tìm kiếm các trang chứa đựng từ khóa) vẫn tiếp tục phƣơng pháp chính để xác định các
trang liên quan tới vấn đề đang đƣợc truy vấn. Bảng chỉ mục văn bản hỗ trợ cho việc
tìm kiếm có thể đƣợc thực hiện sử dụng bất kỳ phƣơng pháp truy cập truyền thống nào
để tìm kiếm trên toàn tập tài liệu. Vì vậy việc lập chỉ số trong máy tìm kiếm là một
thao tác vô cùng quan trọng trong các hệ thống tìm kiếm. Lập chỉ mục tài liệu, hiểu
một cách đơn giản, là việc sắp xếp các tài liệu nhằm đáp ứng nhanh chóng yêu cầu tìm
kiếm thông tin của ngƣời sử dụng. Công cụ tìm kiếm web cũng nhƣ nhiều hệ thống tìm
kiếm khác đều dựa vào chỉ số đảo ngƣợc với cấu trúc đơn giản và hiệu quả cho phép
tìm thấy tất cả các tài liệu có chứa từ cụ thể.


6
Luận văn tập trung khảo sát các phƣơng pháp nén chỉ số, chỉ số ngƣợc trong
máy tìm kiếm và đánh giá kết thử nghiệm của các phƣơng pháp nén trong các bài báo
(1, 2, 9 ,5-8, 10-14). Đồng thời luận văn triển khai cài đặt thử nghiệm với thuật toán cơ
bản và cải tiến để thử nghiệm với tập dữ liệu có sẵn.
Luận văn bao gồm Phần mở đầu, bốn chƣơng nội dung và phần kết luận mà nội
dung các chƣơng đƣợc trình bày dƣới đây.
Chƣơng 1 – Kiến trúc chung của máy tìm kiếm, thành phần chỉ số trong máy
tìm kiếm. Chƣơng này giới thiệu những nội dung cơ bản nhất, cung cấp một cách nhìn
khái quát về kiến trúc của máy tìm kiếm trong mô hình hệ thống thông tin. Đồng thời
luận văn cũng mô tả chi tiết các thành phần của cấu trúc chỉ số trong máy tìm kiếm và
nhu cầu nén chỉ số cho máy tìm kiếm.
Chƣơng 2 – Các phƣơng pháp nén chỉ số trong máy tìm kiếm. Nội dung của
chƣơng này xem xét và đánh giá một số phƣơng pháp nén chỉ số cơ bản và cập nhật.
Ban đầu nội dung chƣơng mô tả cấu trúc chỉ số ngƣợc và phân tích quy trình lập chỉ số

ngƣợc trong máy tìm kiếm. Từ đó đƣa ra các phƣơng pháp cập nhật và cải tiến để nén
các tập chỉ số một cách tối ƣu.
Chƣơng 3 – Tìm hiểu về Lucene. Giới thiệu chi tiết về Lucene, các thành phần
cơ bản trong Lucene, cấu trúc chỉ số trong Lucene và tối ƣu hóa lập chỉ số trong
Lucene.
Chƣơng 4 – Cài đặt thử nghiệm. Chƣơng trình trình bày kết quả thực nghiệm
nén chỉ số ngƣợc trên cơ sở thuật toán nén Khoảng cách byte (VB code) và OptPFD.
Chƣơng trình cài đặt thử nghiệm đƣợc viết bởi ngôn ngữ Java trên nền Console.
Chƣơng trình đã hoạt động cho kết quả để đánh giá 2 thuật toán nén, tuy nhiên do thời
gian hạn chế nên luận văn chƣa xây dựng đƣợc thuật toán vào trong máy tìm kiếm.
Phần Kết luận. Trình bày tổng hợp các kết quả thực hiện luận văn và phƣơng
hƣớng nghiên cứu tiếp theo về các nội dung của luận văn.


7
CHƢƠNG 1. KIẾN TRÚC CHUNG CỦA MÁY TÌM KIẾM
THÀNH PHẦN CHỈ SỐ TRONG MÁY TÌM KIẾM
1.1 Khái niệm bộ công cụ tìm kiếm thông tin
1.1.1 Tổng quan về hệ thống tìm kiếm
Thuật ngữ tìm kiếm thông tin xuất hiện từ khá sớm, các thông tin thể hiện ở
nhiều dạng khác nhau, có thể là dạng văn bản, âm thanh hoặc hình ảnh,vv... Mà phổ
biến nhất là tìm kiếm văn bản (bao gồm việc tìm kiếm hoặc sắp xếp văn bản), đặc biệt
là trong các công cụ tìm kiếm. Nhiều lúc, thuật ngữ này đƣợc dùng nhƣ là toàn bộ quá
trình từ việc xử lý văn bản tới việc phân lớp và tìm kiếm văn bản. Thuật ngữ tìm kiếm
văn bản theo nghĩa bao gồm việc lập chỉ mục tài liệu, tìm kiếm và sắp xếp các văn bản
tìm kiếm theo thứ tự liên quan đến yêu cầu ngƣời sử dụng (văn bản ở đây có thể là một
File hoặc là một trang Web) .
Internet là một kho thông tin khổng lồ và phức tạp. Thông tin trên các trang
Web đa dạng về mặt nội dung cũng nhƣ hình thức. Tuy nhiên cùng với sự đa dạng và
số lƣợng lớn thông tin nhƣ vậy đã nảy sinh vấn đề quá tải thông tin. Cùng với sự thay

đổi và phát triển hàng ngày hàng giờ về nội dung cũng nhƣ số lƣợng của các trang
Web trên Internet thì vấn đề tìm kiếm thông tin đối với ngƣời sử dụng lại ngày càng
khó khăn. Đối với mỗi ngƣời dùng chỉ một phần rất nhỏ thông tin là có ích, chẳng hạn
có ngƣời chỉ quan tâm đến trang Thể thao, Văn hóa mà không mấy khi quan tâm đến
Kinh tế. Ngƣời ta không thể tìm kiếm địa chỉ trang Web chứa thông tin mà mình cần,
do vậy đòi hỏi cần phải có một trình tiện ích quản lý nội dung của các trang Web và
cho phép tìm thấy các địa chỉ trang Web có nội dung giống với yêu cầu của ngƣời tìm
kiếm.
Theo tìm hiểu từ các nguồn thông tin khái niệm máy tìm kiếm (search engine)
là một hệ thống đƣợc xây dựng nhằm tiếp nhận các yêu cầu tìm kiếm của ngƣời dùng
(thƣờng là một tập các từ khóa), sau đó phân tích yêu cầu này và tìm kiếm thông tin
trong cơ sở dữ liệu đƣợc tải xuống từ Web và đƣa ra kết quả là các trang web có liên
quan cho ngƣời dùng.
Bên cạnh đó có thể định nghĩa một hệ thống tìm kiếm thông tin là một chƣơng
trình phần mềm dùng để lƣu trữ và quản lý thông tin nằm trong các tài liệu. Hệ thống
này giúp ngƣời sử dụng tìm kiếm thông tin mà họ quan tâm. Các hệ thống này không
giống nhƣ các hệ thống trả lời câu hỏi, nó chỉ ra sự tồn tại và vị trí các tài liệu có chứa
thông tin cần thiết. Một số tài liệu “tìm kiếm đƣợc” thỏa mãn yêu cầu của ngƣời sử
dụng gọi là các tài liệu phù hợp hay tài liệu liên quan (relevanl document). Một hệ
thống tìm kiếm hoàn hảo sẽ chỉ tìm và đƣa ra các tài liệu liên quan mà không đƣa ra


8

các tài liệu không liên quan. Tuy nhiên các hệ thống này không tồn tại bởi các thể hiện
tìm kiếm là không đầy đủ mà mức độ liên quan phụ thuộc vào quan điểm chủ quan của
từng ngƣời. Hai ngƣời sử dụng có thể đƣa ra cùng một truy vấn với một hệ thống tìm
kiếm thông tin và sau đó sẽ có những đánh giá khác nhau về mức độ liên quan trên các
tài liệu đã tìm đƣợc. Cụ thể, ngƣời dùng gửi một truy vấn, dạng đơn giản nhất là một
danh sách các từ khóa, và máy tìm kiếm sẽ làm việc để trả lại một danh sách các trang

Web có liên quan hoặc có chứa các từ khóa đó. Phức tạp hơn, thì truy vấn là cả một
văn bản hoặc một đoạn văn bản hoặc nội dung tóm tắt của văn bản. Một số máy tìm
kiếm điển hình hiện nay: Yahoo, Google, Alvista, ASPSeek, VietSeek...
1.1.2 Quy trình tìm kiếm thông tin
Quy trình tìm kiếm thông tin nói chung thực hiện các vấn đề nhƣ biểu diễn, lƣu
trữ, tổ chức và truy cập đến các mục thông tin. Việc tổ chức và biểu diễn thông tin
giúp hệ thống tìm kiếm nhanh thông tin mà ngƣời dùng cần. Nhƣng để mô tả đặc điểm
thông tin yêu cầu của ngƣời sử dụng không phải dễ dàng. Vì thế, hệ thống tìm kiếm
thông tin bao gồm ba quá trình cơ bản sau: Biểu diễn nội dung các tài liệu, biểu diễn
yêu cầu của ngƣời sử dụng và so sánh hai biểu diễn này.

Hình 1.1 – Quy trình tìm kiếm thông tin [1]
 Quá trình biểu diễn tài liệu đƣợc gọi là quá trình chỉ số hóa (indexing). Quá
trình này có thể lƣu trữ thực sự các tài liệu trong hệ thống, thông thƣờng chỉ lƣu trữ
một phần tài liệu, chẳng hạn nhƣ phần tiêu đề và tóm tắt.
 Quá trình biểu diễn yêu cầu ngƣời sử dụng gọi là quá trình biểu diễn truy vấn
(query formulation process). Truy vấn biểu thị sự tƣơng tác giữa hệ thống và ngƣời sử


9
dụng, do đó quá trình này không chỉ đƣa ra một truy vấn phù hợp mà còn phải thể hiện
đƣợc sự hiểu biết về yêu cầu của ngƣời sử dụng. Sự thiết lập tự động các truy vấn liên
tiếp đƣợc gọi là phản hồi độ liên quan (relevance feedback).
 So sánh truy vấn với tài liệu cũng đƣợc gọi là quá trình đối sánh (matching
process) và cho kết quả là một danh sách các tài liệu đƣợc sắp xếp theo mức độ liên
quan tới truy vấn.
Vậy để mô tả thông tin một cách rõ ràng đầy đủ, ngƣời sử dụng không thể trực tiếp
yêu cầu các giao diện hiện thời của hệ thống tìm kiếm cung cấp thông tin cần dùng.
Thay vào đó ngƣời sử dụng phải chuyển đổi thông tin yêu cầu này thành một truy vấn
mà có thể đƣợc xử lý bởi hệ thống tìm kiếm (hoặc hệ thống IR). Thƣờng thì phép

chuyển đổi này tạo ra một tập hợp các từ khóa (hoặc các term chỉ số) mô tả khái quát
yêu cầu của ngƣời sử dụng. Cho một truy vấn ngƣời dùng, mục đích chính của một hệ
thống tìm kiếm là tìm kiếm thông tin mà có thể trở thành hữu ích hoặc phù hợp với
ngƣời sử dụng.
Để đạt đƣợc hiệu quả đáp ứng thông tin yêu cầu của ngƣời dùng, hệ thống tìm
kiếm phải bằng cách nào “hiểu” đƣợc các nội dung của thông tin (các văn bản) trong
một tập hợp và sắp xếp chúng theo mức độ phù hợp với truy vấn. Sự “hiểu biết” về nội
dung văn bản này bao gồm sự trích chọn cú pháp và ngữ nghĩa thông tin từ văn bản và
sử dụng thông tin này để so khớp với thông tin ngƣời dùng. Cái khó là không chỉ hiểu
để trích chọn thông tin này nhƣ thế nào mà còn là hiểu cách sử dụng nó để quyết định
mối liên quan nhƣ thế nào. Do vậy khái niệm mức độ liên quan (revlevance) cũng là
một phần quan trọng trong tìm kiếm tất cả các tài liệu liên quan với một truy vấn
ngƣời dùng mặc dù việc tìm kiếm có thể đƣa ra một tài liệu không thích hợp.
Vậy, tìm kiếm thông tin là một quá trình nhận dạng, xác định và chỉ ra các tài liệu
liên quan dựa trên mô tả yêu cầu thông tin của ngƣời sử dụng. Việc tìm kiếm các tài
liệu dựa trên nội dung thực sự của văn bản mà không phụ thuộc vào các từ khóa gắn
với văn bản đó. Các công cụ tìm kiếm nổi tiếng hiện nay nhƣ Google, Altavista,
Yohoo,... là những hệ tìm kiếm đƣa ra danh sách các văn bản theo độ quan trọng của
câu hỏi đƣa vào. Để xây dựng một hệ tìm kiếm văn bản có hiệu quả cao, trƣớc hết các
văn bản và truy vấn ở dạng ngôn ngữ tự nhiên phải đƣợc tiền xử lý và chuẩn hóa.
1.1.3 Một số vấn đề trong tìm kiếm thông tin
Kể từ những năm 40, các vấn đề trong việc lƣu trữ thông tin và tìm kiếm thông tin
đã thu hút sự chú ý rất lớn. Với một lƣợng thông tin khổng lồ thì việc tìm kiếm chính
xác và nhanh chóng càng trở nên khó khăn hơn. Với sự ra đời của máy tính, rất nhiều


10
ý tƣởng lớn đƣợc đƣa ra nhằm cung cấp một hệ thống tìm kiếm thông minh và chính
xác. Tuy nhiên, vấn đề tìm kiếm sao cho hiệu quả vẫn chƣa đƣợc giải quyết.
Về nguyên tắc, việc lƣu trữ thông tin và tìm kiếm thông tin thì đơn giản. Giả sử có

một kho chứa các tài liệu và một ngƣời muốn tìm các tài liệu liên quan đến yêu cầu
của mình. Ngƣời đó có thể đọc tất cả các tài liệu trong kho, giữ lại các tài liệu liên
quan và bỏ đi các tài liệu không liên quan. Rõ ràng giải pháp này không thực tế bởi vì
tốn rất nhiều thời gian.
Với sự ra đời của máy vi tính tốc độ cao, máy tính có thể “đọc” thay cho con
ngƣời để trích ra các tài liệu có liên quan trong toàn bộ tập dữ liệu. Tuy nhiên vấn đề
lúc này là làm sao để xác định đƣợc tài liệu nào liên quan đến yêu cầu của ngƣời sử
dụng. Do đó, mục tiêu của một hệ thống tìm kiếm thông tin tự động là truy tìm đƣợc
tất cả các tài liệu có liên quan đến yêu cầu của ngƣời sử dụng.
1.1.4 Cấu trúc điển hình của một máy tìm kiếm
Mặc dù trong thực tiễn, mỗi máy tìm kiếm có cách thực thi riêng mà theo đó
các thành phần đƣợc trình bày nhƣ dƣới đây có thể đƣợc nhập hoặc tách ra. Tuy nhiên,
một máy tìm kiếm điển hình thƣờng gồm các thành phần chức năng sau:
 Thành phần Crawling (Crawler): Đây là thành phần có chức năng thu thập tài
nguyên trang Web cho máy tìm kiếm. Thành phần này thực hiện việc duyệt không
gian Web, đi theo các liên kết trên các trang Web để thu thập nội dung các trang Web.
Crawler nhận tập các địa chỉ URL xuất phát từ dòng xếp hàng các trang Web chƣa
đƣợc thăm (dƣới đây gọi là frontier theo thuật ngữ Tiếng Anh thông dụng của nó) thực
hiện tải các trang Web tƣơng ứng về. Trong nhiều trƣờng hợp, thành phần crawling
còn bao gồm bộ phân tích cú pháp (parser), bộ điều khiển crawler. Bộ phân tích cú
pháp thi hành đối với trang Web, cung cấp các địa chỉ URL chƣa đƣợc thăm vào dòng
xếp hàng. Bộ điều khiển crawler quyết định xem URL nào đƣợc duyệt tiếp theo và gửi
kết quả cho crawler. Nội dung các trang web đã đƣợc tải về sẽ đƣợc lƣu vào kho trang
Web (page repository). Quá trình này đƣợc lặp lại cho tới khi đạt tới điều kiện kết
thúc.
 Thành phần đánh chỉ mục (indexer): Đây là thành phần có nhiệm vụ tiếp nhận
kết quả phân tích cú pháp trang Web đã đƣợc tải về và đánh chỉ mục cho nội dung
trang Web.
Kết quả của việc đánh chỉ mục sinh ra tập bảng chỉ mục rất lớn. Nhờ có bảng chỉ
mục này, máy tìm kiếm nhanh chóng cung cấp đƣợc tất cả các địa chỉ URL của các

trang Web đáp ứng truy vấn ngƣời dùng. Thông thƣờng, bộ tạo chỉ mục tạo ra chỉ mục


11
TÀI LIỆU THAM KHẢO
[1].

Roi Blanco González (2008). Index Compression for Information Retrieval
Systems, PhD. Thesis, University of Acoruña.

[2].

Daniel K. Blandford, Guy E. Blelloch (2002). Index Compression through
Document Reordering, DCC 2002: 342-351.

[3].

P. Boldi and S. Vigna (2005). Compressed Perfect Embedded Skip Lists for
Quick Inverted-Index Lookups, SPIRE 2005: 25-28.

[4].

Sergey Brin and Lawrence Page (1998). The Anatomy of a Large-Scale
Hypertextual Web search Engine, Technical report, Stanford University.

[5].

Andrei Z. Broder, Nadav Eiron, Marcus Fontoura, Michael Herscovici,
Ronny Lempel, John McPherson, Runping Qi, Eugene J. Shekita (2006).
Indexing Shared Content in Information Retrieval Systems, EDBT

2006:313-330.

[6].

Nils Grimsmo (2010). Bottom Up and Top Down: Twig Pattern Matching
on Indexed Trees, PhD. Thesis, Norwegian University of Science and
Technology.

[7].

Jinru He, Junyuan Zeng, Torsten Suel (2010). Improved index compression
techniques for versioned document collections, CIKM 2010: 1239-1248.

[8].

Jinru He, Hao Yan, Torsten Suel (2009). Compact full-text indexing of
versioned document collections, CIKM 2009: 415-424.

[9].

Christopher D. Manning, Prabhakar Raghavan, Hinrich Schütze (2009). An
Introduction to Information Retrieval (Chapter 4. Index construction,
Chapter 5. Index compression), Cambridge University Press (Online edition
@ 2009 Cambridge UP).

[10]. Hao Yan, Shuai Ding, Torsten Suel (2009). Compressing term positions in
web indexes, SIGIR 2009: 147-154.
[11]. Hao Yan, Shuai Ding, Torsten Suel (2009). Inverted index compression and
query processing with optimized document ordering, WWW 2009: 401-410.
[12]. Hao Yan (2010). Index Compression and Redundancy Elimination in Large

Textual Collections, PhD. Thesis, Polytechnic Institute of NYU.
[13]. Hao Yan, Shuming Shi, Fan Zhang, Torsten Suel, Ji-Rong Wen (2010).
Efficient term proximity search with term-pair indexes, CIKM 2010: 12291238.


12

[14]. Fan Zhang, Shuming Shi, Hao Yan, Ji-Rong Wen (2010). Revisiting
globally sorted indexes for efficient document retrieval, WSDM 2010: 371380.
[15].

I. H. Witten, A. Moffat, and T. C. Bell. Managing Gigabytes: Compressing
and Indexing Documents and Images. MorganKaufmann, second edition,
1999.

[16]. Erik Hatcher, Otis Gospodnetic, Michael McCandless. Lucene in Action
(2nd edition). Manning Publications, 2010.
[17].

Vo Ngoc Anh, Alistair Moffat. Index Compression Using Fixed Binary
Codewords. ADC 2004: 61-67.



×