4 Chương : XỬ LÝ NGÔN NGỮ VÀ TRA TỪ ĐIỂN
4.1.2.3 Tổ chức băm tập tin chỉ mục
Việc băm tập tin chỉ mục là nhằm mục đích thu nhỏ phạm vi tìm kiếm. Tiêu chí chọn hàm băm trong bài toán xây dựng từ điển được đề nghị theo thứ tựưu tiên tăng dần trong luận văn này là:
• Sau khi băm, nếu lần lượt gộp các cụm mẫu tin chỉ mục lại thì kết quả phải là tập tin chỉ mục có thứ tự ban đầu.
• Việc tính toán cho hàm băm phải nhanh.
• Ít xảy ra đụng độ (giới hạn tốt không gian tìm kiếm).
• Các khoá được phân bốđều trong bảng băm.
Do tập tin chỉ mục của ta được tổ chức thành các mẫu tin tăng dần theo bảng chữ cái nên ta sẽ băm theo các chữ cái đầu của từ. Như vậy theo cách này, hàm băm của ta có thể đảm bảo được hai tiêu chí đầu tiên đã đề ra. Ta có thể băm một hay nhiều cấp tương ứng với một hay nhiều ký tựđầu của từđể có thểđáp ứng được hai tiêu chí còn lại.
Ø Bảng băm cấp một: Các từ có cùng một ký tựđầu tiên sẽ thuộc một cụm. Phạm vi tìm kiếm vẫn còn rất lớn, điều này sẽ gây cảm giác ứng dụng chạy chậm, ta cần phải phân hoạch nhỏ hơn nữa.
Ø Bảng băm cấp hai: Các từ có cùng hai ký tựđầu tiên sẽ thuộc một cụm. So với băm cấp một, phạm vi tìm kiếm đã giảm đáng kể. Tuy nhiên vẫn có thể gây cảm giác chậm đối với người dùng khó tính.
Ø Bảng băm cấp ba: Các từ có cùng ba ký tựđầu tiên sẽ thuộc một cụm. So với băm cấp một và hai, phạm vi tìm kiếm đã giảm đi rất nhiều, không còn làm chậm ứng dụng.
Ø Bảng băm cấp bốn: Các từ có cùng bốn ký tựđầu tiên sẽ thuộc một cụm. Khi tiến hành băm theo cách này, tập tin chỉ mục sẽ bị chia quá vụn, kích thước bộ nhớ bị chiếm dụng bởi bảng băm sẽ gia tăng, điều này không cần thiết vì băm cấp ba đã dung hòa được kích thước bộ nhớ và thời gian nạp từ.
Như vậy, việc băm cấp một và cấp hai gây ra cảm giác ứng dụng chạy chậm khi nạp từ. Việc băm cấp bốn sẽ chia quá vụn tập tin chỉ mục và gia tăng kích thước bộ nhớ bị chiếm vụng một cách không cần thiết. Ta chỉ có thể băm cấp ba để có thể
dung hoà đượcthời gian nạp từ và kích thước bộ nhớ bị chiếm dụng [2].