êTìm hiểu về mô hình của mộ ệt h tìm ki m thôế ng tin, v đánh giá các à phương pháp lập chỉ ụ m c tài liệ đã có trong những hệu tìm ki m thông ếtin hiện nay.. Hai ngườ ời sử ụ d ng có th
Trang 2M ụ c lụ c
M Ụ C LỤ C
Trang Trang bìa phụ……….1
Chương 1 Hệ tìm kiếm thông tin tr n Internet……… 6 ê1.1 Tổng quan của mộ ệt h tìm ki m thôế ng tin………… … 61.2 Môđun lập chỉ ụ m c tài liệu trong c c hệ m kiếm th ng tin….18á tì ô1.3 Lý thuyế ủ ọt c a h cây BTree……… 31 Chương 2 Các phương ph p lá ập chỉ ụ m c tài li u trong h tìệ ệ m kiếm
Danh mục hình v và thị……… ……… 71 ẽ đồTài liệu tham khảo… … … … … … … … … … … … … ….73
Trang 3L ờ i n i đầu ó
L Ờ I N I ĐẦ Ó U
Ngày nay, cùng với 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 được hình thành kh p mọi nơi ở ắ
và không ngừng gia tăng về dung lượng Con người đ và đang đ ng trưã ứ ớc thực tế chìm ngập trong dữ liệu, nhưng thông tin thì vẫn luôn cần thiết, thậm chí thiế ố ớu đ i v i họ Nh ng kho d li u này n ch a m t hàm 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ổng hợp mỏ thông tin đó để nó trở nên hi n h u và có giá trị ử ụệ ữ s d ng đ i v i ngư i s ố ớ ờ ửdụng Những thông tin này được biểu diễn và lưu tr dưữ ới rất nhiều d ng khác ạnhau như văn bản, hình ảnh, video, âm thanh…Trong đó, dữ ệ li u văn b n phi ảcấu trúc là phổ ế bi n nh t Có th nói rấ ể ằng: “Khối lượng d liệữ u kh ng lổ ồ mà người sử dụng c thể truy suấ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 đư c lư ng thông ử ệ ả để ể ợ ợtin trong đó thì chúng cũng chỉ là nh ng thông tin chữ ết chứ không mang lại chút l i íchợ nào cả ”
Để ả gi i quyế ấ ềt v n đ này, ngư i ta đưa ra khái niờ ệm khai thác và xử lý thông tin Khai thác và x lý ử thông tin được hiểu là quá trình sử ụ d ng tri thức con người để trích ch n, ch t l c và t o ra thông tin mới, có ý nghĩa từ các ọ ắ ọ ạnguồn dữ liệu khác nhau như các giao dịch, tài liệu, email, trang web…và sử
dụng những thông tin này đ đưa ra các quyế ịể t đ nh trong i s ng hay trong đờ ố
từng lĩnh vực sản xuất, kinh doanh cụ ể th
Cho đến nay, con ngư i đờ ã đạt được nh ng tiế ộữ n b công ngh cùng vệ ới
s ự phát triển của những lý thuyết trong lĩnh vự ửc x lý thông tin đã giải quyết
được ph n nào vấ ề đặầ n đ t ra, ch ng h n, những bài toán trong xử lý văn bản ẳ ạ
Trang 4L ờ i n i đầu ó
như tìm kiếm, phân lớp văn bản… Tuy nhiên, vẫn còn nhiều vấn đề đ ang đượ đặc t ra cho bà ái to n về ổ t ch c dữ ệứ li u để tìm ki m thôế ng tin L m sao à để
lưu trữ th ng tin hiệu quả, có cấu tr ô úc hợ ýp l , chiếm t kh ng gian l u trí ô ư ữ,
phục vụ ố t t cho quá ìtr nh t m kiếm vẫn là một bà áì i to n ang đ được quan tâm hiện nay Với nhu cầu khám phá để có thêm hi u bi t, ợ ự ợể ế đư c s g i ý và dẫn
dắt của Thầy gi o hướng dẫn, sau khi tham kh o m t sá ả ộ ố tài liệu nghiên cứu trong và ngoài nước, em thựđã c hiện đề tài "Các ph ng ph ươ á p lập chỉ ục m
tà i liệu trong hệ m kiếm th ng tin” cho Luậ ă tì ô n v n Cao họ ủc c a mình
Luận văn này sẽbao gồm 4 chươn g:
Chương 1: H ệtìm kiếm thô ng tin tr n Internet ê
Tìm hiểu về mô hình của mộ ệt h tìm ki m thôế ng tin, v đánh giá các à
phương pháp lập chỉ ụ m c tài liệ đã có trong những hệu tìm ki m thông ếtin hiện nay
Chương 2: Các phương pháp lậ p ch m c tài li u trong hệ tìm kiếm ỉ ụ ệ
thông tin
Đề xu t hai phương phấ áp lập chỉ ục t m ài li u: phệ ương pháp chia sẻ block
và s dử ụng c y Bâ +Tree
Chương 3: H tì ệ m kiếm th ng tin Text Search ô
Xây dựng ch ng trươ ình t m kiếm th ng tin Text Search mà mì ô chỉ ục t i àliệu của nó đượ ạc t o lập bằng hai phương pháp đã đề ấ ở xu t ê tr n
Chương 4: Đánh giá thực nghi ệ m hệ tì m ki m th ế ông tin Text Search
So sánh v đánh gi thực nghiệm Text Search với hà á ệ tìm ki m thôế ng tin Google Desktop Search để chứng tỏ hiệu quả ủ c a hai phương phá ập p lchỉ ụ m c tài liệu chia sẻ block và s dử ụng cây B+Tree
Trang 5L ờ i n i đầu ó
Cuối c ng, em xin bày tỏ lòng biết ơn chân thành và sâu sù ắc nhất đến Phó Giáo sư - Tiến sỹ Nguyễn Đ c Nghĩa, ngưứ ời Thầy đã tận tình và chu đáo hướng d n em hoàn thành Luận văn này Em cũng xin gửi lời cả ơẫ m n đến các
Thầy C ở Trung T m Đào tạo Sau Đạ ọô â i h c và Khoa C ng Ngh ôô ệ Th ng Tin,
Trường Đại học Bách Khoa Hà Nội đã nhiệt tình giúp đỡ em trong quá ìtr nh
học tập tại Trường
Trang 6Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
+ Môđun lập chỉ ụ m c tà i liệu trong c c hệ tìm ki á ế m thô ng tin.
+ Nh ữ ng kiến thức cơ ở s được dùng trong Luận văn
1.1 Tổ ng quan c a một hệ ủ tìm ki m thô ế ng tin
Trong phần này từ tài liệu tham khảo, Luậ ă ẽn v n s đưa ra nh nghĩa về đị
một hệ tìm kiếm th ng tin, những mô ô hình t m kiếm th ng tin đãì ô và đang đượ ửc s dụng từ trước đến nay trên thế ớ gi i
1.1.1 Đị nh nghĩa m ộ t h tìm ki m thông tin ệ ế
Trong thời đại tr n ng p thà ậ ông tin hiện nay, n u khôế ng có một h tìm ệ
kiếm thông tin hiệu quả th người sử ụ ì d ng sẽ ễ ị d b ập chìm trong một biển ngthông tin Có nóthể i rằng tìm kiếm những thông tin cần th ết trong h ng hi ằ à sa
s ôố th ng tin tr n internet đã tr thê ở ành một nhu c u mang tính bản năầ ng c a ủcon người Do đó, thuật ngữ tìm ki m thông tin xuế ất hi n tệ ừ khá s m, và ớthông tin ở đây có th là d ng văn b n, hình ảnh hoặc âm thanh… Phổ ếể ạ ả bi n nhất là tìm kiếm văn bản (bao gồm việc tìm kiếm và sắp thứ ự t văn b n), đ c ả ặbiệt là trong hệ tìm kiếm thông tin (Search Engine) Đôi khi, 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 phân l p và tìm ớkiếm văn bản Trong Lu n v n này, thu t ng “tìm kiếậ ă ậ ữ m văn bản” được sử dụng theo nghĩa bao hàm việc lập chỉ ục tài liệu (document), tìm kiếm và m
Trang 7Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
sắp xếp các t i liệu đã tìm kiếm được theo thà ứ ự t liên quan đến yêu c u cầ ủa người sử dụng (t i liệu ở đây có thể là một file dữ ệà li u hoặc là một trang web)
Không cần ph i gi i thích nhiềả ả u cũng th y đưấ ợc vai trò của các hệ tìm kiếm thông tin trong thời phổ ậ c p internet như ngày nay Kho thông tin vô tận trên internet sẽ giảm đi nhi u ý nghĩa n u như không có công cề ế ụ tìm kiếm thông tin hiệu quả mà người sử ụ d ng cần Người sử ụ d ng luôn mong muốn rằng phải có một công cụ nào đó mà m ầỗi l n truy c p v o interneậ à t thì phải lấy được thông tin mà h ang tọ đ ìm kiếm
Một hệ 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, giúp người sử ụ d ng tìm kiếm được thông tin mà h quan tâm H thống này không giống như các hệ trọ ệ ả ờ l i câu hỏi, vì nó c n phải chỉ ra sự ồn tại và v trí nh ng tài li u có chò t ị ữ ệ ứa thông tin cần thiết
Một số tài li u “tìm kiệ ếm được” tho mãn yêu cả ầu của người sử ụ d ng gọi
là tài liệu phù hợp hoặc tài li u liên quan (Relevant Document) M t hệ ộ ệ tìm kiếm hoàn hảo sẽ ỉ ch tìm và đưa ra tài li u liên quan mà không đưa ra nhệ ững 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 c a tìm kiủ ếm là không đ y đầ ủ và 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 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
Hiện nay, do kh i l ng th ng tin ố ượ ô đồ ộ ạ s l i được bùng phát với một tốc
độ óch ng m t, do sặ ự phức tạ ủp c a ngôn ng t êữ ự nhi n, do yêu cầu t m kiếm ì
Trang 8Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
ngà ày c ng cao của con người thì ệc phát triển các hệvi tìm ki m thông tin còn ế
rất nhiều việc cần phải l m Ngay cả c hệ tìm kiếm phổ biến nhất hi n nay à cá ệtrên internet như ủ c a Google, Yahoo hay MSN cũng ngà ày c ng được cải tiến,
b ổsung và nâng cấp những chức năng của nó, mục đích làm sao để thuậ ện n ti
và h íữu ch nhất cho ng i sườ ử ụ d ng
Tìm ki m thông tin nói chung phế ải giải quyết nh ng 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 người sử ụ d ng d dàng truy cễ ập được thông tin mà họ đang quan tâm Nhưng để tìm ki m mế ột đặc điểm thông tin theo yêu c u cầ ủa người sử dụng kh ng phải lô à một công vi c d dàng, đặc biệt là với mộ ơ ởệ ễ t c s
d ữ liệu khổng lồ và đa dạng như internet Do vậy, một hệ tìm ki m thôế ng tin
hoàn chỉnh lu n c 3 môđun cơ ảô ó b n sau đây:
1 Môđun lập chỉ ụ m c tài liệ u
2 Môđun tìm kiếm tr n chỉ ục t i liê m à ệu theo cá âc c u truy v n cấ ủa người
s dử ụng
3 Môđun sắp xếp kết quả đã tìm ki m được ế
Mô hình của m t h tìộ ệ m kiếm th ng tin có ô thể biểu diễn qua sơ đồ sau:
Sắp xếp các
tài liệu
Các tài liệu đã được tìm kiếm
Bài toán thông tin Biểu diễn
Tài liệu
Biểu diễn
So sánh Phản hồi
Hình 1.1: Quy trình t m kiếm th ng tinì ô
Trang 9Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Quá trình biểu di n tài liễ ệu thư ng đườ ợc gọi là quá trình lập chỉ ụ m c tài
liệu (Indexing) Quá trình này có thể lưu trữ thực sự tài liệu trong h th ng, ệ ốnhư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ử ụ 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ự ễ d hiể ều v yêu cầu của người sử ụ d ng Việc 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) Việc 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 tài liệu đượ ắc s p xếp theo thứ ự ủ t c a mứ ộc đ liên quan với truy vấn
Rõ ràng, để mô t thông tin yêu cầu mộả t cách đ y đ , ngưầ ủ ờ ử ụi s d ng không thể ự tr c tiếp yêu cầu thông tin sử ụ d ng giao diện hi n thệ ời củ ệa h tìm
kiếm Thay và đó h o ọ 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 tìm kiở ệ ếm (hoặc thu hồi thông tin (IR - Information Retrieval)) Thông thường, phép chuyển đổi này tạo ra mộ ập t t
hợp từ khoá (hoặc các term chỉ ố) mô tả khái quát yêu cầu củ s a người sử dụng Với một truy vấn, mục đích chính của m t hệ IR là tìm kiếm thông tin ộ
mà có thể trở nên hữu ích ho c phù hặ ợp với người sử ụ d ng Điều quan trọng cần nhấn mạ ởnh đây là vi c ph c h i thông tin khác v i vi c phục hồi dữ ệ ụ ồ ớ ệ
li u.ệ
Trong ngữ ả c nh của một hệ thống IR, nhiệm vụ ủ c a phục hồi dữ liệu chính là việc xác định tài liệu chứa các từ khoá xuất hiện thường xuyên nhất trong truy v n mà không c n tho mãn yêu c u cấ ầ ả ầ ủa họ Trên thực tế, người sử
dụng của một hệ thống IR quan tâm nhiề ếu đ n việc khôi phục thông tin về
Trang 10Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
một chủ đề ơn là việc khôi phục dữ liệu mà đáp ứ h ng m t truy vấn đưa ra ộ
Một ngôn ngữ ục hồi dữ liệ ph u hướng vào việc khôi phục tấ ảt c các đ i tư ng ố ợthoả mãn nh ng điều kiệữ n đã đư c xác đ nh rõ ràng như mộợ ị t bi u th c chính ể ứtắc hoặc biểu thứ ạc đ i số quan h Do v y, v i mộ ệ ốệ ậ ớ t h th ng khôi phục dữ liệu, một đ i tưố ợng đơn lẻ ị ỗ b l i trong sốhàng nghìn đ i tư ng đưố ợ ợc tìm ki m ế
mức độ phù hợp với truy vấn Sự “hi u biết” về ộể n i dung này bao gồm việc trích chọn cú pháp, ngữ nghĩa t văn b n và sử ụừ ả d ng thông tin này để so kh p ớ
với thông tin người sử ụ d ng Cái khó không chỉ là hi u ể để trích chọn thông tin
mà còn là cách sử ụ d ng nó đ quy t đ nh mối liên quan này như thế nào? Do ể ế ịvậy khái niệm mứ ộc đ liên quan (Relevance) cũng là một ph n quan tr ng ầ ọtrong vấn đề khôi phục thông tin Trong thực tế, mục đích chính củ ệ ốa h th ng
IR là tìm kiếm tấ ả tài li u liên quan vt c ệ ới truy v n cấ ủa người sử ụ d ng mặc dù việc tìm ki m có thế ể đưa ra mộ ốt s tài li u không thích h p vệ ợ ới yêu cầu
Như vậy, khôi phục thông tin là một quá trình nh n dậ ạng, xác định và chỉ
ra 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 dựa trên nội dung thực sự ủ c a tài liệu mà không phụ thu c vào các ộ
Trang 11Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
t ừ khoá gắn với t i liệà u đó Mộ ốt s công c tìm ki m n i ti ng hi n nay như ụ ế ổ ế ệGoogle, Microsoft, Yahoo…là những hệ tìm kiếm đưa ra danh sách tài liệu theo độ quan tr ng của câu truy vấn đưa vào Đểọ xây d ng một hệ tìm kiếm ự
có hiệu quả cao, trướ ếc h t tài li u và truy vấn ở ạệ d ng ngôn ngữ ự t nhiên phải được ti n xửề lý và chu n hoá ẩ
Một mô hình của quá trình thiế ập truy vất l n được chuẩn hoá thành hai
vấ ề ần đ : đ u tiên là lựa chọn các term truy vấn và thứ hai là lựa chọn các phép toán truy vấn Sau đây là hai mô hình chi ti t cho b công cế ộ ụ tìm ki m thông ế
tin, đó là b côộ ng cụ m kiếm th ng tin truyề tì ô n th ng và b công c tìm kiố ộ ụ ếm thông tin trên mạng
1.1.2 Mô hình của mộ ộ t b tìm ki m thô ế ng tin truyền thống
Vào những năm 70, khi các mô hình tìm kiếm thông tin chủ ế y u đư c xử ợ
lý với các truy vấn không có c u trúc thì sấ ự ra đời hệ truy vấn tự độ ng đã tr ởthành m t sộ ự ki n Nguyên tắc hoệ ạ ột đ ng của hệ truy vấn tự động là chỉ ố s hoá và thiết lập công thức truy vấn, kết quả đưa ra m t biểộ u diễn có ý nghĩa gần với ý nghĩa thự ủc c a tài li u, c g ng lo i bỏệ ố ắ ạ các t không theo qui tắc ừtrong ngôn ngữ ự t nhiên đ n mức có thể Sau đây là một mô hình tổng quát ế
của hệ tìm ki m thông tin truyế ền th ng : ố
Trang 12Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Tập tài liệu liên quan
Tập tài liệu thu hồi
Tập tài liệu
đã sắp xếp
Tập tài liệu tìm kiếm Truy vấn
Phản hồi độ liên quan
Hình 1.2: Mô hình bộ công c tìm ki m thôụ ế ng tin truyền th ng ố
Khi xây dựng cơ ở ữ s d liệu để tìm ki m, nộế i dung của tập tài liệu được tách thành các từ Các từ này đư c so sánh với danh sách từ ừợ d ng (StopList) –
Trang 13Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
là một danh sách từ không đư c lập chỉ mục (nó không có giá trị ộợ n i dung trong nhận dạng văn bản, ví dụ như đối với ngôn ngữ ế Ti ng Anh là a, an, the, about…) Các từ không n m trong danh sách từ ừằ d ng sẽ ợ đư c chiết lọ ể ấc đ l y
gốc Ch ng có thể đượú c th ng kê t n su t xu t hi n đ h tr cho vi c s p xếp ố ầ ấ ấ ệ ể ỗ ợ ệ ắcác tài liệu thu hồi được Cu i cùng, các từ cùng với nh ng thông tin kố ữ ết hợp với chúng (ví dụ như : định danh tài liệu, đ nh danh trưị ờng n m trong tài liằ ệu,
và giá trị ố th ng kê …) đư c đ t vào kho c s d li u Kho này bao gồm các ợ ặ ơ ở ữ ệ
cặp giá trị định danh tài liệu và các từ khoá C u trúc này đượ ọấ c g i là chỉ ụ m c inverted (inverted index)
Để tìm ki m trong cơ sế ở ữ ệ d li u, người sử ụ d ng đưa vào một truy v n ấbao gồm m t t p t khóa đư c n i k t v i nhau b i các toán hạng logic (And, ộ ậ ừ ợ ố ế ớ ở
Or, Not) Truy vấn được phân tách thành các từ liên ti p và toán hạng logic ế
của chúng Những từ này được tìm kiếm trong chỉ ụ m c inverted, sau đó được kết hợp với nhau dựa theo các toán hạng logic Dựa vào thông tin thống kê, tập thu hồi trên có thể đư c sắ ếợ p x p theo thứ ự t liên quan tới n i dung Kộ ết quả này đư c đưa t i người sử ụợ ớ d ng Trong m t sộ ố ệ ố h th ng, ngư i s d ng ờ ử ụ
có thể đưa ra m t sốộ đánh giá v liên quan c a tài li u tìm ki m đư c, và ề độ ủ ệ ế ợnhững thông tin này đượ ử ục s d ng đ t ng thay đ i truy vấn bằng cách ể ự độ ổthêm vào các từ ủ c a những tài liệu liên quan và xoá đi các từ ủ c a nh ng tài ữliệu không liên quan
1.1.3 Bộ công c tìm ki m thô ụ ế ng tin tr n mạng ê
Do các trang web phân tán m i n i nên viọ ơ ệc đầu tiên là phải thu th p t t ậ ấ
c d ả ữ liệu web có liên quan t i truy vớ ấn, lập chỉ ụ m c, sau đó thực hi n tìm ệkiếm để đưa ra t p kết quả có liên quan t i n i dung truy vậ ớ ộ ấn Trước khi đưa
tới người sử ụng th ập kết quả này phả d ì t i được sắp xếp theo thứ ự độ t liên
Trang 14Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
quan Sau đây chúng ta xét đến một mô hình tìm ki m thông tin trên web ế – là
một kho dữ liệu cực lớn vớ ỉ ệi t l thay đ i r t cao ổ ấ
Sức mạnh c a world wide web là kho thông tin kh ng lủ ổ ồ ủ c a nó đư c ợquảng bá tới hàng triệu người Chúng ta có một vài trình duyệt web đơn giản như Internet Explorer Nhưng rất nhi u ngư i tìm ki m thông tin lề ờ ế ại thích sử
dụng bộ công cụ tìm ki m đ b t đ u trang web củ ọế ể ắ ầ a h Trong trư ng h p ờ ợnày, người sử ụ d ng đưa ra một truy vấn - c ụ thể là một vài từ khoá, và nhận được một danh sách trang web có liên quan, đặc bi t là các trang chứ ựệ a đ ng các từ khoá đó R t nhiều công cụ tìm kiếm sử ụấ d ng các thuật toán IR truyền thống Tuy nhiên nh ng thuữ ật toán IR được phát tri n cho tể ập tài li u nhỏ và ệkhông liên k t, ví dế ụ như tiêu đề ủ c a các bài báo hay mụ ụ ủc l c c a các cu n ốsách trong thư viện Trong khi đó web lại là m t khối dữ liệu cự ớộ c l n, thay
đổi thường xuyên c ng vộ ới khả năng phân tán m i nơở ọ i Đi u đó đòi hỏề i ph i ả
có một kỹ thuật mới ho c là s m r ng c a các k thu t cũ đ sao cho c u ặ ự ở ộ ủ ỹ ậ ể ấtrúc chỉ ụ m c có thể thay đ i, cập nhật mổ ột cách dễ dàng, tận dụng triệ ể ốt đ m i liên kết giữa các trang web để xác định một cách tốt nh t nhấ ững trang liên quan
Không có một câu trả ờ l i chính xác về độ ớ l n của toàn b trang web trộ ên internet M t sộ ố nghiên c u ư c lượng kích thước củ ơ ở ữ ệứ ớ a c s d li u web [8, 9, 10] đã đưa ra những con số khác nhau nhưng tất cả đề u đồng ý rằng có h n ơ
một tỉ trang web có hiệu lực hiện nay, với kích thước trung bình c a m i trang ủ ỗkhoảng 5 KB tới 10 KB thì ta cũng có ít nhất là 10 TB dữ ệ li u Tỉ ệ l phát triển của các trang web còn kinh khủng hơn [11]: kích thước của chúng sẽ tăng lên gấp đôi trong vòng hai năm, và tỉ ệ l đó s v n ti p tục ợc ẽ ẫ ế đư duy tr trong hai ì năm tiếp theo H n nơ ữa, bên c nh các trang web vạ ừa được tạo ra thì những
Trang 15Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
trang đang tồn tại cũng luôn luôn đượ ậc c p nh t Theo [11], n u theo dõi hậ ế ơn một triệu trang web trong vòng 4 tháng, ta thấy rằng có khoảng 23% các trang thay đổi hàng ngày Đặc bi t trong các miền như “.com” thì phảệ i có đến 40% các trang được thay đổi hàng ngày
Cùng với kích thước rất lớn và tỉ ệ l thay đổi liên tục của các trang web, còn có mộ ặt đ c trưng nữa là mối liên kế ữt gi a các trang web cho ta các t p tài ậliệu từ ấ r t nhiề ập tài liệu khác Đã có một s nghiên cu t ố ứu nhằm mục đích cho chúng ta hiểu liên k t giế ữa các trang web được xây dựng và c u trúc cấ ủa chúng có thể ợ đư c mô hình hoá như th nào? Ví d , một nghiên c u gế ụ ứ ần đây
đã gợi ý r ng cấu trúc liên k t cằ ế ủa các trang web giống như mộ ơt n con bư m ớ
Có nghĩa là khoảng 28% các trang hình thành m t lõi liên kộ ết mạnh (tâm của
n ơ con bướm) Khoảng 22% c c trang hình thành nên m t trong các vòng lá ộ ặp của nơ: đó là các trang có th đưể ợc đi tớ ừi t lõi nhưng không thể ngư c l i ợ ạVòng lặp khác bao gồm 22% các trang có thể đi t i từớ lõi nhưng không th ểđược đi tớ ừi t nó (còn l i m t s trang web mà t úạ ộ ố ừ ch ng không thể đi tới lõi
và cũng không thể đi đượ ừc t lõi đến ch ng).ú
Trước khi trình b y c c k thuật trong bộ công cụ tìm kiếm, chúng ta cần à á ỹthiết ph i hiả ểu công cụ tìm ki m web bao gế ồm nh ng thành ph n gì và cữ ầ ác
thành phầ đó được kết hợp với nhau như thế n nào? H nh 1.3 sau đây là mô ìhình tổng quan của mộ ột b công cụ tìm kiếm các trang web B công cộ ụ này
s dử ụng một môđun thu hồi (Crawler) để thu hồi tài liệu cung cấp cho các hoạt động của nó Môđun thu hồi là một nhóm các chương trình thay mặ ột b công cụ để duy t các trang web, tương tự như mộệ t ngườ ẽ ừ ội s t m t trang, theo các đường liên kết (link) để đi tới các trang khác Môđun này có đầu vào là một tập giá trị ở ầ kh i đ u URL mà các trang của chúng sẽ được tìm kiếm từ
Trang 16Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
web Môđun thu hồi trích các giá trị URL xu t hiện trong mỗi trang web tìm ấkiếm được và gửi tới môđun đ ềi u khiển thu h i (Crawler Control) Môđun ồnày xác định liên k t nào đưế ợc thăm tiếp theo, và cung c p thông tin này tấ ới môđun thu hồi (m t vài ch c năng c a môđun i u khiển thu h i có thộ ứ ủ đ ề ồ ể đư c ợthực hiện bởi chính các môđun thu hồi) Môđun thu hồi lưu các trang tìm kiếm được vào trong một kho lưu trữ trang (Page Repository) Nó tiế ục p tthăm các trang web cho tới khi nguồn tài nguyên cục bộ đã b c n kiệt ị ạ
www
Điều khiển thu hồi
Kho lưu trữ trang
Người sử dụng
Môđun lập chỉ mục
Môđun phân tích tập
Công cụ tìm kiếm Sắp xếp
Văn Cấu Tiện bản trúc ích Bảng chỉ mục:
Thu hồi
Truy vấn Kết quả
Phản hồi
Hình 1.3: Bộ công c tìm kiụ ếm trang web
Khi b công cộ ụ tìm ki m đã trải qua ít nhất mộế t chu kì thu h i (Crawling ồCycle) thì môđun đ ềi u khiển thu h i có thồ ể đư c hỗ trợ ởợ b i các chỉ mục được tạo ra trong quá trình thu hồi trước Ví dụ môđun iđ ều khiển thu hồi có thể s ử
dụng đồ thị liên kết của lần thu hồi trước để quyết định liên k t nào sẽ ửế s dụng và liên kết nào được bỏ qua Đi u khi n thu hề ể ồi cũng có thể ử ụ s d ng
Trang 17Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Môđun lập ch m c trích tấ ảỉ ụ t c các t trong mỗi trang web đồừ ng th i ghi ờnhận giá trị URL n i mỗ ừ ấơ i t xu t hi n K t qu là thu đư c m t b ng tìm ệ ế ả ợ ộ ảkiếm rất lớn cung cấp các giá trị URL tr t i các trang chứ ựỏ ớ a đ ng từ tìm kiếm
Dĩ nhiên phạm vi của bảng bị ớ gi i hạn trong n i dung cộ ủa những trang được tìm th y qua quá trình xấ ử lý thu hồi Do kích thướ ấc r t lớn và sự thay đ i ổnhanh chóng của các trang web đã làm cho việc l p chậ ỉ ụ m c văn b n trở nên ảkhó khăn hơn rất nhi u Ngoài ra chúng ta lề ại có thêm mộ ố ảt s b ng ch mục ít ỉphổ ế bi n, ví dụ như là b ng chỉ ụả m c cấu trúc (Structure Index) dùng để ả ph n ánh mối liên kết giữa các trang
Trong suốt quá trình thu h i và lồ ập chỉ ụ m c, bộ công cụ tìm ki m phải ếlưu trữ các trang tìm kiếm đư c Kho lưu trợ ữ trang sẽ ph ụtrách công việc này Thỉnh thoảng bộ công c tìm kiụ ếm phải duy trì m t bộ ộ nh m các trang đã ớ đệthăm dựa theo th i gian xây dờ ựng chỉ ụ m c Bộ nhớ đệ m này hỗ trợ cho việc đưa ra các trang kết quả một cách nhanh chóng và cung cấp các tiện ích tìm kiếm cơ ả b n Một vài hệ ố th ng, như Google, đã duy trì mộ ố ợt s lư ng r t lớn ấcác trang và lưu trữ chúng lâu dài Vấ ền đ lưu trữ cũng phải được xem xét
một cách cẩn thận
Môđun công c ụ truy vấn (Query Engine) có nhiệm vụ ậ nh n và tìm kiếm các yêu cầu của người sử ụ d ng M un nôđ ày sẽ ựa vào bảng chỉ ục và các d mkho lưu trữ trang Bởi vì kích thước rấ ớ ủt l n c a các trang web, cho nên khi người sử dụng chỉ đưa vào một hoặc là hai từ khoá thì sẽ ậ nh n đư c mộ ậợ t t p rất lớn các trang kết quả Do đó phải có một môđun xế ạp h ng (Ranking) đểthực hiện việc sắp sế ết quảp k sao cho các k t quế ả càng phở í êa tr n thì càng giống với nội dung đang được tìm kiếm Môđun truy v n đưấ ợc quan tâm một cách đặc biệt, bởi vì với các kỹ thuật truyền thống chỉ ự d a vào sự đo lường về
Trang 18Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
độ tương quan gi a truy v n v i tữ ấ ớ ập tài liệu Trong khi đó, đối với bộ công c ụtìm kiếm web, các truy vấn thì rất nh còn tỏ ập tài liệ ạ ấ ớu l i r t l n, nó đã ngăn
cản sự đánh giá về độ tương quan dựa trên phép tính gầ n đúng từ ệ vi c lọc số lượng các trang không liên quan ra khỏi kết quả tìm ki m ế
1.2 Môđun l p ch ậ ỉ ụ m c tà ệ i li u trong h ệ tìm ki m thô ế ng tin
1.2.1 Các bước cơ ả b n để ạ t o ra ch m c tài liệu ỉ ụ
Bản chất của việc t m kiếm l m c c từì à tì á có trong truy v n vấ à xuấ ện t hitrong tài liệu, sau đó đưa ra t n (số hiệu) c c t i liệu c chứa truy vấn v ốê á à ó à s lần xuất hiện của mỗ ừi t trong t i li u, th m chí các vị trí chính xác của từ đó à ệ ậtrong mỗi tài li u Cách tìm kiệ ếm một truy vấn đơn giản nhất là quét liên tiếp văn bản Vi c tìm ki m liên tiệ ế ếp (hay c n gò ọi là tìm kiếm online) là tìm sựxuất hiện của một mẫu trong văn b n khi văn b n không đưả ả ợc ti n xử lý Tìm ềkiếm liên tiếp chỉ phù hợp với các văn bản có kích thước nh ỏ
Cách lựa chọn tìm kiếm thứ hai là xây dựng các cấu trúc dữ liệu cho các văn bản (gọi là các chỉ mục - index) đ tăng t c đ tìm ki m, phù hể ố ộ ế ợp với việc xây dựng và duy trì các chỉ ụ m c khi tập tài liệu là lớn và biến đổi không
ng ng ừ Đây chính l nhiệm vụ ủà c a môđun lập chỉ ụ m c tài li u, là môđun đ u ệ ầtiên trong các hệ tìm kiếm thông tin
Trang 19Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Lập chỉ ục t i liệu, hi m à ểu một cách đơn giản, là việc sắ ếp các tài liệu p xnhằm đáp ứng nhanh chóng yêu c u tìm ki m thông tin cầ ế ủa người sử ụ d ng Hiệu quả ủ c a một phương pháp lập ch m c đưỉ ụ ợc đánh giá thông qua không gian lưu tr mà nó đòi hữ ỏi và th i gian cần thiế ể ựờ t đ th c hi n việ ệc tìm kiếm thông tin Các phương pháp lập ch mụỉ c gi vai trò quan trọng trong việc xây ữ
dựng một hệ m kiếm th ng tin hiệu quả tì ô
Để có cái nhìn trực quan hơn về các bư c ti n hành trong việc lập chỉ ớ ế
mục t i liệu, mô hình khái quát của chúng được thể hiện như sau: à
Tài liệu chuẩn hoáCác từ đã Chỉ mục tài liệu
Phân tích Xây dựng chỉ mục tài liệu
Hình 1.4: Khái quát mô hình lập chỉ ụ m c tài liệu
Hình 1.5: Mô hình môđun phân tích
Trang 20Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Nh ậ n dạng từ
Bước đầu tiên trong quá trình xử lý một tài li u hoặc truy vấệ n là xác định
t từ ố Một trong những phương pháp đơn giản nh t là xác định các ký hiệu ấtrong mộ ừt t và ký hi u t n i (inter-word) Đểệ ừ ố minh ho , chúng ta xem xét ạmột ví dụ ề v văn bản gốc như sau:
Trong ví d trên, tụ ất cả ký hi u không ph i ký tệ ả ự ho c chữ ố đềặ s u là các
ký hiệu từ ối Các ký hi u t n ệ ừ ố n i đư c loạ ỏợ i b trong giai đo n này và các dãy ạ
ký hiệu còn lại là các từ ố ử t x lý
Ngoài ra, có mộ ố ật s lu t heuristic thông dụng để nhậ ạng một từ không n dđượ ậc l p ch m c là: ỉ ụ
Có số ký t nhỏ hơn 4 ự
Có ít hơn một nguyên âm
Có nhiều hơn hai ký tự giống nhau liên tiếp
Có nhiều hơn 5 phụ âm liên tiếp
Có nhiều hơn 4 nguyên âm liên tiếp
Có nhiều hơn một dấu kết thúc liên tiếp
Trang 21Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Áp dụng các kỹ thuật nhận dạng từ ố n i và luật heuristic, tài liệu sau khi loại bỏ ấ t t cả các d u ch m, d u n i và d u ch m h i có d ng: ấ ấ ấ ố ấ ấ ỏ ạ
Loại c á c từ ừ d ng (stopword)
T dừ ừng l ừ xuất hiện trong t i liệu nhưng kh ng mang nhiều ý nghĩa à t à ôthông tin Thông thường, những từ y l giớ ừ ủ nà à i t c a Tiếng Anh hay từ đệ m mang tính địa phương c a Ti ng Viủ ế ệt Trong quá ìtr nh lập chỉ mục, các t này ừ
đã đư ợc ch a trong m t danh sứ ộ ách từ ừng M un l d ôđ ập chỉ ụ m c sẽ ă c n cứ vào
đó đểloại ch ng ra khỏi t i liệu Với v ụ ở trê àú à í d n, t i liệu sau khi ợđư c lo i bỏ ạ
các từ ừng sẽ d là:
Chuẩn hoá hình thái từ
Các từ trong m t tài liệộ u sau khi được xác định là có khả năng l p chỉ ậ
mục th chúng sẽ được chuẩn hoá Chuì ẩn hoá hình thái từ trong tài liệu và truy vấn được sử ụ d ng đ ể tìm các dạng hình thái khác nhau của từ ban đ u ầCông việc này có thể đư c thợ ực hiện bằng cách sử ụ d ng môđun lượ ừc t (Stemmer) hoặc từ điển tìm kiếm Môđun lược từ áp dụng các luậ ểt đ chu n ẩhoá từ Một số môđun lượ ừc t đã phát triển từ những năm 60 khi các hệ tìm kiếm đ u tiên đưầ ợc th c hiự ện Các môđun lượ ừ ổc t n i tiếng như của Lovins [1] và Porter [2], sau đó đã trở thành gi i thuậả t được ch p nhậ ấấ n r t ph bi n ổ ế
chapter 1 preamble humanity stands at a defining moment history we are confronted with a perpetuation of disparities between and within nations a worsening of poverty hunger ill health and illiteracy and the continuing deterioration of the ecosystem on which we depend for out well being
chapter 1 preamble humanity stands defining moment history we confronted perpetuation disparities nations worsening poverty hunger ill health illiteracy continuing deterioration ecosystem we depend well
Trang 22Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Tuy nhiên, hiệu quả ủ c a phương pháp tìm kiếm này có những hạn chế nh t ấ
định Đôi khi các giải thuật lược bỏ ừ t có th đúc k t hai từ có nghĩa hoàn ể ếtoàn khác nhau thành m t tộ ừ ố g c, chẳng hạn các từ “skies” (trời, khí hậu) và
“ski” đ u lư c thành “ski” Trong trưề ợ ờng hợp như v y ngưậ ời sử ụ d ng có thể không hiể ạu t i sao một tài li u c th đư c tìm kiệ ụ ể ợ ếm và bắ ầt đ u v i mớ ột câu hỏi chung chung cho toàn bộ ệ ố h th ng M c dù vặ ậy các môđun lượ ừ ẫc t v n thư ng đườ ợc s d ng trong nhiều hệ thống nghiên cứu như Smart, Okapi và ử ụTwenty One.-
Trở ạ l i ví dụ đã đưa ra ở trên, văn bản sau khi chuẩn hoá từ ẽ s như sau:
T ừ điển tìm kiếm sẽ cho k t quế ả ớ v i các từ ố g c chính xác về ngôn ngữ, thư ng đườ ợc g i là lemmas Tuy nhiên, cọ ó mộ ừ ểt t đi n hình thái chưa chắc đã
đủ để xây d ng m t lemmatiser Mộ ố ừ ẽự ộ t s t s có nhi u mụ ừề c t , có th v i các ể ớlemma khác nhau Chẳng hạn, từ “saw” có th ể là th i quá khờ ứ của mộ ột đ ng
từ, lemma c a nó là “see” và có thủ ể là một danh t , trong trư ng h p này ừ ờ ợlemma tương đương với hình thái đầy đủ Ví d khác là t “number” có thể ụ ừđược so sánh v i “numb” (dạng tính từớ có nghĩa là “tê c ng” hoặc dạứ ng động
t ừ là “làm tê cứng”) Trong các trường hợp này, một lemmatiser phải xác định
t ừ loại của từ trước khi chọn lemma chính xác Các giải thuật huấn luyện thống kê dựa trên tài liệu có thể ợ ử ụ đư c s d ng m t cách hi u qu tìm từ ộ ệ ả đểloại chính xác và do vậy đưa ra những lemma chính xác
chapter 1 preambl human stand defin moment histori confront perpetu dispar nation worsen poverti hunger ill health and illiteraci continu deterior ecosystem depend well be
Trang 23Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
1.2.1.2 X y d â ựng chỉ ụ m c tà i liệ u
Sau khi từ đã đư c chuẩợ n hoá, môđun này sẽ ử ụng c s d ác thuật toá à n v
cấu tr c dữ liệu để ưu trữ c từ cùng với th ng tin vú l cá ô ề tà ệi li u và v í cị tr ủ ừa t trong tài liệu đó Mục tiê à xây dựng được mộu l t ch m c tài li u ti t kiỉ ụ ệ ế ệm chi phí lưu trữ và tăng hiệu quả khi tìm kiếm
1.2.2 Lập chỉ ụ m c tài liệu trong hệ tìm ki m thông tin Google ế
Hiện nay chúng ta có thể ấ th y rằng, hệ tìm ki m Google đang giữ ịế v trí thống trị trong các h tìm ki m thông tin Thệ ế ậm chí nếu MSN đang cố ắng g
hết sức để đ ổi theo mộ u t cách m nh mẽ ằạ b ng cá ôc c ng c tìm ki m m i, thì ụ ế ớvới một ngân qu qu ng cáo to l n và phương pháp s p x p m i, Google v n ỹ ả ớ ắ ế ớ ẫvượt trội hơn Yahoo v Ask Jeeves v n cà ẫ òn đang ở ạ d ng tiềm năng, trong khi
t ừ thập ni n 90, cê ác lỗi lớ ủa AltaVista và Webcrawler đã làm cho chún c ng có
những bước thụ ùt l i nghi m trọng Vớ á ý ê i c c l do ên, Luận v n str ă ẽ ìtr nh b y àphương pháp mà Google lập chỉ mục tài li u, t đó tìm cách đánh giá hi u ệ ừ ệnăng của phương pháp này Hình 1.6 sau đây là mô hình kiến trúc tổng quan
của Google Google được viết bằng ngôn ngữ ập tr nh C C++ và chạy trên l ì \Solaris hoặc Linux
Hình 1.6: Kiến trúc tổng quan của hệ tìm kiếm th ng tin Googleô
Trang 24Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Theo Sergey Brin và Lawrence Page [3], trong Google, việc thu hồi các trang web được th c hi n bởự ệ i môđun thu hồi Môđun này nh n danh sách ậURL do URLserver tìm được gửi đến Các trang web đã thu hồi sẽ được cho
vào server lưu trữ(Store Server) Server n y sau đó sẽ nén và lưu trữ các web ànày vào trong một kho M i trang đ u đư c gán b ng mộ ố ọỗ ề ợ ằ t s g i là docID khi
có một URL mới đư c đưa vào phân tích Môđun lậợ p ch m c (Indexer) thực ỉ ụhiện các chức năng đọc kho chứa các tài liệu, giải nén và phân tích chúng Mỗi tài liệu được chuyển thành mộ ậ ừt t p t xuất hiện (word occurrence) gọi là các hit Một hit bao gồm nội dung và v ịtrí của từ trong tài liệu Môđun lập ch ỉmục phân loại các hit này vào trong mộ ậ ủt t p c a các barrel, nơi tạo ra m t ộphần chỉ mục tài li u đã đư c sắp xếp Ngoài ra môđun lậệ ợ p ch mụỉ c cũng thực hiện mộ ố ứt s ch c năng quan tr ng khác Nó phân tích các đưọ ờng liên k t vào ế
ra của mọi trang web và lưu trữ thông tin quan trọng của chúng vào trong một file mấu neo (anchor file) File này chứ ầ ủa đ y đ thông tin đ xác đ nh các ể ịđiểm liên kế ết đ n và đi, và văn bản ợđư c liên k t trỏ đếế n
Môđun ph n t ch URL (URLresolver) đọc các file mấu neo và chuyển â íđổi các URL tương đối sang URL tuyệ ốt đ i và đổi thành các docID Nó để file mấu neo vào trong chỉ ụ m c forward, liên kết với docID mà các mấu neo trỏđến Nó cũng sinh ra một cơ sở ữ ệ d li u của các liên k t dùng đ tính toán ế ểPageRank cho tất c tài liả ệu Môđun sắp xếp (Sorter) l y các barrel đã được ấsắp xếp bởi docID, và sắp xế ại chúng bằp l ng wordID để ạ t o ra chỉ ụ m c inverted C n có mầ ột không gian tạm để thực hi n việ ệc này Môđun sắp xếp cũng tạo ra m t danh sách của wordID và t n vào trong chộ đặ ó ỉ mục inverted Một chương trình đượ ọc g i là DumpLexicon lấy một danh sách lexicon được tạo bởi môđun lập ch m c đ t o ra m t lexicon m i sử ụỉ ụ ể ạ ộ ớ d ng cho môđun tìm kiếm (Searcher) Môđun tìm kiếm ch y b i một web server và sử ụạ ở d ng
Trang 25Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
lexicon được xây dựng bởi DumpLexicon cùng với chỉ ụ m c inverted và PageRank để ả ờ tr l i cho các câu truy vấn
Cấu trúc dữ liệu của Google được tối ưu hoá do đó một số lượng lớn tài liệu có thể ợ đư c thu h i, l p ch m c và tìm kiồ ậ ỉ ụ ếm với chi phí rất nhỏ Mặc dù khả năng của bộ ử x lý và tố ộc đ vào ra đã thay đổi nhanh chóng trong thời gian gần đây, cho nên sự truy suất trên ổ đĩa bây giờ ỉ ầ ch c n tối đa 10 giây đểhoàn thành, tuy nhiên, c u trúc dấ ữ ệ li u c a Google vủ ẫn được thiế ế đểt k tránh truy su t trên ấ ổ đĩa ít nhất có thể
Kho chứa (repository)
Kho chứa lưu trữ đầ y đ n i dung HTML (ủ ộ HyperText Markup Language) của mọi trang M i trang được nén l i bỗ ạ ằng cách sử ụ d ng zlib
Việc lựa chọn kỹ thuật nén là m t sộ ự tho hi p giữa tố ộả ệ c đ và tỉ ệ l nén Google chọn tố ộ ủc đ c a zlib trên mặc dù bi t đ n s phát tri n đáng ghi nh n ế ế ự ể ậ
v t l ề ỷ ệnén của bzip T l n nén c a bzip x p xỉỷ ệ ủ ấ 4/1 so v i zlib là 3/1 Trong ớkho chứa, các tài liệu được sắp x p l n l t theo thế ầ ượ ứ ự t docID, kích thước t i àliệu, URL như trong hình 1.7
Hình 1.7: C u trúc trong dấ ữ liệu kho chứa của Google
Ch m ỉ ụ c tài liệ u
Ch mỉ ục tài liệu chứa thông tin của c c tài liệá u, được sắp xếp bởi docID Thông tin đư c lưu trợ ữ bao g m tr ng thái c a tài li u hi n t i, một con trỏ ỏồ ạ ủ ệ ệ ạ tr
Trang 26Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
vào trong kho chứa, một checksum c a tài liủ ệu, và các số liệu thống kê Nếu tài liệu đã được thu hồi, nó có một con trỏ trỏ đến file g i là docinfo chọ ứa URL và tiêu đề ủ c a tài li u Ngượ ạệ c l i thì con trỏ này tr n một danh sách ỏ đếchỉ có URL Danh sách URL n y tương ng với docID và đượ ắà ứ c s p xếp theo checksum Để tìm docID của một URL liên quan, checksum của URL được tính toán và được tìm kiếm nhị phân trên danh sách n y đểà tìm ra docID của
nó Các URL có thể ợ đư c chuyển thành docID theo từng khố ằi b ng cách hợp
nhất với file này Đây là kỹ ật mà môđun phân tích URL sthu ử ụ d n ể biến g đ
đổi URL thành docID
Lexicon
Google có nhiề ạu d ng Lexicon khác nhau Một thay đổi quan trọng c a ủGoogle so với các hệ thống trước đó là lexicon có thể phù h p v i bợ ớ ộ ớ nhtrong một chi phí h p lý Trong cợ ác xử lý hiệ ại, Google giữ ộn t m t lexicontrên một máy có dung lượng b nh chính là 256 MB Lexicon ch a 14 triộ ớ ứ ệu
t ừ (mặc dù m t s t không đư c thêm vào) Nó được chia thành hai phần: ộ ố ừ ợmột danh sách từ (móc n i vào nhau nhưng đư c phân biệt bởi các khoảng ố ợcách) và một bảng băm của các con tr Cho các chỏ ức năng khác nhau, danh sách từ có một vài thông tin hỗ trợ mà khuôn kh c a Luận văn không cho ổ ủphép trình bày đầy đủ ở đây
Các danh sách hit (Hit Lists)
Một danh sách hit tương ứng v i một danh sách tớ ừ xu t hiệấ n trong một tài liệu bao gồm vị trí, font chữ, và thông tin về ữ ế ch vi t hoa Các danh sách hit sử ụ d ng phần l n không gian l u trớ ư ữ cho c ả hai loại chỉ ụ m c forward và inverted Vì thế, đ ềi u quan trọng là biểu diễn chúng ở mức hi u qu nh t ệ ả ấGoogle quan tâm đến 3 lựa ch n đ ọ ểmã hoá đó là, mã hoá đơn giả– n (m t bộ ộ
Trang 27Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
ba các số nguyên), mã hoá nén (compact encoding - là sự ấp phát tối ưu cho ccác bit) và mã hoá Huffman Cu i cùng Google ch n mã hoá nén vì nó yêu ố ọ
cầu ít không gian hơn mã hoá đơn gi n và ít thao tác trên bit hơn mã hoá ảHuffman Xem chi ti t vế ề các hit hình 1.8: ở
docid wordid: 24 nhits: 8 hit hit hit hit
wordid: 24 nhits: 8 hit hit hit hit
nullwordid
docid wordid: 24 nhits: 8 hit hit hit hit
wordid: 24 nhits: 8 hit hit hit hit
Hình 1.8: Chỉ ụ m c forward, interved, lexicon và các loại hit của Google
Google sử ụ d ng 2 byte cho mọi hit Có hai kiểu hit: fancy hit và plain hit Fancy hit là các hit xuất hiện trong URL, tiêu đề, file mấu neo hay meta tag Một fancy hit chứa một bit ch hoa (capitalization), kích thướ ủữ c c a font đư c ợthiết l p bậ ằng 7 để xác đ nh rằị ng đây là m t fancy hit, 4 bit độ ể mã hoá kiểu của một fancy hit, và 8 bit cho vị trí Plain hit l nh ng hi òn lại Một plain à ữ t chit bao gồm bit chữ hoa, kích thước font, và 12 bit của vị trí t trong tài li u ừ ệ(tất cả các vị trí lớn hơn 4095 đư c đánh d u là 4096) Kích thượ ấ ớc của font liên quan đến tài liệu nên sử ụ d ng 3 bit (tuy nhiên chỉ 7 giá trị ợ đư c th t sậ ự ử s dụng vì [00000111] là cờ đánh dấu đây là một fancy hit) Cho hit mấu neo (anchor hit), 8 bit của vị trí đư c chia thành 4 bit cho v trí mợ ị ấu neo và 4 bit cho một hash của một docID mà m u neo xu t hiấ ấ ện Chính đi u này đưa ềGoogle tới một gi i h n là không đượớ ạ c có quá nhi u mấu neo cho m t tề ộ ừ Google sử ụ d ng kích thước font kết hợp với ph n phầ ụ ủ c a tài liệu b i vì khi ở
Trang 28Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
tìm kiếm, người sử ụ d ng không muốn x p loế ại tài liệu thành khác nhau chỉ bởi vì một trong s các tài li u đó có kích thước font lớn hơn ố ệ
có wordID ở trong đó Theo cách này, Google sử ụ d ng 3 byte cho wordID trong các barrel chưa sắp x p ế
Ch m ỉ ụ c inverted
Ch mỉ ục inverted chứa một số ợ lư ng barrel giống như chỉ ụ m c forward, ngoại trừ chúng đã được xử lý b i môđun sắp xếở p V i mọi wordID chính ớxác, lexicon có một con tr tr n barrel mà wordID nằm trong đó Nó trỏ ỏ ỏ đế
đến một danh sách tài li u cệ ủa các docID cùng v i danh sách hit tớ ương ng ứDanh sách này có thể ư l u trữ ấ t ảt c các t xu t hi n trong tài liệu ừ ấ ệ
Một vấ đề quan trọn ng n y sinh là thả ứ ự t xu t hiệ ủấ n c a docID trong danh sách tài liệu Có mộ ảt gi i pháp đơn gi n là lưu trả ữ chúng khi đã đư c s p xếp ợ ắtheo docID Điều này cho phép h p nh t nhanh chóng nhi u danh sáợ ấ ề ch t i li u à ệcho những câu truy vấn có nhi u tề ừ Một lựa chọn khác là lưu trữ chúng khi
đã đượ ắc s p xếp bởi một ph m vi củ ừ ấ ệạ a t xu t hi n trong mỗi tài liệu Điều này làm cho truy v n mấ ộ ừ ởt t tr nên t m thường và sự trả ờầ l i cho các câu truy vấn
Trang 29Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
có nhiều từ ầ g n hơn v i điớ ểm xuất phát Tuy nhiên, quá trình hợp nhấ ại khó t lkhăn hơn rất nhiều Nó cũng gây ra khó khăn khi mà thay đổi ch c năng phân ứloại phạm vi sẽ yêu cầu xây d ng l i toàn bự ạ ộ ch mỉ ục tài liệu Google chọn
lựa sự thoả hiệp giữa các phương pháp này Google giữ hai tập của các barrel
- một tập cho các danh s ch hit mà bao gồm tiêu đềá và hit m u neo, và t p còn ấ ậlại cho tất cả danh s ch hit Theo cách này, Google ki m tra t p đ u tiên c a á ể ậ ầ ủbarrel đầu tiên và nếu không có đủ ánh x trong nh ng barrel này, nó s ki m ạ ữ ẽ ểtra ởcác barrel lớn hơn
1.2.3 Nh ữ ng vấn đề n tồn tại trong c c chỉ ụ cò á m c tài li u hi n nay ệ ệ
Mặc dù là một hệ m kiếm th ng tin r tì ô ất nổi tiếng, nhưng từ phần trình
bày về phương ph p l u trá ư ữ tà ệu của Google ở êi li tr n, c thể ấó th y hệ tìm kiếm nà òy c n có mặt hạn chế: vì là một hệ tìm ki m thôế ng tin mạnh do đó Google phải cập nh t chậ ỉ mục tài li u c a nó êệ ủ li n t c, nê ó ụ n n đã s dụng đến 3 ửkho lưu trữ tài li u: kho chứa, chỉ mục forward và inverted ệ Đ ềi u nà à y l không
tiết kiệm nếu xé đến kht ía cạnh chi ph ư ữ í l u tr
Ngoài ra, hiện nay còn mộ ốt s các phương pháp [4, 5] cho phép lập ch ỉmục tài li u khá hiệ ệu quả, tuy nhiên, với các chỉ ụ m c loại này, sẽ không cho phép tìm ki m theo tế ừ ố g c (stemming search), v n rố ất nhiều trong ngôn ngữTiếng Anh Một cách tiế ập c n khác, Srivastava và Ramamoorthy [6] đã đề xuất phương pháp lập ch m c b ng cây BTree có tố ộỉ ụ ằ c đ nhanh hơn nếu các khoá được thêm vào cây BTree đã được sắp xếp trong bộ ớ nh Tuy nhiên, phương pháp này rất phứ ạc t p, do vẫn để các kho á ởtrong cấu trúc cây BTree
Theo Anthony Tomasic, Hector Garcia-Molina và Kurt Shoens [7], trong nhiều hệ tìm ki m thông tin hiện nay, viế ệc cấu trúc lại chỉ ụ m c tài li u là ệ
Trang 30Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
không thực hiện được Nguyên nh n â đầu ti n l do cê à ác cơ ở ữ ệ đã m m s d li u ề
dẻo hơn V ụ, khi lập chỉ ục cho một b i b o hay chỉ ốí d m à á s chứng kho n, thá ì thông tin m i nhớ ất được xem xé đết n Do , khi mu n cđó ố ập nhật chỉ ụ m c tài liệu, thì cá àc t i liệu m i s đư c thu v Khi c p nh t ch m c tài li u, vi c xử ớ ẽ ợ ề ậ ậ ỉ ụ ệ ệ
lý cho từng t i liệu ri ng lẻ kh ng hiệu quảà ê là ô mà phải theo khối t i liệu Là ý
do thứ h à ai l khi cập nhậ ữ liệt d u người sử ụ d ng mong mu n rố ằng nó có thể
loại trừ (hay ít nhất là cũng trì hoãn) sự êu tti ốn tài nguyên Những sự ổ t ch c ứ
lại chỉ ục dữ liệu cồ m ng k nh có th đượề ể c ch p nh n vào nh ng ngấ ậ ữ ày nghỉ cuối tu n, nh ng nầ ư ếu thực hiện công việc này 7 ng y trong tuần, 24 giờ trong à
một ng y, l m gi n đ ạn cà à á o á ác t c vụ khác trong th i gian nờ à à iy l đ ều không thểchấp nhận được Lý do thứ ba l chỉ ụà m c tài li u có s hệ thể đồ ộ ơn khi tổ chức
lại V ch thước của c c t i liệu phát triển trong một vài các ứng dụng, do đó ì kí á àmong muốn là có một chỉ ục dữ liệ m u mềm dẻo mà có th phể át triển và ù phhợp với thi t bế ị ư l u trữ, chứ ôkh ng nh t thi t ph i tấ ế ả ổ ch c l i toàn bộ Mặc dù ứ ạ
s cự ập nhật chỉ ụ m c tài li u là mộệ t nhu c u t nhiên, nhưng có rất ít kiếầ ự n th c ứbiết hiệu quả ủ c a chúng Các hệ ố th ng mà thực hiệ ập nhật chỉ ụn c m c theo các chiến lược chất phác sẽ không có hi u quả Ví d , khi chệ ụ ỉ ụ m c WAIS (Wide Area Information Servers) cần phát tri n mể ột danh sách inverted, nó sao chép toàn bộ danh s ch n y sang mộá à t vùng a m i, l i vùng dđĩ ớ để ạ ữ ệ li u không sử
dụng ở ph a cuối cho những ần cập nhật tiếp theo C thể hiệu quả ơn nếu í l ó hchúng ta để ạ l i một ít kh ng gian a, và s êô ổ đĩ ự th m v o s v a v i vùng không à ẽ ừ ớgian đó? Nếu có nhiề ổ đĩu a, chúng ta có tthể ạo một danh sách đánh d u cho ấ
dã á y c c ổ đĩa n y để ăng hiệu năng xử lý? Các danh sách inverted thay đổi à t
với tốc độ ch ng mặt: c ó ó các từ mà s lố ần xuất hiện trong cá àc t i liệ à rất u l
lớn, nhưng c ất nhiềó r u các t l i xu t hi n r t ít trong từ ạ ấ ệ ấ ài liệu Thế th đâ à ì u l
cá lch ưu trữ hiệu quả nhất cho các danh s ch inverted nà à tá y v ận dụng được
tối đa ổ đĩa, đồng thời tăng được tốc độ tìm ki m? ế
Trang 31Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
1.3 Lý thuy ế t cơ ản của họ c c y BTree b cá â
Trong phần này, Luận văn trình bày sơ ược lại c c đị l á nh nghĩa của họcây BTree và cấu tr c dữ liệu tr n ch ng Đồng thời đánh gi ề hiệu quả ủa ú ê ú á v c
từng loại c y BTree v chọn lựa loại c y BTree hiệu quả ấâ à â nh t để ư l u trữ ỉ ch
mục t i liệu à
1.3.1 Định nghĩa câ y BTree
Cây BTree là sự ở ộ m r ng của cây nhị phân mà m i nút của nó chứ ựỗ a đ ng nhiều khóa Một cây BTree cấp m phải thoả mãn những tính chất sau:
Mọi nút có ít hơn hoặc bằng m con
M ọ i nút ngoại trừ ốc và các nút lá có nhiều hơn hoặ ằ g c b ng m/2 nút con
G ố c có ít nhất là 2 t con (trừ khi nó là nút lá) nú
T ấ t cả các n t lá có cùng mộ ấ ú t c p
M ộ t nút không phải là nú t lá với k con chứ ự a đ ng k - 1 khoá.
234 234
12
32
Hình 1.9: Cấu trúc dữ liệu tr n cê ây BTree
Một n t chứa j khoá và j + 1 con trỏ đượú c di n t như sau: ễ ả
Trong đó K1 < K2 < K3 … < K j , và P0 ttrỏ ới cây con chứ ựa đ ng khoá K
< K1, P j ttrỏ ới cây con chứ ựa đ ng khóa K K > j , và P i (0 < i j) trỏ ới cây < t
con có các khoá K sao cho : K i < K < K i+1
P0 K1 P1 K2 P j – 1 K j P j
Trang 32Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Thuật toán tìm kiếm trong cây BTree: sau khi một cây con được tìm và nạp vào trong bộ ớ nh trong, ta ti n hành tìm kiế ếm giữa các khoá K1, K2,…K j
Nếu khoá tìm kiếm bằng với K i thì quá trình tìm kiếm hoàn thành Ngượ ạc l i,
nếu khoá nằm giữa K i và K i+1 thì c y con trỏ ởâ b i P i s ẽđược tìm và nạp, quá trình xử lý được ti p tế ục Nếu khoá nhỏ hơn K1 thì sử ụng P d 0, còn nếu lớn hơn K j thì sử ụng K d j Nếu P i là một con tr r ng, tìm ki m không thành công.ỏ ỗ ế
Thuật toán chèn cũng rất đơn giản Trong hầu hết các trường hợp, khoá
mới sẽ được chèn vào trong một nút lá tương ng, nhưng nếứ u nút lá đó đầy thì phải được tách ra làm hai, và khoá ở giữa của nút phải được chèn vào trong nút cha
Việc chè à ó n n y c thể gây ra cho n t cha có á ú qu nhiều khoá và cũng phải
tách ra l m hai, quà á trình n y cà ó thể lan truyề đến n g c N u nút gốc phải tách ố ế
ra làm 2 thì phải tạo ra một nút gốc mớ ới v i ch m t giá tr ỉ ộ ị kho , thu t toán á ậchèn vẫn luôn giữ được các thu c tính c a câộ ủ y BTree
Để đả m b o đư c thu c tính củả ợ ộ a cây BTree trong thu t toán xoá ta phải ậ
x lý ử nhiều phép lan truyền trên cây, nhưng do không có đủ ờ th i gian, thuật toán lại quá phức tạp mà hiện nay đã có thuật toán xoá m i trên cây Bớ +Tree
rất đơn gi n nhưng vả ẫn giữ được tính chất của cây BTree, nên Luận văn không trình bày thu t toán xoá ậ ở đây, mà s trình bày thuật toán xoá của cây ẽ
B+Tree trong phần sau
P0, K1,……, Km/2 -1 , Pm/2 -1 Pm/2 , Km/2 +1 , Pm/2 + 1 ,……, K m , P m
Trang 33Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
1.3.2 Cây B*Tree
Cây B*Tree giống với cây BTree ban đầu, tuy nhiên mỗi nút ch a ít nhất ứ2/3 m khoá (m là số lư ng khoá lớn nhất mà mỗợ i nút có thể ch a đư c) Cây ứ ợB*Tree có những thuộc t nh sau: í
Mọi nút có ít hơn hoặc bằng m con
M ọ i nút ngoại trừ ốc và lá có nhiều hơn (2m - g 1) / 3
Gốc có ít nhất 2 con và nhi ề u nhấ t 2 * [(2m 2)/3] + 1 con
- T ấ t cả lá có cùng một cấp bậc
Nút không phải lá với k con chứ a đ ự ng k-1 khoá
Tuy cây B*Tree có thể làm cho chiều cao của cây giảm nhưng thuật toán chèn và xoá lại rất ph c t p, mỗ ầ ửứ ạ i l n x lý ta không chỉ ỉ ch nh sửa nút cha của nút hi n thệ ời mà còn phải duyệt cả nút anh của nó nữa Có nghĩa là, nếu nút
cần chèn đ đầã y, ch ng ta phải duyệú t nút anh c a nó, n u không đ y thì ta ủ ế ầchuyển dữ ệu của nút sang nút anh, còn nếu cả hai cùng đầy thì ta phải tách li
c ảhai nút đó ra Do tính chất phức tạp của thuật toán nên ch ng ta không xem ú
xé ó t n ở đây
1.3.3 Cây B + Tree
Hình sau y minh hođâ ạ ộ m t ví d ụcho cấu tr c dữ liệu trê âú n c y B+Tree:
281 29 12
32
Hình 1.10: C u trấ úc dữ ệ li u trê ân c y B+Tree
Trang 34Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Thông thường ta ph i thêm mộ ố ạả t s lo i dữ ệ li u đi cùng v i khoá trong ớcây BTree, ví dụ như đ a chỉ ủị c a khoá trong tài liệu, tần suất của khoá…Cây
B+Tree là mộ ết bi n th c a cây BTree, trong đó các khoá tạể ủ i nút lá s đư c kết ẽ ợ
hợp với dữ liệu của nó, và một vài khoá được sao chép lên c p bấ ậc cao hơn Một nút không phải lá trong B+Tree có dạng:
Trong đó K1 là bản sao khoá đầu tiên của nút trỏ ở b i P1, K2 là khoá đầu tiên của nút trỏ ở b i P2… Cây con trỏ ớ t i bởi P i chứ ựa đ ng tất cả các khóa K:
K i ≤ < K Ki+1 Cây con trỏ ớ t i bởi P0 chỉ chứ ựa đ ng các khoá K K < 1, và cây con trỏ ớ ở t i b i P j chỉ chứ ựa đ ng các khoá K ≥ K j
Nút lá trong cây B+Tree được diễ ản t như sau:
Trong đó D i là dữ ệ li u kết hợp với khoá K i
Thuật toán chèn trong cây B+Tree tương tự như thuật toán chèn trong cây BTree thông thường, tuy nhiên khi một nút đư c tách thành hai thì khoá đợ ầu tiên của nút sau sẽ ợ đư c sao chép lên nút cha
Giải thuật chèn trên cây B+Tree:
Tìm nút lá nơi khoá sẽ được chèn
Chèn khoá và dữ liệu vào ví trí tương ứng trong nút
Trang 35Ch ươ ng 1 Hệ m kiếm th ng tin tr n Internet tì ô ê
Thuật toán xoá trong cây B+Trees dễ hơn r t nhiều so v i thu t toán xoá ấ ớ ậtrên cây BTree Với những đánh giá và phân tích thì thuật toán chèn và xoá trên cây sẽ làm cho các nút luôn luôn chứa kho ng 68% d li u t i đa, và ả ữ ệ ốthậm chí các nút chỉ tự do khi chúng rỗng
Giải thuật xoá trên cây B+Tree:
Tìm nút lá chứa khoá bị xoá
Xoá khoá và d ữ ệ li u c ủ a nó t nút ừ
If ( Nút rỗng sau khi xoá)
Then begin
Giải phóng nút Xoá cặp (K i , P i ) cho nút này trong nút cha
Với những tính ch t cấ ủa mình, cây B+Trees đã trở thành m t c u trúc tối ộ ấ
ưu trong các ứng dụng cơ sở ữ d liệu Điều khi n cây Bể +Tree c ng dũ ễ dàng hơn rất nhi u so với cây BTree, và cũng không khó ề khăn để làm cho các nút
có cùng m t cộ ấp bậc
T ổ ng kết chươ ng
Trong ch ng nươ ày, Luận văn đã ìtr nh bày được những vấn đề đặ t ra ở
đầu chương Đó là đưa ra khái ni m v h tìm kiệ ề ệ ếm thông tin, vai trò của việc
lập chỉ ục dữ liệu trong hệ ố m th ng đó, và nghiên cứu xem cách mà h ệthống
tìm kiếm nổi tiếng Google đã m để ập chỉ ục cho khối lượng dữ liệu là l mkhổng lồ ủ c a chú ng
Ở chương sau, Lu n v n sậ ă ẽ trình bày hai phương pháp để ậ l p chỉ ụ m c tài
liệu, đó là chia sẻ block (shared block) và s d: ử ụng c y Bâ +Tree
Trang 36Chương 2 Các ph ng ph ươ áp lậ p ch m c tài li u trong hệ ỉ ụ ệ tìm ki m th ng tin ế ô
Chương 2
Tóm tắt n i dung c ộ ủ a chương: chương này Lu ậ n văn đề ấ xu t hai
ph ươ ng phá để ậ p l p chỉ ụ m c tài liệu sau:
+ Phương pháp chia sẻ block
+ Ph ng ph ươ á p sử ụng c y B d â + Tree
2.1 Phương pháp chia sẻ block
Phần này Luậ ă ẽn v n s ìtr nh b y l thuy t củà ý ế a phương pháp chia s block ẻ
và cá ách p dụng n trong m t bó ộ ài toán lập chỉ ụ m c tài li u c th ệ ụ ể
2.1.1 Định nghĩa về phương ph p chia sẻ block á
Chia sẻ block là phương pháp m nhiều từà có dùthể ng chung một block,
có kích thước mặ ịc đ nh là 32KB, để ch a các v trí xu t hiện của chúng trong ứ ị ấtài li u Trong tệ ừng block lại được chia ra thành nhiều slot có kích thước khác nhau, tuy nhiên trong m t blocộ k thì chỉ ồ g m các slot có cùng một kích thước
Khi nghiên cứu về ập chỉ ụ l m c tài li u trong hệ tìm kiếm thông tin thì ệcông việc quan trọng hàng đầu là ải tìph m ra phương ph p lưu trữ đểá thể ệ hi n được mối quan h gi a t và v trí xu t hi n c a nó trong tài liệu Nếu công ệ ữ ừ ị ấ ệ ủviệc này thực hiện càng tốt thì chấ ượng ct l ủa chỉ ụ m c tài liệ àng cao, qua u c
đó góp phần quan trọng trong vi c t o nêệ ạ n một hệ tìm kiếm th ng tin hiệu ôquả Trong phương pháp chia sẻ block, m i quan hệ giữ ừố a t và v tr xuị í ấ ệt hi n
của nó trong t i liệu được thể hiện qua sơ đồà sau:
Trang 37Chương 2 Các ph ng ph ươ áp lậ p ch m c tài li u trong hệ ỉ ụ ệ tìm ki m th ng tin ế ô
File quản
lý các block(file PSC)
File chứa bock dữ liệu(file PSB)
File chứa từ(file KEY)
Hình 2.1: Sơ đồ ấ c u trúc các file trong chỉ mục tài liệu
s dử ụng phương pháp chia sẻ block
Trong đó:
+ File chứa c c tá ừ ọ (g à i l file KEY): lưu trữ ấ ả t t c các t c a tài liệu ừ ủđược mang vào để ậ l p ch mục ỉ
+ File ch a cứ ác block dữ liệu (gọi l file PSB): lưu trữ ị trí xu t hià v ấ ện
của các từ trong t i liệà u Do đó file n y c n đư c g i là file ch a v í à ò ợ ọ ứ ịtrxuất hiện củ ừa t
+ File quản lý các block dữ liệu (gọi là file PSC): dùng đ điể ều khiển các block, bằng cách đánh dấu block nào đã được dùng rồi, block nào vẫn chưa đượ ửc s dụng trong file PSB
Phương pháp chia sẻ block được sử ụng khi mà kí d ch thước được d ng ù
để ư l u tr v í ữ ị tr xu t hi n trong tấ ệ ài liệu cho mộ ừt t là ôkh ng qu 32KB (n u á ế
l n hớ ơn k ch thước n y, sẽ ng c y Bí à dù â +Tree để ư l u trữ - vấn đề y sẽ được nà
đề ậ đế ở c p n ph n sau) Vì một block chầ ứa nhiều slot, mỗi slot có kích th c ướ(tính theo byte) là bộ ố ủi s c a 8, nên một block có lthể ưu trữ ị tr xuất hiện v í cho nhiều từ Có thể minh ho ạphương phá ư ữ chia sp l u tr ẻ block qua hình vẽ: