TìmkiếmvănbảncủaDB2,Phần1:Tìmkiếmtoànvănbản
Tìm kiếmvănbảncủa DB2 là một thành phần tích hợp của DB2 9.5 và do máy chủ IBM
OmniFind™ Text Search (Tìm kiếmvănbản OmniFind của IBM) cung cấp. Nó cung cấp các
tính năng sau đây:
Tìmkiếmtoànvănbản trong các tài liệu văn bản, HTML và XML, gồm cả tìmkiếm theo
logic Bun (Boolean) và ký tự đại diện.
Hỗ trợ SQL, SQL/XML và Xquery tích hợp đầy đủ, gồm cả tập con cú pháp XPath để
tìm kiếm các tài liệu XML.
Xử lý ngôn ngữ với định nghĩa các từ đồng nghĩa tùy chọn.
Cập nhật chỉ mục không đồng bộ với tùy chọn lập lịch biểu.
Hướng dẫn này trình bày cách sử dụng các tính năng cơ bản trong Tìmkiếmvănbảncủa DB2 để
tìm kiếm trong các tài liệu vănbản thuần và các tài liệu XML được lưu trữ trong cơ sở dữ liệu và
hướng dẫn bạn qua các nhiệm vụ sau đây:
Chuẩn bị thiết lập cơ sở dữ liệu.
Tạo các chỉ mục tìm kiếm-văn bản cho các tài liệu dữ liệu vănbản và các tài liệu XML.
Điền các chỉ mục tìm kiếm-văn bản.
Tìmkiếm trong vănbản thuần.
Xác định mối liên quan trong các kết quả.
Tìmkiếm trong các tài liệu XML.
Cập nhật các chỉ mục tìm kiếm-văn bản.
Kết thúc công việc.
Về đầu trang
Các yêu cầu và các điều kiện tiên quyết về hệ thống
Để hoàn thành các bước sau, ít nhất là bạn phải có bản vá lỗi 1 (Fix Pack 1), phiên bản DB2 9.5
cho Linux, UNIX và Windows đã cài đặt trên hệ thống. Lưu ý rằng bạn không thể sử dụng Tìm
kiếm vănbảncủa DB2 trong một môi trường cơ sở dữ liệu phân vùng trên một cá thể DB2 có
nhiều phân vùng.
Để đi qua hết hướng dẫn này khi sử dụng cách tiếp cận theo từng bước một, có thể thực hiện các
lệnh như các lệnh tương tác CLP (Bộ xử lý dòng lệnh) của DB2 khi sử dụng lệnh db2 -t. Các
lệnh quản trị chỉ mục tìmkiếmvănbản db2ts phải được chạy tại dấu nhắc của hệ điều hành.
Tuy nhiên, các lệnh này có thể được thực hiện trong cùng một cửa sổ bằng cách sử dụng lệnh
shell (!). Trong chế độ này, mọi câu lệnh cũng sẽ phải sử dụng ký tự kết thúc câu lệnh — là một
dấu chấm phẩy (;).
Để chạy các ví dụ trong bài này, hãy chắc chắn rằng bạn có quyền hạn DBADM trên máy chủ cơ
sở dữ liệu DB2 mà bạn muốn sử dụng. Nếu bạn tạo ra cơ sở dữ liệu như được mô tả trong phần
tiếp theo, quyền hạn này được gán tự động. Quyền hạn DBADM là cần thiết để quản lý các dịch
vụ cá thể tìm kiếm-văn bản và để tạo và sửa đổi cơ sở dữ liệu được sử dụng trong các ví dụ
Các bước thiết lập một cơ sở dữ liệu thử nghiệm
1. Quy định cơ sở dữ liệu mặc định. Tìmkiếmvănbảncủa DB2 cung cấp tùy chọn để thiết
lập một biến môi trường quy định cơ sở dữ liệu nên được sử dụng cho các lệnh quản trị
chỉ mục tìm kiếm-văn bản. Nếu các quyền hạn cần thiết của người dùng có sẵn để sử
dụng, bạn có thể ban hành lệnh db2ts mà không cần chỉ rõ một mệnh đề connection (kết
nối). Có thể thiết lập biến môi trường như sau:
Liệt kê 1. Thiết lập DB2DBDFT để xác định cơ sở dữ liệu mặc định
Linux/UNIX (ksh):
export DB2DBDFT=mytstest
Windows:
SET DB2DBDFT=mytstest
2. Tạo một cơ sở dữ liệu. Trong bước này, tạo ra một cơ sở dữ liệu, thích hợp để lưu trữ các
tài liệu XML. Hãy ban hành lệnh sau tại dấu nhắc lệnh CLP của DB2:
Liệt kê 2. Lệnh để tạo cơ sở dữ liệu
CREATE DATABASE mytstest USING CODESET UTF-8
TERRITORY US
3. Khởi động các dịch vụ cá thể tìm kiếm-văn bản. Để khởi động các dịch vụ cá thể tìm
kiếm-văn bản, hãy sử dụng lệnh sau:
Liệt kê 3. Lệnh để khởi động các dịch vụ cá thể tìm kiếm-văn bản
db2ts "START FOR TEXT"
Trên các hệ điều hành Linux và UNIX, lệnh này khởi động một trình tiện ích (daemon).
Trình tiện ích này điều khiển lập lịch biểu các cập nhật chỉ mục tìm kiếm-văn bản trên
máy chủ cơ sở dữ liệu DB2. Máy chủ tìmkiếmvănbản cũng được khởi động và chạy
như một quá trình độc lập. Hãy khởi động trình tiện ích (daemon) và máy chủ tìmkiếm
văn bản dưới tên ủy quyền của chủ sở hữu cá thể DB2.
Trên các hệ điều hành Windows, lệnh này khởi động dịch vụ DB2TS. Dịch vụ DB2TS
khởi động máy chủ tìmkiếmvănbản và từ đó điều khiển lập lịch biểu các cập nhật chỉ
mục tìm kiếm-văn bản. Người dùng đang chạy lệnh này phải đáp ứng các yêu cầu của
Windows về khởi động một dịch vụ.
4. Kích hoạt cơ sở dữ liệu để tìmkiếmvăn bản. Tìmkiếmvănbảncủa DB2 quản lý thông
tin về các chỉ mục tìm kiếm-văn bản để hỗ trợ các nhiệm vụ quản trị như các cập nhật chỉ
mục hoặc tình trạng thu thập dữ liệu. Việc kích hoạt cơ sở dữ liệu sẽ tạo ra các bảng và
các khung nhìn hệ thống có chứa thông tin này.
Liệt kê 4. Lệnh để chạy cơ sở dữ liệu cho việc tìmkiếmvănbản
db2ts "ENABLE DATABASE FOR TEXT"
Lưu ý rằng nếu DB2DBDFT chưa được thiết lập, các lệnh kích hoạt cần kèm theo thông
tin kết nối, như hiển thị trong ví dụ sau đây:
Liệt kê 5. Lệnh để kích hoạt cơ sở dữ liệu cho vănbản có thông tin kết nối cụ thể
db2ts "ENABLE DATABASE FOR TEXT CONNECT TO mytstest USER db2admin USING
mypswd"
5. Kết nối tới cơ sở dữ liệu mytstest:
Liệt kê 6. Kết nối tới cơ sở dữ liệu mytstest
CONNECT TO mytstest
6. Tạo và điền vào một bảng:
Liệt kê 7. Bảng books
CREATE TABLE books ( isbn VARCHAR(18) NOT NULL PRIMARY KEY,
author VARCHAR(30),
title VARCHAR(128),
year INTEGER,
bookinfo XML)
Lưu ý rằng để kích hoạt việc tạo các chỉ mục tìm kiếm-văn bản và chạy các truy vấntìm
kiếm-văn bản, cần phải quy định một khóa chính cho bảng dữ liệu.
7. Chèn dữ liệu sau đây vào bảng books:
Liệt kê 8. Chèn dữ liệu vào bảng books
INSERT INTO books VALUES
('123-014014014', 'Joe Climber', 'Climber''s Mountain Tops', 1995,
XMLPARSE(DOCUMENT
'<bookinfo>
<author>Joe Climber</author>
<title>Climber''s Mountain Tops</title>
<story>This vivid description of Joe Climber''s experiences
when tackling the mountains of his native Mountainland lets you
hold your breath when you follow Joe on his adventures in the
regions where the air is thin and the weather is treacherous.
Includes beautiful color photos of Mountainland''s mountain
ranges.
</story>
<year>1995</year>
<price>16.00</price>
<pages>176</pages>
</bookinfo>'))
INSERT INTO books VALUES
('678-014014078', 'Joe Smith', 'The Range', 1991,
XMLPARSE(DOCUMENT
'<bookinfo>
<author>Joe Smith</author>
<title>The Range</title>
<story>All you need to know about kitchen ranges. A pictured
description based on the most recent ergonomics studies for
everybody who is involved in food preparation in the home.
</story>
<year>1991</year>
<price>6.00</price>
<pages>76</pages>
</bookinfo>'))
INSERT INTO books VALUES
('111-223334444', 'Sam Climber', 'Top of the Mountain: Mountain Lore',
1966,
XMLPARSE(DOCUMENT
'<bookinfo>
<author>Sam Climber</author>
<title>Top of the Mountain: Mountain Lore</title>
<story>Sam Climber has traveled through the world to gather
stories about mountains. This compendium includes the best
stories and is beautifully illustrated.
</story>
<year>1966</year>
<price>20.00</price>
<pages>449</pages>
</bookinfo>'))
INSERT INTO books VALUES
('777-010101010', 'Samantha Smitt', 'The Database Compendium', 2001,
XMLPARSE(DOCUMENT
'<bookinfo>
<author>Samantha Smitt</author>
<title>The Database Compendium</title>
<story>Follow Samantha into the world of database management.
Covers a wide range of the most popular database
architectures.
</story>
<year>2001</year>
<price>19.00</price>
<pages>222</pages>
</bookinfo>'))
INSERT INTO books VALUES
('123-918273645', 'Joanne Miller', 'The Travel Companion', 2005,
XMLPARSE(DOCUMENT
'<bookinfo>
<author>Joanne Miller</author>
<title>The Travel Companion </title>
<story>If you like to travel, this is the book for you.
Joanne Miller has compiled her funny and often surprising
diary
entries about places and people which were previously
published
as travel log in ''Here and There''
</story>
<year>2005</year>
<price>31.00</price>
<pages>321</pages>
</bookinfo>'))
. Tìm kiếm văn bản của DB2, Phần 1: Tìm kiếm toàn văn bản
Tìm kiếm văn bản của DB2 là một thành phần tích hợp của DB2 9.5 và do máy. các chỉ mục tìm kiếm- văn bản cho các tài liệu dữ liệu văn bản và các tài liệu XML.
Điền các chỉ mục tìm kiếm- văn bản.
Tìm kiếm trong văn bản thuần.