Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 42 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
42
Dung lượng
597,73 KB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ex TRẦN CÔNG CẨN Trần Công Cẩn CHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN KỸ THUẬT TÌM KIẾM DỰA TRÊN TỪ KHÓA TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC CHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN KHÓA 2009 Hà Nội – Năm 2012 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Trần Công Cẩn KỸ THUẬT TÌM KIẾM DỰA TRÊN TỪ KHÓA TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG Chuyên ngành: Công nghệ thông tin LUẬN VĂN THẠC SĨ KHOA HỌC CHUYÊN NGÀNH CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: Tiến sĩ Vũ Tuyết Trinh Hà Nội – Năm 2012 LỜI CAM ĐOAN Tôi cam đoan kết luận văn thực Nếu sai xin chịu hoàn toàn trách nhiệm LỜI CẢM ƠN Đầu tiên, em xin trân trọng cảm ơn quý Thầy giáo, Cô giáo Viện Công nghệ thông tin Truyền thông trường Đại học Bách khoa Hà Nội tận tình dạy dỗ giúp đỡ em trình học cao học Em xin trân trọng cám ơn Ban Giám hiệu trường Đại học Nha Trang tạo điều kiện sở vật chất quản lý chúng em suốt trình học tập trường Em xin đặc biệt gửi lời cám ơn đến tiến sĩ Vũ Tuyết Trinh tận tình hướng dẫn giúp đỡ em hoàn thành luận văn Xin trân trọng cám ơn tiến sĩ Lê Hồng Phương cung cấp thông tin liên quan phân tách từ tiếng Việt vnTokenizer Xin cám ơn Ban Giám đốc Sở Thông tin Truyền thông tỉnh Khánh Hòa quan tâm tạo điều kiện thời gian để thân có điều kiện tham gia học tập hoàn thành luận văn tốt nghiệp Xin cảm ơn bạn bè, đồng nghiệp chia sẻ công việc dành thời gian cho tham gia học tập, nghiên cứu thực luận văn; Cám ơn bạn học lớp trao đổi, chia sẻ kiến thức bổ ích giúp thực luận văn Với nội dung đề tài phong phú, thời gian thực luận văn có hạn nên không tránh khỏi hạn chế, thiếu sót nội dung thực hiện, kính mong quan tâm bảo quý Thầy giáo, Cô giáo bạn đồng nghiệp Hà Nội, ngày 15 tháng 03 năm 2012 Học viên Trần Công Cẩn MỤC LỤC Trang Trang phụ bìa Lời cam đoan Lời cảm ơn Mục lục Danh mục ký hiệu, chữ viết tắt Danh mục thuật ngữ Danh mục hình vẽ, đồ thị MỞ ĐẦU Chương – TỔNG QUAN 1.1 Đặt vấn đề 1.2 Mục đích cách tiếp cận 10 1.3 Nhiệm vụ cụ thể 10 1.4 Bố cục luận văn 10 Chương – CƠ SỞ LÝ THUYẾT HỆ TÌM KIẾM 12 2.1 Hệ tìm kiếm thông tin 12 2.1.1 Mô hình hệ tìm kiếm thông tin 13 2.1.2 Thành phần hệ tìm kiếm thông tin 14 2.2 Hệ tìm kiếm toàn văn hệ quản trị sở liệu quan hệ 20 2.2.1 Kiến trúc hệ tìm kiếm toàn văn 20 2.2.2 Một số hạn chế hệ tìm kiếm toàn văn 23 Chương – KỸ THUẬT TÌM KIẾM DỰA TRÊN TỪ KHÓA TRONG CƠ SỞ DỮ LIỆU QUAN HỆ 24 3.1 Kiến trúc hệ thống 24 3.2 Phân tích truy vấn 25 3.2.1 Bộ Tách từ 25 3.2.2 Bộ Loại bỏ từ dừng 26 3.2.3 Bộ Gán nhãn từ khóa 27 3.3 Bộ Sinh câu lệnh SQL 29 3.3.1 Sinh theo nhãn từ khóa 30 3.3.2 Sinh theo mạng ứng viên 32 3.4 Bộ Xếp hạng kết 33 Chương – ỨNG DỤNG QUẢN LÝ VĂN BẢN CỦA CÁC CƠ QUAN QUẢN 34 LÝ NHÀ NƯỚC TỈNH KHÁNH HÒA 4.1 Nhu cầu thực tế 34 4.2 Thiết kế sở liệu 35 4.3 Tổ chức tìm kiếm 38 Chương – KẾT LUẬN 39 TÀI LIỆU THAM KHẢO 41 Danh mục ký hiệu, chữ viết tắt Ký hiệu Viết đầy đủ diễn giải CSDL CSDLQH Cơ sở liệu Cơ sở liệu quan hệ FTS Full text search: tìm kiếm toàn văn HQTCSDLQH Hệ quản trị sở liệu quan hệ IRS SQL Information retrieval system: Hệ tìm kiếm thông tin Structured query language: ngôn ngữ truy vấn có cấu trúc Danh mục thuật ngữ Ký hiệu FTS Engine FTS Index Index terms Diễn giải Mô-tơ tìm kiếm toàn văn HQTCSDLQH Chỉ mục tài liệu hệ tìm kiếm toàn văn CSDLQH Các từ khóa biểu diễn nội dung tài liệu hệ tìm kiếm thông tin truy vấn freetext Là kiểu tìm kiếm mà người dùng tự nhập vào từ khóa cần tìm, không cần biết thông tin lược đồ sở liêu; gọi truy vấn từ khóa kiểu tự (free form keyword) Hệ tìm kiếm tự chuyển câu truy vấn người dùng sang câu truy vấn SQL để thực tìm kiếm trả kết người dùng Danh mục hình vẽ, đồ thị Trang Hình 2.1.1 Tìm kiếm thông tin 12 Hình 2.1.2 Mô hình hệ tìm kiếm thông tin 13 Hình 2.1.3 Quá trình biểu diễn câu truy vấn 15 Hình 2.1.4 Quá trình biểu diễn tài liệu 17 Hình 2.2.1 Kiến trúc hệ tìm kiếm toàn văn 20 Hình 3.1.1 Kiến trúc hệ tìm kiếm dựa từ khóa CSDLQH 24 Hình 3.2.1 Cấu trúc từ điển khái niệm lược đồ 27 Hình 3.3.1 Lưu đồ sinh câu lệnh SQL 29 Hình 4.1.1 Thiết kế CSDL ứng dụng 35 MỞ ĐẦU Để phát triển đất nước cần tăng cường cải cách hành Nhà nước cách sâu rộng toàn diện, đó, lấy qui trình quản lý chất lượng theo tiêu chuẩn ISO9001:2008 ứng dụng công nghệ thông tin hai công cụ mạnh để phục vụ công tác cải cách hành Từ đó, đẩy mạnh ứng dụng công nghệ thông tin cấp quyền tiến tới xây dựng Chính phủ điện tử trở thành nhiệm vụ cấp thiết quan quản lý Nhà nước Quá trình đẩy mạnh ứng dụng công nghệ thông tin quan quản lý Nhà nước xuất nhiều hệ thống thông tin phục vụ công tác quản lý với số lượng lớn văn bản, tài liệu quản lý liên quan gắn kết với ứng dụng quản lý xây dựng dựa hệ quản trị sở liệu quan hệ Từ thực tế đó, tìm kiếm thông tin trường liệu text (dữ liệu dạng văn bản) sở liệu quan hệ (gọi Tìm kiếm toàn văn – Full text search) yêu cầu thiết mà hệ thống thông tin quản lý cần phải có Qua hoạt động thực tế công tác quản lý Nhà nước lĩnh vực “công nghệ thông tin – điện tử” Sở Thông tin Truyền thông tỉnh Khánh Hòa nhận thấy số ứng dụng xây dựng triển khai chưa hỗ trợ tìm kiếm toàn văn sở liệu quan hệ, gây khó khăn cho người dùng công tác tìm kiếm thông tin, tra cứu văn Vì vậy, bắt đầu theo học chương trình cao học công nghệ thông tin khóa CH2009B trường Đại học Bách khoa Hà Nội tổ chức Đại học Nha Trang, đăng ký thực luận văn tốt nghiệp với đề tài “Kỹ thuật tìm kiếm dựa từ khóa sở liệu ứng dụng” Do thời gian thực luận văn có hạn nên thân không tránh khỏi hạn chế, thiếu sót nội dung thực hiện, kính mong quan tâm bảo quý Thầy giáo, Cô giáo bạn đồng nghiệp Chương TỔNG QUAN 1.1 Đặt vấn đề Trong năm gần đây, với phát triển nhanh chóng ứng dụng công nghệ thông tin, lượng liệu lưu trữ hệ thống máy tính ngày lớn nhu cầu tra cứu, tìm kiếm thông tin lưu trữ máy tính ngày đa dạng Các hệ quản trị sở liệu quan hệ (HQTCSDLQH) xem công cụ phổ biến để quản lý truy vấn liệu có cấu trúc cách hiệu Để phát biểu yêu cầu truy vấn, người dùng phải có hiểu biết đầy đủ lược đồ CSDL cần truy vấn Bộ xử lý truy vấn CSDL cho phép trả lại kết xác, đầy đủ (vét cạn), thứ tự (không phân biệt mức độ quan trọng ghi) Các kỹ thuật xử lý truy vấn thiết kế hiệu với kiểu liệu (text ngắn, số, ngày tháng, ) không hiệu với liệu phức tạp liệu văn Hơn nữa, việc phát biểu điều kiện tìm kiếm trường liệu văn khó khăn thường không hiệu Trong cách tiếp cận khác, hệ tìm kiếm thông tin (information retrieval systems) mô-tơ tìm kiếm web Google, Yahoo, cho phép tìm kiếm hiệu liệu phi cấu trúc văn bản, tài liệu Người dùng phát biểu yêu cầu truy vấn dạng từ khóa tìm kiếm, hệ thống thực đối sánh từ khóa tìm kiếm với nội dung văn bản, tài liệu lưu trữ để trả tài liệu liên quan đến câu truy vấn hiển thị kết xếp theo mức độ “liên quan” tài liệu với câu truy vấn Tích hợp tính hệ tìm kiếm thông tin, số HQTCSDLQH cho phép thực tìm kiếm toàn văn trường liệu văn Tuy nhiên người dùng phải có hiểu biết lược đồ CSDL để phát biểu yêu cầu tìm kiếm toàn văn trường liệu lược đồ Ví dụ sử dụng câu truy vấn SQL (structured query language) thực tìm kiếm toàn văn Microsoft SQL Server 2008 để hiển thị sách (book) mà nội dung (nằm trường liệu text có tên book_content) có chứa từ khóa ‘gift’ với ngôn ngữ thể nội dung tiếng Anh sau: SELECT * FROM dbo.Book b WHERE CONTAINS (b.Book_Content, 'gift', LANGUAGE 1033); Tích hợp cách tiếp cận tìm kiếm từ khóa hệ tìm kiếm thông tin vào HQTCSDLQH cho phép thao tác với liệu có cấu trúc liệu văn cách hiệu thân thiện Người dùng biểu diễn yêu cầu tìm kiếm dạng chuỗi từ khóa tìm kiếm mà không cần biết tới tổ chức liệu (lược đồ liệu) Hệ thống tìm kiếm sở liệu quan hệ (CSDLQH) đặc biệt trường liệu văn để trả ghi phù hợp với yêu cầu tìm kiếm theo thứ tự xác định Trên thực tế, hệ thống thông tin triển khai quan Nhà nước đa phần dựa HQTCSDLQH mà phần lớn dùng Microsoft SQL Server Các ứng dụng điển hình phần mềm “Quản lý đảng viên” triển khai Ban Tổ chức cấp ủy từ Trung ương đến địa phương, phần mềm “Mobile Office” Sở Khoa học Công nghệ tỉnh Đồng Nai triển khai 15 đơn vị hành cấp tỉnh, có Khánh Hòa Nghệ An Đặc điểm hai ứng dụng chưa hỗ trợ tìm kiếm toàn văn Một số ứng dụng khác, “Phần mềm Kiểm tra Đảng” Công ty CMC, hỗ trợ tìm kiếm toàn văn đòi hỏi người dùng biết thông tin lược đồ CSDL để nhập nội dung cần tìm Từ phân tích thực tế ứng dụng nêu trên, cần xây dựng hệ tìm kiếm CSDLQH hỗ trợ người dùng tìm kiếm thuận tiện dễ dàng sử dụng hệ tìm kiếm thông tin, nghĩa không yêu cầu người dùng phải biết thông tin lược đồ CSDL Người dùng tự nhập từ khóa cần tìm kiếm mà không cần quan tâm từ khóa phải tìm kiếm đâu, nghĩa việc tìm kiếm cần “dựa từ khóa” Trong tài liệu này, thống gọi kiểu tìm kiếm “tìm kiếm dựa từ khóa sở liệu quan hệ” chứa mã ngôn ngữ biểu diễn từ dừng Hiện nay, hầu hết HQTCSDLQH hỗ trợ người dùng khai báo từ điển từ dừng Ví dụ: câu truy vấn người dùng gồm từ tiếng Việt “văn_bản chào_giá cạnh_tranh đào_tạo tin_học Trần_Văn_An ký”, “do” từ dừng Câu truy vấn qua Loại bỏ từ dừng lại từ “văn_bản chào_giá cạnh_tranh đào_tạo tin_học Trần_Văn_An ký” 3.2.3 Bộ Gán nhãn từ khóa Đầu vào Gán nhãn từ khóa câu truy vấn người dùng qua xử lý Loại bỏ từ dừng Đầu gán nhãn từ khóa chuyển cho Sinh câu lệnh SQL xử lý Nhiệm vụ Gán nhãn từ khóa gán nhãn cho từ khóa câu truy vấn người dùng schema term hay value term cách dựa vào từ điển khái niệm lược đồ (schema term dictionary) tblSchemaName IDSchemaName (K) colSchemaName (text) colSchemaCat (logic) n n tblSchemaTerm IDSchemaTerm (K) IDSchemaName colSchemaTerm (text) tblSchemaTable IDSchemaTable (K) IDSchemaName colTableName (text) Hình 3.2.1 Cấu trúc từ điển khái niệm lược đồ Hình 3.2.1 trình bày cấu trúc từ điển khái niệm lược đồ gồm bảng quan hệ kiểu - n có cấu trúc sau: - Bảng tblSchemaTerm( IDSchemaTerm, IDSchemaName, colSchemaTerm ): + IDSchemaTerm trường khóa bảng; + colSchemaTerm trường liệu text chứa schema term xuất câu truy vấn người dùng Ví dụ: schema term “ký”, “ký tên”; + IDSchemaName khóa ngoại đến từ bảng tblSchemaName (quan hệ với bảng tblSchemaTerm theo kiểu quan hệ - n) 27 - Bảng tblSchemaName( IDSchemaName, colSchemaName, colSchemaCat ): + IDSchemaName trường khóa bảng; + colSchemaName trường liệu text chứa tên trường tên bảng tương ứng với schema term xuất câu truy vấn người dùng Ví dụ: schema term “ký”, “ký tên” xuất cột colSchemaTerm bảng tblSchemaTerm có chung schema name tương ứng tên trường colNguoi_ky cột colSchemaName bảng tblSchemaName; + colSchemaCat trường liệu kiểu logic, nhận giá trị kiểu tên colSchemaName tương ứng tên trường, nhận giá trị kiểu tên colSchemaName tương ứng tên bảng - Bảng tblSchemaTable( IDSchemaTable, IDSchemaName, colTableName ): + IDSchemaTable trường khóa bảng; + IDSchemaName khóa ngoại đến từ bảng tblSchemaName (quan hệ với bảng tblSchemaTable theo kiểu quan hệ - n) + colTableName trường liệu text chứa tên bảng tương ứng với tên trường bảng tblSchemaName Ví dụ: trường colNguoi_ky bảng tblSchemaName nằm bảng: tblVan_ban tblLy_lich Thuật toán gán nhãn từ khóa sau: - Lần lượt duyệt qua tất từ khóa câu truy vấn, - Ứng với từ khóa câu truy vấn, tìm cột colSchemaTerm bảng tblSchemaTerm xem từ khóa có xuất hay không ? + Nếu từ khóa có xuất cột colSchemaTerm gán nhãn cho schema term ký hiệu “S”, đồng thời ghi nhận tên bảng tên trường liệu tương ứng lấy từ cột colSchemaName bảng tblSchemaName, ghi nhận kiểu schema term trường (nhận giá trị 1) bảng (nhận giá trị 0) Ví dụ: từ khóa “ký” gán nhãn ký(S, colNguoi_ky, 1) Từ khóa “văn bản” gán nhãn văn_bản(S, tblVan_ban, 0) 28 + Ngược lại, từ khóa không xuất cột colSchemaTerm toán tử liên kết tìm kiếm gán nhãn cho value term ký hiệu “V” Ví dụ: từ khóa “đào_tạo” gán nhãn đào_tạo(V) Ví dụ: câu truy vấn qua Loại bỏ từ dừng lại từ “văn_bản chào_giá cạnh_tranh đào_tạo tin_học Trần_Văn_An ký” gán nhãn sau: văn_bản(S, tblVan_ban, 0) về(S, colTrich_yeu, 1) chào_giá(V) cạnh_tranh(V) đào_tạo(V) tin_học(V) Trần_Văn_An(V) ký(S, colNguoi_ky, 1) 3.3 Bộ Sinh câu lệnh SQL Đầu vào Sinh câu lệnh SQL câu truy vấn Q người dùng qua xử lý Gán nhãn từ khóa Nhiệm vụ Sinh câu lệnh SQL dựa vào câu truy vấn người dùng gán nhãn từ khóa để sinh câu lệnh truy vấn SQL, câu lệnh truy vấn qi gán trọng số wi Sau đó, gửi câu lệnh SQL đến HQTCSDLQH thực truy vấn chuyển kết truy vấn, trọng số wi cho Xếp hạng kết tìm kiếm xử lý Gán nhãn từ khóa Câu truy vấn có schmema term ? Sai Đúng Sinh theo nhãn từ khóa Sinh theo mạng ứng viên SQL CSDLQH (qi,wi) Xếp hạng kết Hình 3.3.1 Lưu đồ sinh câu lệnh SQL 29 Hình 3.3.1 trình bày lưu đồ sinh câu lệnh SQL, đó: (1)- Nếu câu truy vấn chứa schema term thực sinh câu lệnh SQL theo nhãn từ khóa trước, sau sinh câu lệnh SQL theo mạng ứng viên (2)- Nếu câu truy vấn không chứa schema term thực sinh câu lệnh SQL theo mạng ứng viên (3)- Truy vấn CSDLQH với câu lệnh SQL sinh ra, chuyển kết tìm kiếm tập trọng số (qi, wi) Xếp hạng kết để xử lý Tham số đầu vào Sinh câu lệnh SQL giá trị M để giới hạn số lượng tối đa câu truy vấn sinh thang trọng số gán cho câu truy vấn Mỗi câu lệnh SQL qi tùy theo mức độ quan trọng mà gán trọng số wi cao hay thấp theo nguyên tắc: - Câu lệnh SQL chứa nhiều schema term đánh trọng số cao hơn, schema điểm mạnh CSDLQH; - Các câu lệnh SQL không chứa schema term, có value term đánh trọng số thấp 3.3.1 Sinh theo nhãn từ khóa Mục đích việc sinh theo nhãn từ khóa sinh câu lệnh SQL có phù hợp với lược đồ CSDL Nguyên tắc sinh câu lệnh truy vấn SQL từ câu truy vấn Q xác định cặp (schema term, value term) (value term, schema term) để viết vào mệnh đề WHERE câu truy vấn SQL Thuật toán sinh theo nhãn từ khóa sau: Bước 1: Lần lượt duyệt từ trái sang phải qua tất từ khóa câu truy vấn Q thực hiện: (1)- Với schema term tên bảng (được gán nhãn S, kiểu 0) tìm xem trước sau có schema term tên trường hay không (được gán nhãn S, kiểu 1), có, gán chung thành nhãn theo cú pháp K1 K2(S, ., 01) với K1 schema term tên bảng, K2 schema term tên trường Ví dụ: văn_bản về(S, tblVan_ban.colTrich_yeu, 01) 30 (2)- Với value term nằm liên tục nhau, nối chúng lại cách bỏ khoảng trắng chúng để xem chúng value term Ví dụ: chào_giá(V)cạnh_tranh(V)đào_tạo(V)tin_học(V) Sau xử lý bước có kết câu truy vấn Q1 Ví dụ: câu truy vấn người dùng qua Gán nhãn từ khóa có kết Q= = văn_bản(S, tblVan_ban, 0) về(S, colTrich_yeu, 1) chào_giá(V) cạnh_tranh(V) đào_tạo(V) tin_học(V) Trần_Văn_An(V) ký(S, colNguoi_ky, 1), qua xử lý bước có kết Q1 = văn_bản về(S, tblVan_ban.colTrich_yeu, 01) chào_giá(V)cạnh_tranh(V)đào_tạo(V)tin_học(V)Trần_Văn_An(V) ký(S, colNguoi_ky, 1) Bước 2: Duyệt từ trái sang phải Q1, gán si = 0, vi = thực hiện: - Nếu gặp schema term tăng si lên ký hiệu cho schema term Ssi - Nếu gặp schema term tăng vi lên ký hiệu cho schema term Svi Sau xử lý bước có kết câu truy vấn Q2 Ví dụ: Câu truy vấn Q1 = văn_bản về(S, tblVan_ban.colTrich_yeu, 01) chào_giá(V)cạnh_tranh(V)đào_tạo(V)tin_học(V)Trần_Văn_An(V) ký(S, colNguoi_ky, 1) qua xử lý bước cho Q2 = S1 V1 S2 với giá trị si = vi = Bước 3: Xét Q2: - Nếu si = vi số lượng schema term schema value Q2 nhau, có schema term tương ứng với value term Việc sinh câu lệnh SQL với trường hợp đơn giản, cần duyệt từ trái sang phải, gặp cặp SiVi ViSi gán cho chúng cặp - Nếu si ≠ vi sử dụng công cụ Automate để “nhận biết dịch” Ví dụ: từ câu truy vấn Q2 = S1 V1 S2 ví dụ viết nhiều câu lệnh SQL, có câu lệnh sau: SELECT * FROM tblVan_ban b WHERE CONTAINS(b.colTrich_yeu, ‘chào_giá AND cạnh_tranh AND đào_tạo AND tin_học’) AND CONTAINS(b.colNguoi_ky, ‘Trần_Văn_An’) 31 3.3.2 Sinh theo mạng ứng viên a) Nguyên tắc mạng ứng viên Kỹ thuật Sinh theo mạng ứng viên xem câu truy vấn đầu vào Q = k1, k2, , km (gồm m từ khóa) thuộc loại value term Giả sử sở liệu có n quan hệ R1, R2, Rn Để sinh mạng ứng viên, trước tiên hệ thống tiến hành tìm tất tập (records) có chứa từ khóa truy vấn trường liệu text ký hiệu RiQ tập không chứa từ khóa truy vấn ký hiệu Ri{} (gọi tập tự do) Mỗi tập RiQ chứa nhiều trường liệu text tạo lập IR Index Dựa FTS Engine HQTCSDLQH mà hệ thống tính điểm cụ thể cho xếp chúng theo thứ tự giản dần điểm số Đầu vào để sinh theo mạng ứng viên gồm tập {RiQ}, lược đồ CSDLQH tham số MG để giới hạn kích thước mạng ứng viên sinh Mạng ứng viên biểu thức kết nối sử dụng để tạo coi câu trả lời tiềm cho câu truy vấn Một mạng ứng viên biểu thức kết nối để kết nối tập dựa mối quan hệ CSDLQH Một quan hệ Ri xuất mạng ứng viên với vai trò tập tự Ri{} Về mặt trực quan, tập tự mạng ứng viên xuất từ khoá câu truy vấn, giúp "kết nối" (thông qua liên kết khóa ngoại) tập không tự (có điểm số khác không với câu truy vấn) Mỗi kết T mạng ứng viên kết tiềm câu truy vấn từ khoá Cây T thuộc mạng ứng viên C có sơ đồ đẳng cấu h từ T đến tập C b) Ưu, nhược điểm kỹ thuật dùng mạng ứng viên - Ưu điểm: Khái niệm mạng ứng viên giới thiệu DBXplorer [2] (DBXplorer đề cập đến mạng ứng viên "các kết nối") DISCOVER[3] DISCOVER DBXplorer yêu cầu câu trả lời truy vấn phải chứa tất từ khóa câu truy vấn Để sinh tất câu trả lời cho câu truy vấn với ngữ nghĩa AND, hệ thống tạo nhiều tập cho quan hệ 32 CSDLQH Cụ thể, tập riêng biệt tạo cho kết hợp từ khóa Q quan hệ Điều thường dẫn đến số lượng mạng ứng viên tăng theo hàm mũ kích thước câu truy vấn, từ tạo phí thực cao cho câu truy vấn với từ khóa với giá trị MG lớn Ngược lại, cần tạo tập đơn giản RQ cho quan hệ R nêu Với truy vấn ngữ nghĩa AND, bước kiểm tra trước để đảm bảo nhận có chứa tất từ khoá câu truy vấn Đặc trưng hệ thống dẫn đến tốc độ xử lý tăng lên đáng kể, cho phép xử lý câu truy vấn lớn với mạng ứng viên lớn - Nhược điểm: Việc sinh theo mạng ứng viên xem vai trò từ khóa câu truy vấn mặt vị trí, thứ tự xuất hiện, không phân biệt từ khóa loại schema term hay value term, vậy, ảnh hưởng lớn đến chất lượng kết truy vấn 3.4 Bộ Xếp hạng kết Bộ Sinh câu lệnh SQL gán cho câu truy vấn qi trọng số wi để “mức độ quan trọng” tập câu truy vấn Bộ Xếp hạng kết nhận kết truy vấn CSDLQH từ Sinh câu lệnh SQL cặp đánh giá trọng số (qi, wi) tương ứng Bộ Xếp hạng kết nhân điểm số FTS Engine trả cho kết truy vấn với trọng số wi tương ứng thực xếp hạng kết dựa điểm số 33 Chương ỨNG DỤNG QUẢN LÝ VĂN BẢN CỦA CÁC CƠ QUAN QUẢN LÝ NHÀ NƯỚC TỈNH KHÁNH HÒA Trên sở thiết kế hệ tìm kiếm dựa từ khóa CSDLQH chương 3, chương trình bày việc áp dụng thiết kế vào ứng dụng minh họa “Quản lý văn quan quản lý Nhà nước tỉnh Khánh Hòa” đặt địa http://search.ict-khanhhoa.vn 4.1 Nhu cầu thực tế Bộ Thông tin Truyền thông (Bộ TTvTT) ban hành tiêu chuẩn phần mềm Quản lý văn điều hành (QLVBvĐH) quan quản lý Nhà nước (CQQLNN) vào ngày 27/5/2008, nhiên thực trạng địa bàn tỉnh Khánh Hòa sau: (1) Khoảng 30% CQQLNN triển khai phần mềm QLVBvĐH (phần mềm Mobile Office Sở Khoa học Công nghệ tỉnh Đồng Nai, phần mềm “Ba phần mềm dùng chung” từ Đề án 112): - Các phần mềm có trước thời điểm Bộ TTvTT ban hành tiêu chuẩn phần mềm QLVBvĐH chưa hỗ trợ tìm kiếm toàn văn (full text search); - Chưa thống phần mềm dùng chung cho tỉnh: Một số đơn vị cho phần mềm tốt, số đơn vị khác lại cho phần mềm tốt hơn; - Tồn sản phẩm phần mềm công ty khác quan này; thời gian tới, có nhiều sản phẩm; - Các sản phẩm phần mềm khác chưa thể gửi/nhận văn với dẫn đến quan “cát cứ” thông tin riêng đơn vị khác tra cứu, khai thác, tìm kiến thông tin (2) Khoảng 70% quan quản lý chưa triển khai phần mềm QLVBvĐH nên việc gửi/nhận văn thực theo cách thủ công truyền thống văn giấy, không gửi văn điện tử cho (3) 99% văn quan quản lý Nhà nước không chứa nội dung mật (4) Việc tìm kiếm, tra cứu, thống kê, phân loại văn dựa văn giấy khó khăn, tốn nhiều thời gian nên chưa đáp ứng yêu cầu công việc 34 Từ thực trạng nêu hình thành nhu cầu xây dựng hệ thống Quản lý văn CQQLNN tỉnh Khánh Hòa với yêu cầu sau: - Làm đầu mối trung tâm để CQQLNN địa bàn tỉnh gửi/nhận văn không chứa nội dung mật với Mỗi đơn vị từ cấp tỉnh đến cấp huyện, cấp xã có tài khoản giành cho “văn thư” để tiếp nhận văn đến, nhập văn cần gửi đi; - Làm đầu mối trung tâm để người sử dụng tìm kiếm văn từ văn đơn vị đơn vị khác cập nhật vào phần mềm nhằm chia văn đơn vị, tránh tình trạng “cát cứ” thông tin Trong khuôn khổ luận văn, tập trung vào hai việc chính: (1) nhập văn cần gửi, tiếp nhận văn đến cách đăng nhập trực tiếp vào hệ thống (2) xây dựng công cụ tìm kiếm văn bản; Các nội dung khác tích hợp việc gửi/nhận văn với hệ thống phần mềm QLVBvĐH khác, thống kê, báo cáo, theo dõi tình trạng văn định hướng để mở rộng ứng dụng 4.2 Thiết kế sở liệu Cơ_Quan MaCQ (ID) TenCQ DiaChi DienThoai text(9) text(50) text(50) text(20) Nơi_nhận MaCQ (FK) MaVB (FK) TenCQ NgayGui NgayNhan NguoiNhan text(9) text(20) Text(50) date() date() text(11) Người_dùng n MaNSD (ID) text(11) MaCQ (FK) text(9) TenNSD text(30) ChucVu text(40) MatKhau text(20) NgayTao date() Văn_Bản n MaVB (ID) MaCQ (FK) TenCQ SoVB KyHieuVB SoTrang NgayKy NguoiKy TheLoai TrichYeu TomTatND 1 n n BPSoan TenFile NguoiNhap n text(21) text(9) text(50) text(4) text(15) Number(int) date() text(30) text(25) text(200) Nvarchar(max ) text(30) text(100) text(11) n Hình 4.1.1 Thiết kế CSDL ứng dụng 35 Hình 4.1.1 trình bày thiết kế CSDL ứng dụng gồm bảng với thuộc tính quan hệ bảng a) Bảng liệu “Cơ quan” ban hành văn bản, tiếp nhận văn bảng “Cơ_Quan” Tên trường kiểu (độ dài) Diễn giải Mã quan MaCQ (ID) text(9) TenCQ text(50) Tên quan DiaChi text(50) Địa quan DienThoai text(20) Điện thoại văn thư Mã quan gồm ký tự, phân thành nhóm, nhóm ký tự: - Nhóm 1, gồm ký tự, mã hóa cấp bộ/cấp tỉnh tương đương, ví dụ: BTT (Bộ Thông tin Truyền thông), BTC (Bộ Tài chính), KHA (tỉnh Khánh hòa); - Nhóm 2, gồm ký tự, mã hóa cấp trực thuộc thứ 2, ví dụ: BTTVTC (Bộ Thông tin Truyền thông, Vụ Tài chính), KHAUBN (tỉnh Khánh Hòa, UBND tỉnh), KHASTT (tỉnh Khánh Hòa, Sở Thông tin Truyền thông), KHANTG (tỉnh Khánh Hòa, thành phố Nha Trang); - Nhóm 3, gồm ký tự, mã hóa cấp trực thuộc thứ 3, ví dụ: KHANTGUBN (tỉnh Khánh Hòa, Nha Trang, UBND thành phố), KHANTGPTN (tỉnh Khánh Hòa, Nha Trang, Phòng Tài nguyên); KHANTGXVL (tỉnh Khánh Hòa, Nha Trang, xã Vĩnh Lương, với X ký hiệu cho cấp xã/phường) - Những đơn vị mã cấp trực thuộc cấp 2, cấp thay dấu trừ “-”, ví dụ: BTT (Bộ Thông tin Truyền thông), KHASTT - (tỉnh Khánh Hòa, Sở Thông tin Truyền thông) b) Bảng liệu “Người dùng” hệ thống Bảng “Người_dùng” Tên trường kiểu (độ dài) Diễn giải Mã người sử dụng, UserName để đăng nhập MaNSD (ID) text(11) MaCQ (FK) text(9) Mã quan người dùng TenNSD text(30) Họ tên người sử dụng ChucVu text(40) Chức vụ, chức danh người sử dụng, thường văn thư MatKhau text(20) Mật đăng nhập NgayTao date() Ngày tạo lập tài khoản 36 Mã người sử dụng gồm 11 ký tự, đó, ký tự đầu mã quan mà họ trực thuộc, ký tự để mã hóa cho người sử dụng văn thư, ví dụ: KHASTT V1: mã cán văn thư thứ Sở Thông tin Truyền thông (STT) tỉnh Khánh Hòa (KHA); tương tự vậy, KHASTT -V2 mã cán văn thư thứ c) Bảng liệu “Nơi nhận” văn Bảng “Nơi_nhận” Tên trường kiểu (độ dài) Diễn giải Mã quan tiếp nhận văn MaCQ (FK) text(9) Mã văn MaVB (FK) text(21) TenCQ Text(50) Tên quan tiếp nhận văn (chấp nhận dư thừa) NgayGui date() Ngày gửi văn NgayNhan date() Ngày tiếp nhận văn bản, mặc định ngày 11/11/1111 NguoiNhan text(11) Mã người tiếp nhận văn bản, mặc định ‘ -’ Trường MaVB gồm 21 ký tự: - ký tự đầu mã quan ban hành văn (ví dụ: KHASTT -), - ký tự năm ban hành (ví dụ: 2011), lấy theo ngày ký văn bản, - ký tự mã loại văn (ví dụ: TTr-, BC , TTLT), - ký tự số hiệu văn bản, thêm số phía trước để có đủ ký tự (ví dụ: 0012), - Ví dụ: MaVB = KHASTT -2011TTr0012: văn có số hiệu 0012, thể loại Tờ trình (TTr), ban hành năm 2011 Sở Thông tin Truyền thông (STT) tỉnh Khánh Hòa (KHA) Một văn gửi đến nhiều quan, khóa bảng kết hợp trường MaCQ MaVB Trường NgayNhan có giá trị mặc định 11/11/1111, trường NguoiNhan có giá trị mặc định ’ -’ (11 dấu trừ) nghĩa quan chưa tiếp nhận văn Khi văn thư tiếp nhận văn NgayNhan = today(), NguoiNhan = mã cán văn thư thực thao tác tiếp nhận văn Trường TenCQ (chấp nhận dư thừa liệu) nhằm giảm truy vấn CSDL để lấy tên quan từ MaCQ thao tác liệu liên quan 37 d) Bảng liệu “Văn bản” Văn_Bản Mã văn MaVB (ID) text(21) MaCQ (FK) text(9) Mã quan ban hành TenCQ text(50) Tên quan ban hành SoVB text(4) Số văn bản, ví dụ: 0012 KyHieuVB text(15) Ký hiệu văn bản, ví dụ: /TTr-STTTT SoTrang Number(int) Số trang A4 văn bản, ví dụ: NgayKy date() Ngày ký NguoiKy text(30) Họ tên người ký TheLoai text(25) Thể loại văn bản, ví dụ: Tờ trình, Quyết định, TrichYeu text(200) Trích yếu nội dung văn TomTatND Nvarchar(max) Tóm tắt nội dung văn (SQL2008 cho lưu gần 2GB) BPSoan text(30) Họ tên người, phận soạn thảo văn TenFile text(100) Thư mục lưu trữ tên file văn (thường MaVB) NguoiNhap text(11) Mã cán văn thư tiếp nhận văn - Trường MaCQ: chọn từ bảng “Cơ_quan” Sau chọn MaCQ tên quan cập nhật vào trường TenCQ (của bảng “Cơ_quan”) để giảm truy vấn hiển thị tên quan (chấp nhận dư thừa liệu) - Trường NguoiKy: Người dùng nhập trực tiếp - Trường TenFile: Bao gồm đường dẫn thư mục tên file chứa nội dung văn Mặc định lấy MaVB làm tên file văn thư mục lưu trữ mặc định máy chủ D:\VanBan\MaCQ\NămBanHành\, ví dụ: + D:\VanBan\KHASTT -\2010: Thư mục lưu trữ văn phát hành năm 2010 Sở Thông tin Truyền thông (STT) tỉnh Khánh Hòa (KHA); + D:\VanBan\KHASTT -\2011: Thư mục lưu trữ văn phát hành năm 2011 Sở Thông tin Truyền thông (STT) tỉnh Khánh Hòa (KHA) 4.3 Tổ chức tìm kiếm Trường TomTatND (tóm tắt nội dung) bảng Văn_bản kết hợp nội dung text phục vụ tìm kiếm từ trường TenCQ (tên quan), SoVB (số văn bản), KyHieuVB (ký hiệu văn bản), Nguoi_ky (người ký), The_loai (thể loại), Trich_Yeu (trích yếu) nội dung văn Trường thực phân tách từ tiếng Việt công cụ vnTokenize, loại bỏ từ dừng tạo FTS Index để phục vụ tìm kiếm 38 Chương KẾT LUẬN Tìm kiếm toàn văn HQTCSDLQH yêu cầu người dùng biết thông tin lược đồ CSDL Để giúp người dùng tìm kiếm thông tin CSDLQH thuận tiện hiệu sử dụng hệ tìm kiếm thông tin, luận văn tìm hiểu, triển khai kỹ thuật tìm kiếm thông tin, tìm kiếm từ khóa CSDLQH ứng dụng kỹ thuật liên quan hệ thống quản lý văn quan quản lý Nhà nước tỉnh Khánh Hòa Cách tiếp cận luận văn sử dụng HQTCSDLQH thương mại (như Microsoft SQL Server 2008) xây dựng phần mềm trung gian (middleware) để cung cấp khả tìm kiếm dựa từ khóa CSDLQH Với middleware này, người dùng phát biểu câu truy vấn dạng chuỗi từ khóa, middleware nhận câu truy vấn viết lại thành câu lệnh SQL, gửi đến HQTCSDLQH để thực thi nhận kết truy vấn trả từ HQTCSDLQH, thực xử lý kết trước trả người dùng Luận văn thực nội dung sau: - Tìm hiểu hệ tìm kiếm thông tin; - Tìm hiểu hệ tìm kiếm toàn văn HQTCSDLQH; - Đề xuất kiến trúc hệ thống tìm kiếm dựa từ khóa CSDLQH dựa cách tiếp cận lựa chọn cách thiết kế middleware; - Xây dựng ứng dụng minh họa “Quản lý văn quan quản lý Nhà nước tỉnh Khánh Hòa” Tuy nhiên, thời gian thực luận văn có hạn nên việc xây dựng ứng dụng minh họa “Quản lý văn quan quản lý Nhà nước tỉnh Khánh Hòa” mức đơn giản, chưa triển khai đầy đủ tính middleware theo thiết kế Ứng dụng minh họa tập trung chủ yếu vào phần tìm kiếm thông tin, thời gian tới cần thực đầy đủ tính cần có hệ thống QLVBvĐH theo tiêu chuẩn Bộ TTvTT 39 Ở giác độ khác, xem xét câu truy vấn người dùng, middleware chưa sâu xem xét mặt ngữ nghĩa từ khóa Ví dụ: từ khóa “ký”, “ký tên”, “đứng tên” dự đoán schema term dự đoán tên người ký value term nằm trước từ khóa Trong đó, từ khóa “ký bởi” dự đoán schema term tên người ký value term nằm sau từ khóa Ngoài ra, để cải thiện kết tìm kiếm, sử dụng phương pháp trích rút thông tin để trích chọn thực thể câu truy vấn người dùng tên người, tên địa danh, tên phương tiện, từ dự đoán ngữ nghĩa tương ứng thuộc trường thông tin CSDLQH Ví dụ: câu truy vấn có đoạn “ tên sinh viên Trần Văn An ” “Trần Văn An” thực thể tên người, “sinh viên” dự đoán bảng thông tin sinh viên (tblSinh_vien chẳng hạn) “tên” lúc dự đoán tên trường bảng sinh viên, viết truy vấn theo dạng: CONTAINS (tblSinh_vien.colHo_ten, ‘Trần Văn An’) hay tblSinh_vien.colHo_ten = ‘Trần Văn An’ Vì việc mở rộng luận văn xem xét hướng kết hợp kỹ thuật “trích chọn thực thể” để cải thiện kết tìm kiếm thông tin viết lại câu truy vấn người dùng thành câu lệnh SQL 40 TÀI LIỆU THAM KHẢO [1] Gaurav Bhalotia, Arvind Hulgeri, Charuta Nakhey, Soumen Chakrabarti, S Sudarshan (2002), Keyword Searching and Browsing in Databases using BANKS, in Proceedings of ICDE 2002: 431-440; [2] S Agrawal, S.Chaudhuri, and G.Das DBXplorer (2002), A system for keywordbased search over relational databases, in Proceedings of the 18th International Conference on Data Engineering, San Jose, CA, April 2002; [3] V Hristidis and Y Papakonstantinou Discover (2002), Keyword search in relational databases, in Proceedings of VLDB 2002; [10] V Hristidis and Y Papakonstantinou DISCOVER: Keyword search in relational databases VLDB 2002 [4] Sanjay Agrawal, Surajit Chaudhuri, Gautam Das, Aristides Gionis (2003), Automated Ranking of Database Query Results, in Proceedings of CIDR 2003; [5] Vagelis Hristidis, Luis Gravano, Yannis Papakonstantinou (2003), Efficient IRStyle Keyword Search over Relational Databases, in Proceedings of VLDB 2003: 850-861; [6] E M Voorhees (2000) Overview of the TREC-9 Question Answering Track TREC 2000 [7] A Singhal (2001), Modern information retrieval, a brief overview IEEE Data Engineering Bulletin, Special Issue on Text and Databases, 24(4), Dec 2001 [8] G Salton and M McGill (1983) Introduction to Modern Information Retrieval McGraw-Hill, 1983 [9] A Singhal, Chris Buckley, Mandar Mitra: Pivoted Document Length Normalization SIGIR 1996 [10] S Liu, F Liu, C T Yu, Weiyi Meng (2004), An effective approach to document retrieval via utilizing WordNet and recognizing phrases [11] L Page, S Brin, R Motwani and T Winograd (1998), The PageRank Citation Ranking: Bringing Order to the Web, Technical Report 41 ... tự nhập từ khóa cần tìm kiếm mà không cần quan tâm từ khóa phải tìm kiếm đâu, nghĩa việc tìm kiếm cần dựa từ khóa Trong tài liệu này, thống gọi kiểu tìm kiếm tìm kiếm dựa từ khóa sở liệu quan... dung: Chương – Cơ sở lý thuyết hệ tìm kiếm Chương trình bày sở lý thuyết tìm kiếm dựa từ khóa cho tài liệu sở liệu quan hệ Chương – Kỹ thuật tìm kiếm dựa từ khóa sở liệu quan hệ Trong chương này,... quản trị sở liệu quan hệ 20 2.2.1 Kiến trúc hệ tìm kiếm toàn văn 20 2.2.2 Một số hạn chế hệ tìm kiếm toàn văn 23 Chương – KỸ THUẬT TÌM KIẾM DỰA TRÊN TỪ KHÓA TRONG CƠ SỞ DỮ LIỆU