Tải bản đầy đủ (.doc) (26 trang)

LẬP CHỈ MỤC VÀ TRUY VẤN DỮ LIỆU QUAN ĐIỂM CỦA CƠ SỞ DỮ LIỆU SEMISTRUCTURED

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 (719.81 KB, 26 trang )

IJCNS tạp chí quốc tế về khoa học máy tính và an ninh Network ,VOL Ngày 10 tháng 06 năm 2010
LẬP CHỈ MỤC VÀ TRUY VẤN DỮ LIỆU QUAN ĐIỂM CỦA CƠ
SỞ DỮ LIỆU SEMISTRUCTURED
B.M.Monjurul Alom,Frans Henskens and Michael Hannaford
Trường kỹ thuật và máy tính.Khoa học đại học Newcastle,AUSTRALIA
TÓM TẮT:
Các dữ liệu đầy hứa hẹn tri phối hầu hết định dạng cho dữ liệu sử lý và đại diện mạng
internet là hình thức gọi dữ liệu XML semistructured,XML dữ liệu không có lược đồ cố định ;
có evolved có thể tự mô tả mà kết quả quản lý khó khăn với ; ví dụ như dữ liệu quan hệ
XML.Truy vấn khác nhau tại các truy vấn quan hệ trong đó các nguyên tắc thể hiện là những
đường giẫn.Việc sử lý hiệu quả các mối quan hệ cấu trúc đã trở thành một yếu tố quan trọng
trong prcessing . ít truy vấn XML , dó là một thách thức lớn cho cộng đồng cơ sở dữ liệu để
thiết kế các kỹ thuật sử lý truy vấn các phương pháp dữ liệu có thể quản lý dữ liệu
semistructured efficiently.Sự đóng góp của bài này là truy vấn dữ liệu bằng cách sử dụng
semistructured bitmap để đại diện cho con đường có giá trị mối quan hệ và nén các bitmap để
tiết kiệm không gian Bitmap trình bày và lập chỉ mục ,đề án được gọi là truy vấn dữ liệu mà
các cửa hàng BIQS con đường yếu tố.token của thuộc tính chữ và một số tài liệu trong một
cấu trúc ma trận tự động tạo ra,Chúng tôi sử dụng từ ngữ ,thuộc tính,đường giẫn để xây dựng
cấu trúc bitmap .Bài viết này để mô tả một thuật toán để truy vấn dữ liệu semistructured trong
thời gian một cách hiệu quả hơn được cung cấp bởi các quan hệ và truy vấn kỹ thuật sử lý
các quan hệ và truy vấn semistructured . Cơ cấu BIQS trình bày cung cấp lưu trữ và cải thiện
hiệu suất truy vấn do nén dữ liệu semistructured.
*Các từ khóa:
Cơ cấu tham gia ,XQuery,Xpath,Bitmap,TwigStach,MySQL
1.GIỚI THIỆU:
Sử lý truy vấn là một điều tất yếu bất kỳ loại hình cơ sở dữ liệu nào cũng như
semistructured (XML) cơ sở dữ liệu [dữ liệu 1] semistructured có một số cấu trúc .những cấu
trúc này không phải là cứng nhắc nó thường xuyên hoàn chỉnh cơ cấu theo yêu cầu của hệ
thống quản lý hệ thống cơ sở dữ liệu [20]. Việc sử dụng phổ biến hơn.Đặc biệt khi thực hiện
nhiệm vụ như là sự thích hợp đơn giản của dữ liệu từ nguồn [21].sự tăng trưởng của các kho
XML trên web đã dẫn đến nhiều nghiên cứu về lưu trữ và tập chỉ mục cho truy vấn hiệu quả


dữ liệu XML .
Một tùy chọn để quản lý semistructured cũng như XML ,dữ liệu xây dựng một nhà quản lý
chuyên ngành có chứa một kho dữ liệu XML vào lõi [22] của nó .Thật khó để đạt được hiệu
suất truy vấn cao,sử lý dữ liệu XML khó,kể từ khi truy vấn được trả lời bằng cách vượt qua
các liên kết nhiều element-to- element ,cá nhân yêu cầu tra cứu chỉ số nhiều [23].Trong trường
hợp dữ liệu XML các truy vấn phức tạp hơn bởi vì chúng có thể chứa các biểu thức đường
dẫn xuyên [24].Do có sự linh hoạt bổ sung là cần thiết để đi qua các dữ liệu có cấu trúc là một
phần không thường xuyên hoặc chưa biết đến ngày sử dụng .Tùy chọn để quản lý dữ liệu
semistructured là để lưu trữ .Và truy vấn với một cơ sở dữ liệu quan hệ [22].Trong cộng đồng
cơ sở dữ liệu nhiều nhà quản lý cho rằng quan hệ (và đối tượng quan hệ ) model dục đến hạn
1
thanh toán và sử dụng rộng rãi,vẫn là tốt lựa chọn [25].Sử lý truy vấn XML là phức tạp hơn
nhiêu so với phương pháp truyền thống truy vấn về cấu trúc lựa chọn trên nhiều yếu tố liên
quan mật thiết của một cấu trúc cây có tên là mô hình cây truy vấn (QTP) do đó trong QTP cần
phân biệt thứ tự trong tài liệu XML, đây là một nhiệm vụ tốn kém khi các tài liệu rất lớn XML
được tham.Các truy vấn được biết đến phương pháp chế biến gọi là structura tham gia được
mô tả trong [2]. trong truy vấn cơ cấu tham gia, được chia ra thành một số nhị phân tham gia
hoạt động.Do đó, một khối lượng hhuge kết quả trung gian được sản xuất trong cành phương
pháp tiếp cận toàn diện method.the tham gia [3] không phân hủy các truy vấn vào nhị phân
của nó, cha mẹ trẻ em (cp) hoặc tổ tiên con cháu-(quảng cáo) các mối quan hệ mà họ cần đến
phương pháp chế biến gọi là các lá của qtp thay vì chế biến thuộc các lá của qtp thay vì xử lý
tất cả các nút trong các tài liệu xml. nhưng phương pháp này sử dụng một cấu trúc có tên là
hữu hạn nhà nước có bộ chuyển đổi (FST) để giải mã các mã của các nút vào tên lành mạnh
của con đường đi qua từ gốc mỗi nút, do đó, FST lãng phí rất nhiều thời gian.
Sự đóng góp của bài này là truy vấn dữ liệu bằng cách sử dụng semistructured bitmap
để đại diện cho con đường có giá trị mối quan hệ và nén các bitmap để tiết kiệm không gian.
các BIQS trình hỗ trợ các cơ cấu tham gia truy vấn, truy vấn Phath, và cây BIQS kỹ thuật cũng
hỗ trợ các loại truy vấn mà chỉ có một portin của tên đường dẫn được đề cập trong câu truy
vấn Bài viết trình bày những so sánh thời gian thực hiện truy vấn của BIQS đến XML thời
gian xử lý truy vấn khác (Kết cấu Tham gia và TwigStack) và truy vấn quan hệ (Oracle,

MySQL) thời gian xử lý.
Thử nghiệm kết quả cho thấy rằng kỹ thuật đề xuất các truy vấn dữ liệu semistructhred trong
một thời gian cách hiệu quả hơn được cung cấp bởi một số các XML hiện tại khác và xử lý
truy vấn quan hệ techniques.the giấy trình bày các thời gian "và không gian 'phức tạp của các
vấn đề quan hệ (dữ liệu Semistructured ) truy vấn bằng cách sử dụng cấu trúc bitmap nén, từ
đó, con đường, và từ điển thuộc tính
Cơ cấu bitmap cung cấp các thiết bị lưu trữ thông tin khổng lồ của các từ và các đường
dẫn vào từng tế bào thu hồi các dữ liệu có thể được thực hiện có hiệu quả với độ trễ thấp. Để
hiểu được chức năng của các kỹ thuật được đề xuất, thuật toán cho thấy việc lưu trữ các từ
mười sáu và thông tin đường dẫn vào mỗi ô nhớ của một khối duy nhất bởi một giá trị thập
phân cho các dữ liệu compression.But nén là có thể cho tối đa cấu trúc trình bày các thông tin
của ba mươi hai chữ và các đường dẫn imto mỗi ô nhớ của một loe block.No duy nhất của bất
kỳ thông tin xml luôn luôn duy trì các kỹ thuật đề xuất.
Phần còn lại của bài này là tổ chức như sau: công việc liên quan trong phần 2, một
frameword của phương pháp đề xuất được mô tả trong thuật toán 3.Thầu phần cho cấu trúc
bitmap được trình bày trong 4 tìm kiếm và truy vấn tài liệu được mô tả trong 5.section 6 thí
nghiệm. kết quả, bài báo kết luận với một cuộc thảo luận và nhận xét cuối cùng trong phần 7
2
2.Công việc liên quan
Nhiều kĩ thuật xử lý truy vấn như phương pháp Holistic Twig Join đã được trình bày
trong [6, 8, 13, 18] để quá trình truy vấn càng có hiệu quả, tuy nhiên họ vẫn còn bị số lượng lớn
chức năng không cần thiết. Một cách tiếp cận mới có tên là Twig Stack + được trình bày trong
[19] để giải quyết vấn đề này cái mà dựa trên các thuật toán tổng thể tham gia rất nhiều để cải
thiện đáng kể hiệu suất xử lý truy vấn. Twig Stack+ được sử dụng để giảm chi phí truy vấn đơn
giản bởi vì nó có thể kiểm tra xem các yếu tố khác có thể được xử lý cùng với hiện hành. Kỹ
thuật đề xuất cũng được sử dụng để kiểm tra tính hữu ích của một phần tử từ hai phía trước và
sau. Kỹ thuật xỷ lý truy vấn XML khác được xây dựng trong [7, 9, 11, 15].
TSGeneric+[6] thực hiện các cải tiến về TwigStack bằng cách sử dụng XR-Tree để bỏ
bớt một số thành phần vô ích đã mở rộng để giải pháp nhưng không tham gia vào bất kỳ giải
pháp nào. TwigStackList [8] xử lý các vấn đề phụ tối ưu bằng cách gắn một danh sách các

thành phần với mỗi nút truy vấn đến bộ nhớ catche của một số thành phần, TJFast [12] cải thiện
hiệu suất xử ký truy vấn bằng cách quét các thành phần của các nút lá trong truy vấn để giảm
chi phí I/O. Mặc dù các phương pháp hiện tại [6] có thể đảm bảo tối ưu hoá thời gian của CPU
và I/O khi chỉ có cạnh AD tham gia vào các mô hình cây con, họ đều bị lớn số chức năng dự
phòng (có gốc tiếp theo) yêu cầu.
Một xử lý truy vấn và cập nhật thuật ngữ kỹ thuật xử lý gọi là EXEL (mã hoá và hiệu
quả ghi nhãn XML) được trình bày trong [10].
SIGOPT (lược đồ thông tin đồ thị) để tối ưu hoá sự xử lý truy vấn XML được mô tả
trong [17]. Các trình bày kĩ thuật khảo sát những cơ hội cho các lược đồ thông tin ảnh hưởng
đến việc đánh giá xử lý truy vấn. Đa cấp điều hành kết hợp xử lý truy vấn trong XML được mô
tả trong [16], cái mà làm trau chuốt các tầm quan trọng để xem xét sự hoạt động ở từng cấp. Cụ
thể, kĩ thuật xem xét ảnh hưởng của dự báo và các hoạt động đặt trên các lựa chọn dựa trên mô
hình và ngăn chặn gia nhập.
Hệ thống quản lý cơ sở dữ liệu hỗ trợ lập chỉ mục (hiệu năng) truy vấn tốt hơn thực hiện
truy vấn. Lập chỉ mục cung cấp linh hoạt, thống nhất và hiệu quả cơ chế đẻ truy nhập dữ liệu
[22]. Có một số chỉ số đường dẫn như Strong DataGuide[26], Fabric Index, ToXin[27],
APEX[28], Index [24], A(k) Index, và Fix[29] cái mà được lập chỉ mục con đường của các nút
của tài liệu để tạo điều kiện tiếp nhận với các nút yêu cầu trong kỹ thuật xử lý truy vấn XML .
Đây là chỉ số là các loại phương pháp xử lý truy vấn đó là chống lại các cơ cấu tham gia [2],
cây con tham gia [3] và phương pháp TJFast[12].
Hầu hết các sơ đồ chỉ có thể lập chỉ mục áp dụng cho một số công đoạn xử lý truy vấn
hạn chế hoặc giới hạn lớp của các truy vấn. Để khắc phục nhữn hạn chế này mọôt sơ đồ lập chỉ
mục gọi là ToXin [27] đã được phát triển. ToXin phá toàn bộ cấu trúc đường dẫn chung của cơ
sở dữ liệu trong tất cả các giai đạn xử lý truy vấn bao gồm các chỉ số đường dẫn và chỉ số giá
trị. Một biitmap ba chiều sơ đồ lập chỉ mục được đặt tên Bitcube [30] xem xet một bảng tần số
phức tạp hơn đại diện cho một tậo hợp tài liệu kèm theo, đặt cả hai yếu tố đường dẫn và một bộ
từ cho mỗi đường dẫn. Một hệ thống mới để lập chỉ mục và lưu trữ dữ liệu XML dựa trên một
kế hoạch đánh số cho các phần tử được đề xuất trong [1].
Khả năng truy vấn được cung cấp qua cơ cấu qua cơ cấu tham gia và cây con truy vấn,
đó là các thành phần cốt lõi tiêu chuẩn của ngôn ngx truy vấn XML, ví dụ XPath[13] và

XQuery[32]. Kỹ thuật cũng tồn tại truy vấn dữ liệu XML như Lorel[21], XML-QL[33],
XQL[34], UnQL[35], XML-GL[34], XSL[34],Quilt[25], tuy nhiên những ngôn ngữ truy vấn
này sử dụng phức tạp và có một số hạn chế. Một lỗ lực đã được thựchiện trên lưu trữ và truy
vấn dữ liệu XML bằng cách sử dụng quan hệ dơ sở dữ liệu được mô tả trong [4, 7, 9, 15, 36-40]
3
[23, 36-48] cũng là một lỗ lực toàn diện đã được thực hiện trên cơ sở dữ liệu XML nên được
trinh bày trong [22].
3.Khuôn khổ của đề xuất kỹ thuật.
3.1. Khiến trúc tổng thể của các hệ thống.
Để hiểu được chức năng của các đề xuất kỹ thuật tổng thể kiến trúc được trình bày
trong hình 1. Động cơ xử lý dữ liệu được sử dụng để tạo ra một từ điển một từ điển đường dẫn
và một thuộc tính từ điển mà cùng nhau trở thành cơ sở của một ma trận bitmap để lưu trữ
thông tin tài liệu XML. Các yếu tố đường dẫn được tính từ gốc đến yếu tố con lồng nhau trong
tất cả các tài liệu XML. Các thuộc tính ghi lại tất cả các thuộc tính (không phân biệt các thuộc
tính) bao gồm nội dung của từng thuộc tính và các tài liệu số tương ứng. Từ điển ghi moọt số
mã thông báo cho mỗi từ biệt. Con đường từ điển các cửa hàng tất cả các khác biệt con đường
yếu tố bao gồm số con đường của mình.
Nhiều cửa hàng cung cấp khối nén tất cả các thông tin nguyên liệu ở dạng nén. Mã
thông báo và cơ cấu đường dẫn (TP) được sử dụng để đại diện cho các thẻ và đường dẫn. Thứ
cáp chỉ mục được sử dụng để tìm kiếm các mã thẻ và số con đường từ cấu trúc mã thông báo và
và đường dẫn để giảm thời gian tìm kiếm. Cơ cấu nén với từ điển và TP (mã thông báo đường
dẫn cấu trúc) được duy trì trên bộ nhớ chính. Nhập truy vấn thông qua người quản lý truy vấn
được áp dụng cho cấu trúc nén để có được những truy vấn đầu ra.
Cơ cấu phát triển không phải luôn luôn giống nhau nếu toàn bộ các tài liệu được coi là
toàn bộ nhưng trật tự khác nhau. Trật tự khác nhau của các tài liệu cung cấp sự khác biệt của
cấu trúc đó không có nghĩa là cơ cấu mất moọt số thông tin XML. Cấu trúc luôn duy trì các
thông tin chính xác của các cơ sở dữ liệu ban đầu cho dù các thiết lập của các tài liệu xẽmét
theo thứ tự khác nhau hoặc cùng một thứ tự. Đối với bất kì thứ tự của các tài liệu, dữ liệu được
lưu trữ trong một cấu trúc đa khối nén dẫn hiệu quả kém. Ngoài ra việc sử dụng các cấu trúc ma
trận còn là hiệu quả của việc cập nhật không bị suy thoái.

3.2 Xây dựng cấu trúc bitmap.
BIQS tạo ra một cấu trúc ma trận hai chiều đại diện cho dự tồn tại của các từ và các
yếu tố đường dẫn trong các tài liệu tương ứng. Các hàng đầu tiên của cấu trúc ma trận ghi lại tất
cả các mã thông báo số lượng cho các từ tương ứng và các đường dẫn liên quan đến số lượng
cho các từ. Tất cả các thẻ tồn tại (được giới hạn) trong số đường dẫn tương ứng cuẩ họ trong
hàn đầu tiên của cấu trúc BIQS.
Chúng tôi sử dụng một dấu hiệu phủ nhận (-) trước tất các số đường dẫn để phân biệt
với mã thông báo. Cột đầu tiên của ma trận số tài liệu. Các mục của việc sử dụng ma trận một
giá trị bit (1/10) để đại diện cho tài liệu số sự tồn tại hay không của từ và các phần tử trong
phạm vi số tài liệu, yếu tố bên trong tài liệu số để đại diện cho một đường dẫn mới từ một tài
liệu XML, phương pháp này bước đầu tạo ra một cấu trúc mới trong cấu trúc ma trận. Các dòng
đầu tiên (entry) của cột cửa hàng số đường dẫn (từ đường dẫn từ điển) và một giá trị 1 được đưa
sang hàng tiếp theo của cột tạo ra các giá trị 1 biểu thị một sự tồn tại của đường dẫn trong tài
liệu. Các thẻ (từ từ điển) của tất cả các từ trong số đường dẫn đã chọn được lưu trữ tương tự
bằng cách tạo ra các cột mới trong cấu trúc ma trận.
Một giá trị 1 được đưa vào các mục tiếp theotừng cột tạo ra cho các thẻ. Mỗi dòng của
cơ cấu ma trận ghi lại tất cả các thông tin của từn tài liệu XML. Hệ thống này tương tự hoàn tất
việc tạo ra ma trận cho tất cả các dữ liệu XML. BIQS không tạo ra các cột mới trong một
đường dẫn hiện có cho cùng một từ, ngay cả các tài liệu khác nhau. Kĩ thuật này luôn tạo ra các
cột mới cho cùng một từ nhưng số đường dẫn khác nhau, bất kể số tài liệu nào. Chúng tôi xem
xét các tài liệu XML được đưa trong hình 2, hình 3, hình 4 và hình 5 để sử dụng trong chứng
minh đề xuất của chúng tôi thực hiện xây dựng bitmap.
4
3.2. Xây dựng từ điển và BIQS với ví dụ
Từ điển, đường dẫn từ điển và thuộc tính từ điển (bao gồm các bảng I, II, và III) đã
được tạo ra từ các tài liệu XML hình 2, hình 3, hình 4 và hình 5. Các thuộc tính điền được đưa
ra trong bảng III, cho thấy một khoá có tên thuộc tính có 4 giá trị khác nhau trong tài liệu khác
nhau như 2 và 4. Trong đường dẫn từ điển, nasa.datasets.dataset.title và dblp.msthesis.title đại
diện cho hai con đường số khác nhau.
Hệ thống này tạo ra một cột mơi trong cấu trúc ma trận (đưa ra trong bảng IV) để ghi

tên con đường “nasa.datasets.dataset” từ dữ liệu (đưa ra trong hình 2) và số lượng đường dẫn
(-1) được giao hàng đầu tiên cột được tạo ra, và giá trị 1 được giao cho các hàng tiếp theo của
cột được tạo ra để chỉ sự tồn tại của tài lệu. Không có từ ngữ trong số con đường này ngoại trừ
một số thuộc tính. Do đó khồng có mã thông báo được cập nhật trong số đường dẫn này. Tương
tự như vậy cho con đường số 2 một cột mới được tạo ra trong cấu trúc. Đối với tất cả các từ
trong số đường dẫn này, một cột mới được tạo ra riêng biệt và giá trị 1 được giao cho hàng tiếp
theo của cột được tạo ra cho thấy srj tồn tại của mình tương ứng với dữ liệu. Vì vậy các mã
thông báo 1 đối với các chuyển động từ thích hợp được ghi lạ trong đường dẫn số 2. Giá trị một
được giao hàng tiếp theo của cột được tạo ra chỉ sự tồn tại của chúng với tài liruj tương ứng.
Trong bảng IV 1 là mã thông báo trong vòng 2 số đường dẫn. việc tạo ra ma trận cấu trúc sau
khi giải nén tất cả các từ và các đường dẫn từ dữ liệu để dữ liệu được đưa ra trong bảng V.
3.4. Phương pháp giải nén các bitmap. Cơ cấu tổ chức.
Hệ thông cấu trúc BIQS chia thành hai cấu trúc để nén dữ kiệu XML. Hàng đầu tiên là
một cấu trúc có tên là Path Token sử dụng để đại diện cho các số thẻ và đường dẫn. Hàng này
được lập chỉ mục bắt đầu tuần tự từ 0. Sau đó, các chỉ số được sử dụng để tìm kiếm số thẻ và
đường dẫn từ các số thẻ và đường dẫn cơ cấu. Một cấu trúc có tên là nén Bitmap Index (BIQS).
Cơ cấu tổ chức bao gồm tất cả các hàng còn lại của ma trận (ngoại trừ hàng đầu tiên).
Trong cấu trúc này mỗi hàng được chia thành các khối. Trong mỗi khối thông tin của 16
tế bào bit (từ và đường dẫn) được nén. Vì mỗi hàng đại diện cho thông tin của mỗi tài liệu
XML, có thể có một số khác nhau của khối cho mỗi tài liệu và mỗi khối bao gồm các giá trị
khác nhau cho các tài liệu khác nhau. Nén cũng có thể sử dụng kcác tế bào 32 bit. Các cấu trúc
mã thông báo và đường dẫn được trinh bày trong bảng VI. Các nén cấu trúc bitmap được trình
bày trong bảng IX. Các giá trị của mỗi tế bào 16 bit được ghi ở dạng thập phân. Nếu không có
đủ dữ liệu để hình thành một khối với tế bào 16 bit chung tôi thục hiện với số 0.
Cơ cấu BIQS nén được đưa ra trong bảng VIII, cột đầu tiên của cấu trúc đại diện cho số
tài liệu và ba cột còn lại đại diện cho các khối. Giá trị của mỗi khối được tạo ra từ cấu trúc
BIQS được đưa ra trong bảng V. Giá trị của các khối là 65472, 57, 0 và 39. Những giá trị này
đại diện cho các thông tin nén dữ liệu cho các tài liệu XML lhác nhau. Nén này không bị mất
bất kì thông tin. Chúng tôi sử dụng cấu trúc BIQS nén dữ liệu. Thực tế chúng ta không chuyển
đổi giá trị nhị phân (từ bảng V) thành giá trị thập phân (vào bảng VIII) thay vì chúng ta lưu trữ

thông tin cho 16 từ và đường dẫn vào một tế bào đơn lẻ của môt khối.

5
Hình 1.: Cấu trúc của các phương pháp xử lý truy vấn.
6

<nasa>
<datasets>
<dataset subject="astronomy"
xmlns:xlink="">
<title> ProperMotions </title>
<altname type="ADC">I/1005 </altname>
<altname type="CDS">I/5 </altname>
<author>
<firstname>Jack</firstname>
<lastname>Spencer</lastname>
</author>
</dataset>
</datasets>
</nasa>
Hình 2 : XML document-1
<dblp>
<msthesis key="ms/Brown92">
<author>Brown </author.
<title> DB System </title>
<year>1992</year>
<school>Madison</school>
</msthesis>
<msthesis key="ms/Yurek97">
<author>Yurek</author>

<title>DataWarehouse</title>
<year>1997</year>
<school>california</school>
</msthesis>
</dblp>
Hình 3 : XML document-2
<Yahoo>
<listing>
<seller_info>
<seller_name>Katich</seller_name>
<seller_rating>new</seller_rating>
</seller_info>
<item_info>
<memory>128MB RAM</memory>
<HD>40GB</HD>
<cpu>Pentium-III</cpu>
<item_info>
</listing>
<listing>
<item_info>
<memory>256MB RAM</memory>
<HD>80GB</HD>
<cpu>Pentium-IV</cpu>
<item_info>
</listing>
</Yahoo>
Hình 4 :XML Document-3
<dblp>
<msthesis key="ms/Korth94">
<author>Korth</author.

<title> DataMining </title>
<year>1994</year>
<school>MIT</school>
</msthesis>
<msthesis key="ms/Martin98">
<author>Martin</author>
<title>DSP</title>
<year>1998</year>
<school>Texas</school>
</msthesis>
</dblp>
Hình 5 : XML document-4
7
Bảng 1. . T ừ điển. Bảng 2: từ điển đường dẫn
B ảng 3: Từ điển thuộc tính
Attribute
Name
Content Doc
Number
Path
Number
subject astronomy 1 1
xmllns:xlink "http://www.w3. org" 1 1
t ype ADC 1 3
t ype CDS 1 3
key ms/brown92 2 6
key ms/yurek97 2 6
key ms/korth94 4 6
key ms/Martin98 4 6
Bảng 4: Cấu

trúc sau khi
hoàn thành
Tài liệu -1
Word Token
Path number
-1 1 -2 2 3 -3 4 -4 5 -5
1 1 1 1 1 1 1 1 1 1 1
Presence of Word & Path
T ừ Chỉ số
ProperMotions 1
I/005 2
I/5 3
Jack 4
Spencer 5
Brown 6
DB 7
System 8
1992 9
Madison 10
Yurek 11
DataWarehouse 12
1997 13
california 14
Katic 15
new
16
128MB 17
40GB 18
Pentium-III 19
256MB 20

80GB 21
Pentium-IV 22
Korth
23
Dataminng 24
1994 25
MIT 26
martin
27
DSP 28
1998 29
Texas
30
Path
number
Path
1 nasa.dat ase t s.dat aset
2 nasa.datasets.dat aset .t it le
3 nasa.dat aset s.dat aset .altname
4 n asa.dat aset s.dat ase t .author.firstname
5 nasa.dataset s.dataset .author .lastname
6 dblp.msthesis
7 dblp.msthe sis.author
8 dblp.msthesis.t it le
9 dblp.msth esis.year
10 dblp.msthe sis.school
11 Yahoo.list ing.seller _info.seller_name
12 Yahoo.listing.seller _info.seller_rat ing
13 Yahoo. list ing.item_info.m emory
14 Yahoo.list ing. item_info.HD

15 Yahoo.list ing. item_info.cpu
8
Document number to corresponding document
Bảng 5: Cơ cấu tổ chức BIQS
-
1
1 -
2
2 3 -
3
4 -
4
5 -
5
-
6
6 1
1
2
3
2
7
-
7
7 8 1
2
2
4
2
8

-
8
9 1
3
2
5
2
9
-
9
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 0 1
3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 0 1 1 1
10 24 26 30 -
10
15 -
11
16 -
12
17 20 -
13
1821 -
14
19 22 -
15
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
4 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0

Bảng 6: Chỉ số và cơ cấu tổ chức đương dẫn.
Ind
ex
0 1 2 3 4 5 6 7 8 9 1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2

3
2
4
2
5
2
6
-
1
1 -
2
2 3 -
3
4 -
4
5 -
5
-
6
6 1
1
2
3
2
7
-
7
7 8 1
2
2

4
2
8
-
8
9 1
3
2
5
2
9
-
9
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
10 14 26 30 -
10
15 -
11
16 -
12
17 20 -
13
18 21 -
14
19 22 -15
Bảng 7: Đường dẫn tìm kiếm
từ mã thông báo và cấu trúc đường
dẫn





Secondary
Index
Path
No
Toke n_Path_I
ndex
1 -1 0
2 -2 2
5
7
9
10
15
21
26
31
33
35
38
41
N -P 44
9
Bảng 8: Mã thông báo tìm kiếm giữa hai con đường.
26 27 28 29 30 31
-9 10 14 26 30 -10
K be the number of tokens between any
Two paths in Token and Path Structure
Bảng 9: Cấu trúc nén BIQS.


Document
Number
Block-0 Block-1 Block-2
1 65472 0 0
2 57 59193 0
3 0 0 65528
4 39 7399 0
4.Thuật toán của các kĩ thuật.
Chúng tôi đã phát triển mộtthuật toán trong hình 6. Để hiểu được các thuật toán cấu trúc
dữ liệu sau đây cần thiết:
DPath: Đường dẫn riêng biệt; DPNumbe: Số dường dẫn riêng biệt;
PDic[][]:Từ điển đường dẫn; DocNumber: số tài liệu; DWord: Từ khác biệt; WDic[][]:từ điển
từ; ADic[][]: thuôc tính từ điển; Att: thuộc tính;
NPath: Đường dẫn mới; BMS: Cấu trúc ma trận BIQS; NC: Cột mới; PIndex: Đường dẫn chỉ
mục; NPIndex: Đường dẫn chỉ mục mới;
FR:Dòng đầu tiên; TNumber: số chỉ số; WNPIndex:
Từ đường dẫn chỉ mục mới; CBS:Khối cấu trúc nén; CIndex:Nén chỉ mục; TNDC: Tổng số cột
tạo ra trong BMS; WPIndex: Từ đường dẫn chỉ mục; BIndex: Khối chỉ mục; BinDec():Nhị phân
sang thập phân;
SIndex:Chỉ số chung; CPnumber: Số đường dẫn hiện tại; IPCPath: Ngay trước đường dẫn của
đường dẫn hiện tại; BN: Số khối; IToken: Chỉ số của số thẻ;
OPos: Vị trí offset; TP: cấu trúc chỉ số đường dẫn; WPInfoVal: giá trị đường dẫn thông tin;.
Dictionary_Construction (): Chức năng này được sử dụng để tạo ra từ đường dẫn và thuộc tinh
từ điển.
Dynamic_Matrix_Structure(): Chức năng này xây dựng các cơ cấu ma trận bao gồm tất cả các
thẻ, đường dẫn và các thuộc tính với các tài liệu liên quan của họ.
Searching_Structure(): Chức năng này mô tả nén của thông tin XML chia thành khối và lưu trữ
dữ liệu XML vào nén cấu trúc bitmap
Index: Được sử dụng để lưu trữ các số chỉ mục của các mã thông báo tìm kiếm từ mã thông báo

và cấu trúc đường dẫn.
//Block_no:.Mỗi hàng có nhiều block_no mỗi khối bao gồm một tế bào thông tin 16 bit.
//Offset position: Xác định vị trí cho sự tồn tại của từ hoặc đường dẫn hoặc thuộc tính trong tài
liệu.
Algorithm BIQS()
Begin
10
Dictionary_Construction();
Dynamic_Matrix_Structure();
Searching_Structure();
End.
Dictionary_Construction()
Begin
Calculate All the DPath from root to
nested sub-element;
For each Dpath do
Begin
PDic[PIndex][1]=DPNumber;
PDic[PIndex++][2]=DPath;
End
For each DWord do
Begin
WDic[WIndex][1]=DWord;
WDic[WIndex++][2]=WTNumber;
End
For each Att do
Begin
ADic[AIndex][1]=AttName;
ADic[AIndex][2]=AttContent;
ADic[AIndex][3]=DocNumber;

ADic[AIndex++][4]=PNumber;
End
End. // Word_Path_Attribute
Dynamic_Matrix_Structure()
Begin
For each NPath do
Begin
Create a NC in BMS;
//store the path number in the first
row of the created column;
//Store the negative sign before the
path number;
//Insert 1 to the next row of the
created path number;
BMS[NPIndex][FR++]=-PNumber;
BMS[NPIndex][FR]=1;
End
For each DWord do
Begin
//Tạo một cột mới trong cấu trúc ma trận trong phạm vi số đường
dẫn;
//Đưa số thẻ vào mục đầu tiên của côt tạo ra;
//Chèn 1 đến doc number tương ứng
(hàng tiếp theo của cột tạo ra) để tạo ra thẻ;
Create a NC in BMS within PNumber;
11
BMS[WNPIndex][FR++]=TNumber;
BMS[WNPIndex][FR]=1;
End
// Riêng hàng đầu tiên của cấu trúc chỉ số bitmap như là cấu

trúc TP;
// Đối với tất cả các hàng khac từ BMS
TPS=First Row of the BMS;
For CIndex=i+1 to DocNumber do
Begin
For WPIndex=1 to TNDC do
// Chuyển đổi các giá trị của ô nhớ 16 bit thành dạng thập phân;
Begin
CBS[BIndex][Col++]=BinDec(BMS[WPI
ndex][1]to BMS[WPIndex][16]);
End
BIndex++;
End
End
Searching_Structure()
Begin
// Đường dẫn chỉ số được sắp xếp theo giá trị tăng dần thông qua
chỉ số và cấu trúc đườg dẫn.
// Sử dụng chỉ số chung vào số những đường dẫn này
// Áp dụng tìm kiếm hệ nhị phân để tìm số đường dẫn từ cấu trúc
này;
// Áp dụng tìm kiếm hệ nhị phân trong số con đường này (hiện
hành) đến số con đường trước mắt đế tìm chỉ số của các mã thông
báo từ mã thông báo và cấu trúc đường dẫn;
Search the TNumber of input query
(word) from Wdic;
Apply BS to find PNumber from SIndex;
Apply BS to find IToken within
CPnumber to IPCPath from TP;
BN=IToken/ 16;

OPos=IToken % 16;
// Đối vớ với mỗi khối từ cấu trúc nén chỉ số Bitnap làm
// Nếu là 1 được tìm thấy ở vị trí tiếp theo, từ tìm kiến được
tìm thấy
// Để trả lại số hàng đó là số tài liệu;
For each Block of CBS do
Begin
WPInfoVal=DecToBin();
If (WPInfoVal[OPos])==1){Return RNo;}
Else {Return 0;}
End
End.
Hình 6: Thuật toán cho các kĩ thuật dự kiến.
12
5.Tìm kiếm và truy vấn các tài liệu.
Kĩ thuật BIQS hỗ trợ các loại truy vấn và áp dụng tìm kiếm cho các cấu trúc nén của dữ
liệu. Người dùng tìm kiếm các tè điển để tìm thấy những dấu hiệu cho từ tương ứng sau khi hệ
thống phát hiện có các dấu hiệu (bằng cách sử dụng thuụât toán tìm kiếm nhị phân) các chỉ số
vị trí của mã thông báo từ mã thông báo và cấu trúc đường dẫn, và số đường dẫn trong đó các
mã thông báo là bị chặn. Bởi vì thông tin cho 16 ô nhớ được nén trong mỗi khối, các block_no
được tính toán, phân chia các chỉ số 16. Các Offset_position này cũng được tính như số chỉ số
modulo 16. Từ các dữ liệu nén cấu trúc (bảng IV), các giá trị tương ứng của mỗi khối được
chuyển đổi thành các dạng nhị phân để kiểm tra các giá trị tồn tại trong tài liệu. Cách tiếp cận
này sẽ kiểm tra sự tồn tại của giá trị 1 ở vị trí bù đắp tương ứng trong mỗi giá trị khối. Sự hiện
diện của các giá trị 1 trong vị trí bù đắp tương ứng cho thấy sự tồn tại của số liệu từ tài liệu
tương ứng. Các hệ thống có thể tìm kiếm một từ hoặc nhiều từ.
Để tìm kiếm một yếu tố con đường (và nội dung đường dẫn) ban đầu hệ thống tìm kiếm
số đường dẫn trong đường dẫn từ điển và sau đó tìm kiếm tất cả số thẻ trong số đường dẫn này
từ mã số thẻ cấu trúc đường dẫn. Trong khi tìm kiếm số đường dẫn từ cấu trúc mã số thẻ, chúng
tôi luôn luôn sử dụng kĩ thuật tìm kiếm nhị phân. Để có được chỉ số của số thẻ, từ mã thông báo

và cấu trúc đường dẫn chúng tôi cũng áp dụng tìm kiếm nhị phân trong con đường này
(thu được) số lượng và số đường dẫn ngay trước đó. Điêuù này là do tất csr các từ đó là dấu
hiệu cho một đường dẫn cụ thểđược ghi lại, từ số đường dẫn với số lượng từ thu được (hiện tại).
Khi hệ thống sử dụng các dấu hiệu (-) trước số đường dẫn, nó dễ dàng để tìm thấy nhiều những
phạm vi tìm kiếm trong các đường dẫn số. Sau khi có số thẻ những từ ngữ tương ứng được tìm
kiếm trong từ điển.
Nếu tìm kiếm một thuộc tính (từ một tài liệu XML) kĩ thuật cố thể tìm kiếm trực tiếp từ
từ điển thuộc tính. Trong thuộc tính của từ điển, mỗi thuộc tính có tên nội dung và số tài liệu
tương ứng ghi lại. Tổng thể (yếu tố là nội dung) từ cơ cấu tìm kiếm được hiển thị trong hình 7.
Các chức năng của chương trình tìm kiếm thể hiện trong các ví dụ sau đây:

Truy vấn 1: Tìm tất cả họ tên tác giả từ tất cả các tài liệu.
Các truy vấn trên là đại diện trong XPath là như sau:
/nasa/datasets/dataset/author/firstname
Cây cấu trúc của các truy vấn ở trên là như sau:
Theo BIQS truy vấn được biễu diễn như sau:
Chọn nasa.datasets.dataset.author.firstname
Từ tài liệu:
Hệ thông hỗ trợ các loại truy vấn. Nó cần thiết để tìm tất cả các nội dung của tên đường
dẫn từ tất cả các tài liệu XML. Kĩ thuệt này tìm thấy đường dẫn
13
(nasa.datasets.datset.author.firstname) số từ đường dẫn từ điển, và nó là 4.Các mã thông báo
được lưu trữ ttrong số đường dẫn này (từ mã thông báo và cấu trúc đường dẫn, bảng VI), là 4.
Các hệ thống tìm kiếm cho các từ từ từ điển tương ứng với mã thông báo 4, đó là Jack và xem
nó là chính xác từ các taì liệu XML được thể hiện trong hình 2-5.
Truy vấn 2: Tìm các tiêu đề của msthesis theo dplp cái mà có (tác giả) có chứa “Korth”
và sub-element (năm) với giá trị là 1994.
Các truy vấn trên đại diện trong XPath là như sau:
/dblp/msthesis[contains(./author,“Korth”)an year=1994]/title
Cây cấu trúc truy vấn của truy vấn ở trên là như sau:


Theo BIQS truy vấn được biểu diễn như sau:
Chọn tiêu đề
Từ tài liệua
Where (dblp.msthesis.author= “Korth”and dblp.msthesis.year=1994)
Hệ thống hỗ trợ các loại truy vấn. Các kĩ thuâth tìm kiếm tìm kiếm dấu hiệu của Korth
từ, 1994 và và tìm thấy được 23 và 25 từ từ điển từ. Số đường dẫn của “dplp.msthesis. author”
và “dplp.msthesis.year” là 7 và 9. Chúng tôi thấy mã thông báo 23 trong đường dẫn số 7 và 25
là số đường dẫn trong vòng 9 (từ các mã thông báo và cấu trúc đường dẫn). Khi cả hai điều kiện
là đúng kĩ thuật này tìm kiếm các chỉ số của các thẻ 23 được 13 và 24, cho mã thông báo 25.Vì
vậy không có khối = 13/16=0 và 24/16=1, hệ thống tìm kiếm các giá trị của Block_no từ
(BIQS) nến cấu trúc chỉ mục bitmap. Các vị trí = 13%16=13. Các vị trí 13 được kiểm tra để có
một giá trị 1, từ tất cả các giá trị của Block-0. Chúng tôi thấy chỉ trong 4
th
giá trị 39
(0000000000100111) (tương ứng với 4
th
hàng) có một vị trí 13 (bắt đầu từ trái sang phải, 0 đến
15) 1. Do đó điều này thể hiện sự tồn tại của từ trong tài liệu 4. Nhưng dấu hiệu này không hiẹn
diện trong 3 giá trị đó là trong tài liệu 3 hoặc trong tài liệu 1.
Tương tự như vị trí (24%16=8) 8 được kiểm tra thông qua các giá trị của Block_no 1.
Chúng tôi thấy chỉ trong 4
th
giá trị 7399 (0001110011100111) (tương ứng với 4
th
hàng) có một
vị trí 8 (bắtt đầu từ từ trái sang phải, 0 đến 15) 1. từ sự tồn tại của từ trong tài liệu 4.ngoài ra
mã thông báo này không hiện diện trong 3
nd
giá trị trong tài liệu 3 hoặc tài liệu 2 hoặc ài liệu 1

trong tất cả các giá trị khác của Block_no 1.
Khi truy vấn các chương trình trên đáp ứng cả hai điều kiện vì vậy cả hai thẻ chỉ được
tìm thấy trong tài liệu 4 (đường dẫn đặt tên là “dblp.msthesis.author” và “dblp.msthesis.year”)
trong số đường dẫn 7 và 9. Tiêu đề đường dẫn, tác giả, và năm là quan hệ của “dblp.msthesis”
số lượng đường dẫn của tiều đề là 8, trong đó có mã thông báo 24 cho cả hai tạo điều kiên thoả
mãn. Vì vậy truy vấn liệt kê các đầu ra “DataMining” cho tiêu đề, các mmã thông báo tương
ứng 24.
Truy vấn 2: tìm tất cả các thông tin của đĩa cứng từ tất cả các tài liệu.
Truy vấn này (đó là một ví dụ về cấu trúc tham gia
14
Các truy vấn trên là đại diện trong XPath như sau:
Các cây cấu trúc của truy vấn trên như sau:
Theo BIQS (hỗ trợ các loại truy vấn, một phần của tên đường dẫn) truy vấn được biểu
diễnn như sau:
Chọn HD
Từ tài liệu
Kĩ thuật BIQS tìm số đườnh dẫn (có phù hợp với đường dẫn từ điển hoặc là tên đường
dẫn đầy đủ hoặc một phần của tên đường dẫn) và là 14. Tất cả các thẻ của được lưu trữ trong số
đương dẫn con (tư cấu trúc mã thông báo và đường dẫn trong bảng VI) và được 18 và 21. Các
hệ thống tìm kiếm cho các từ từ từ điển để các thẻ tương ứng và đây là 40GB, 80GB và xem nó
là chính xác từ ccác tài liệu XML được thể hiện trong hình 2-5.
Truy vấn 4: chọn tất cả các thuộc tính với tên chính từ các tài liệu.
Chọn khoá @
Trong câu truy vấn này sự tồn tại của chính như là 1 thuộc tính trong tài liệu XML được điều
tra. hệ thống sử dụng @ ký trước bất kỳ tên của thuộc tính để phân biệt với đường dẫn. Trong
trường hợp các thuộc tính tìm kiếm, các kĩ thuật tìm kiếm BIQS cho thuộc tính các thuộc tính
trực tiếp trong từ điển. Nó được tìm thấy cá thể của chính tồn tại trong từ điển thuộc tính. Nội
dung của thuộc tính đượcm s/brown92,ms/yurek97, ms/korth94, and ms/Martin98. Hai thuộc
tính tồn tại trong tài liệu 2 và cuối cùng 2 trong tài liệu 4 (từ các thuộc tính từ điển). Các thuộc
tính này đại diện cho thông tin của “ms/thesis” cái mà cùng liên kết với một số đường dẫn (6)

trong đường dẫn từ điển.
Truy vấn 5: Tìm tất cả các thông tin cpu của item_info.
Truy vấn này là một ví dụ mà trong đó có đường dẫn không bắt đầu từ gốc. Các truy vấn
trên được viết bằng ngôn ngữ truy vấn XPath như sau:
/item_info/cpu
Cây cấu trúc của truy vấn ở trên như sau:
Theo BIQS truy vấn như sau:
Chọn item_info.cpu
Từ tài liệu
Trong câu truy vấn này “item_info.cpu” là một phần của tên đường dẫn. Kĩ thuật này
tìm thấy đường dẫn và tênđầy đủ phù hợp với các phần của tên đường dẫn được đưa ra bởi truy
vấn. Sau khi đáp ứng được điêu này kĩ thuật này tìm số đờng dẫn đi từ đường dẫn từ điển và là
15. Các mã thông báo được lưu trữ trong số đường dẫn này (từ cấu trúc mã thông báo và đường
dẫn, bảng VI) là 19 và 22. Hệ thống tìm kiếm cho các từ từ từ điển để các mã thông báo tương
ứng 19 và 22, cái mà pentium-III và Pentium-V nhìn thấy nó là chính xác từ các tài liệu XML
trong hình 2-5.
6.Kết quả thử nghiệm.
15
Để chúng tôi sử dụng Oracle 9i (Enterprise Edition Release 9.2.0.8.0) and Stylus Studio 2009
XML Enterprise Suite Release 2, để đánh giá kwts quả truy vấn khác nhau trong trường hợp
của một hệ thống tập trung. Chúng tôi sử dụng ngôn ngữ C sử dụng BorlandC biên dịch (32 bit
hỗ trợ tối đa đến 4 GB RAM) để thực hiện các đề xuất kĩ thuật của chúng tôi. Chúng tôi sử
dụnh bộ xử lí Intel với 2,13 GHz, RAM 1,99GB hệ điều hành chuyên nghiệp Windown XP. Để
hỗ trợ cơ sở dữ liệu Oracle 9i, chúng tôi đqx sử dunh hệ điều hành Linũ. Chúng tôi sử dụng (có
cấu trúc) bộ dữ liệu XML (Bib.xml, Yahoo.xml, Protein_Sequence.xml,Dblp.xml) trong [49]
để chạy các so sánh của ngôn ngữ XQuery và đề xuất kĩ thuật của chúng tôi bằng cách sử dụng
tập tin BIQS với kích thước .004MB, .024MB, 5.78 MB, 11MB, 130MB, và 683MB.Chúng tôi
đã trình bày các loại truy vấn sử dụng cho các thí nghiệm của BIQS trong bảng 10. Chung tôi
lấy tất cả trung bình của các lần đo cho các truy vấn khác nhau.
Để so sánh với cơ sở dữ liệu khác như MySQL, chúng tôi sử dụng (

tuỳ chỉnh) của chính chúng tạo ra cơ sở dữ liệu tên cá nhân, thông tin bao gồm kích cỡ khác
nhau (5.78 MB, 11 MB, 34.14, 53.03 MB, 104.46 MB, 130 MB)và bao gồm hàng trục bộ dữ
liệu trong cơ sở dữ liệu quan hệ. Chúng tôi đo thời gian (bằng giây) . Đối với từng hoạt động
của truy vấn bằng cách sử dụng các số khác nhau bằng cách sử dụng Java Eclipse kết nối với cơ
sở dữ liệu MySQL khác nhau để thực hiện hoặt động truy vấn (MySQL DB). Thơi gian thực
thi truy vấn (bằng dây) bằmg cách sử dụng MySQL được trình bày trong hình 7. Rõ ràng từ
hình 7 mà thời gian đo cho truy vấn gia tăng do tăng số lượng và kích cỡ.
Thời gian đo khác nhau XQuery hoặt động được thể hiện trong hình 8. Để truy vấn hoặt
động chúng tôi sử dụng các loại khác nhau cảu các vị trong các biểu thức đường dẫn. Hình 8 rõ
ràng cho thấy việc đánh giá thời gian XQuery và các hoặt động là luôn luôn lớn hơn so với các
OR hoặt động. Cũng thời gian truy vấn tăng do tăng số điều kiện hoặc các vị. Đó là kết luận từ
hình 7 và hình 8 rằng ohải mất nhiều htơi gian hơn XQuery hoạt động hơn so với truy vấn quan
hệ hoạt động.
Chúng tôi cũng sử dụng một cơ sở dữ liệu Oracled để đánh giá hiậu quả truy vấn cho
các cơ sở dữ liệu được tạo ra của chúng tôi đặt tên “thông tin cá nhân”, với kích thước file khác
nhau. Các truy vấn thời gian cho cả hai được hoặt động khi được đo về số lượng khác trong các
vị trong mệnh đề WHERE. Những lần thực hiện được trình bày trong hình 9 và 10. Chúng tôi
chạy cới câu truy vấn đối với tất cả điều kiện đúng, tất cả điều kiện sai, và sự krrts hợp của các
điều kiện. Chúng tôi lấy tất cả các trung bình của các lần đánh giá. Đó là kết luận từ hình 7,
hình 8, hình 9 và hình 10 mà phải mất nhiều thời gian hơn cho XQuery hoạt động hơn so với
các hoạt động truy vấn quan hệ (MySQL), nhưng ít thời gian hơn so với hoạt động Oracle SQL.
Các truy vấn được đo thời gian xử lí khác nhau cho các hoạt động truy vấn bằng cách sử
dụng BIQS được thể hiện trong hình 11 và hình 12. Thời gian thực hiện truy vấn là tốt hơn so
với thời gian thực hiện XQuery (như trong hình 8) đối với kích thước cơ sở dữ liệu tương tự. So
sánh hình 8, hình 9, hình 10, hình 11 và hình 12, rõ ràng là BIQS là trời gian hiệu quả. Thời
gian xử lí truy vấn được trình bày trong hình 11, hình 12 và hình 13 BIQS bao gồm cả tiền thời
gian xử lí (ví dụ như xây dựng từ điển thời gian).
Các phân tích so sánh cho thời gian thực hiện XQuery, thơi gian thực hiện trong Oracle,
MySQL, và BIQS được trình bày trong hình 13. Có thể thấy rằng BIQS thực hiện hơi chậm so
với MySQL, nhưng tốt hơn XQuery, và cũng nhanh hơn so với các BIQS đánh giá cao thời gian

thực hiện Oracle trên phạm vi các vị thử nghiệm. Kết quả cho thấy sự cải thiện đạt được bằng
BIQS tănh với số lượng các vị.
Để đánh giá việc xây dựng và thao tác bằng chỉ mục bitmap[30], chúng tôi sử dụng thực
hiện thời gian để so sánh với BIQS chúng tôi trình bày thời gian thực thi. Một tậo hợp các thí
nghiệm cũng được thực hiện để so sánh thời gian thực hiện thực hiện các truy vấn của BIQS và
16
Bitcube[30] như hình 14. Những thí nghiệm này được sử dụng 500, 1000, 1500, 2000 và 2500
phần đường dẫn
(ePaths) mỗi tài liệu và một loạt các từ trong yếu tố đường dẫn. . Đối với tất cả các số của mỗi
tài liệu ePath, và tất cả các số của tài liệu, tốt hơn BIQS.
Các phân tích so sánh để thời gian thực hiện truy vấn của BIQS sử dụng kích thước tập
tin khác nhau với các XML kĩ thuật xử lí truy vấn được trình bày trong hình 14. Các phân tích
so sánh hình 15 được trình bày dựa trân truy vấn Q-7

17
Hình 7: Thời gian thực hiện truy vấn (và
điều kiện) bằng cách sử dụng MySQL
Hình 10: Thời gian thực hiện truy vấn bằng
cách sử dụng AND hoạt động trong Oracle
DB
Hình 8: Thời gian thực hiện XQuery cho
kích thước file khác nhau.
18
Hình 12: Thời gian thực hiện truy vấn sử dụng BIQS (điều kiện wrt OR)
Hình 13: So
sánh thời
gian thực
hiện truy
vấn.
Hình 14: Thời gian thực hiện wrt word/ePath/doc.

19
Hình 15: So sánh thời gian thực hiện thực hiện truy vấn trên kích thước dữ liệu khác nhau sử
dụng Q-7 (bảng 10).
Hình 16: Tiền xử lí truy vấn thờ gian thực hiện cho BIQS.
Bảng 10: Truy vấn được thực hiện trong truy vấn của chúng tôi.
20
Hình 7: Không nén để nén file XML bằng cách sử dụng cấu trúc BIQS.
7.Kết luận và làm việc trong tương lai
XML là một dạng dữ liệu thuận tiện cho semistructured trao đổi thông tin và một số
nhiệm vụ xử dữ liệu. Các hoạt động khác, đặc biệt là tìm kiếm và phân loại dữ liệu, được hỗ trợ
tốt hơn nếu dữ liệu được biểu diễn trong một nhiều hơn cấu trúc hình thức, chẳng hạn như sử
dụng cơ sở dữ liệu.
Bài báo này mô tả các kĩ thuật BIQS để truy vấn dữ liệu semistructured trong một thời
gian hiệu quả hơn là cung cấp bởi một số quan hệ khác và kĩ thuật xử lí truy vấn
semistructured. Vi ệc trình bày BIQS hỗ trợ các truy vấn đường dẫn cấu tham gia truy vấn, và
cơ cấu cây truy vấn. Bài bao strình bày sự so sánh thời gian thực hiện truy vấn của BIQS với
truy vấn XML khác. Thử nghiện kết quả cho thấy các kĩ thuật đề xuất các truy vấn dữ liệu
21
semistructured một cách hiệu quả thời gian hơn là cung cấp bởi một số các hiện kkhác XML và
quan hệ xử lí truy vấn.
BIQS trình bày cung cấp cải thiện hiệu suất lưu trữ và truy vấn do nén dữ liệu
semistructured. Thí nghiện của chúng tôi cho rằng XML nén dữ liệu gần như là 35-38% so sánh
với dữ liệu uncompressed. Thời gian thực hiện cũng cho thấy thơi gian của BIQS tốt hơn khi so
sánh với vơi các tiên tri đánh giá cao Bitcube, Oracle, và XQuery.
Các vấn đề như chức năng tổng hợp, cập nhật cơ sở dữ liệu, truy vấn cành phức tạp hơn,
chức năng tổng hợp, xoá, cập nhật dữ liệu động sẽ là từ nghiên cứu tronh tương lai.
Tài liệu tham khảo
[1] V. Garakani, M. Harizi, and M. Harizi, "EffectiveGuidence-Based XML Query Processing,"
in International Conference on High Performance Computing and Communications,
Dalian,China 2008, pp. 605-612.

[2] Al-Khalifa, J. S, K. H.V, P. N, S. J.M, and W. Y, "Structural Joins: A Primitive for Efficient
XML Query Pattern Matching," in International Conference on Data Engineering (ICDE), San
Jose, 2002, pp. 141-152.
[3] N. Bruno, N. Koudas, and D. Srivasta, "Holistic Twig Joins:Optimal XML Pattern
Matching," in International Conference on Management of Data (SIGMOD), Madison,
Wisconsin, 2002, pp. 310-321.
[4] A. David, G. David, N. Ashish, C. Knight, and B. Peter, "Semistructured Data Management
in the Enterprise: A Nimble, High-Throughput, and Scalable Approach," in The 9th
International Conference on Database Engineering & Application Symposium (IDEAS), 2005.
[5] G. Gottlob, C. Koch, and R. Pichler, "The Complexity of XPath Query Evaluation," in
PODS San Diego, CA, 2003.
[6] J. Haifeng, W. Wei, and L. Hongjun, "Holistic Twig Joins on Indexed XML Documents," in
International Conference on Very Large Databases (VLDB), Berlin, Germany, 2003, pp. 273 -
284
[7] S. Hartmann and S. Link, "XML Query Optimization:Specify your Selectivity," in The 18th
International Workshop on Database and Expert Systems Applications (DEXA) IEEE Computer
Society, 2007.
[8] L. Jiaheng, C. Ting, and W. L. Tok, "Efficient Processing of XML Twig Patterns with
Parent, Child Edges: A Look-ahed Approach," in International Conference on Information and
Knowledge Management, Washington Dc, 2004, pp. 673-682
[9] V. Josifovskil, M. Fontoura, and A. Barta, "Querying XML Streams," The journal on Very
Large Databases (VLDB) vol. 14, pp. 197-210, 2005.
[10] M. Jun-Ki, L. Jihyun, and C. Chin-Wan, "An Efficient XML Encoding and Labeling
method for Query Processing and Updating on Dynamic XML Data," The Journal of Systems
and Software, vol. 82:2009, pp.
503-515, 2008. IJCSNS International Journal of Computer Science and Network S 132 ecurity,
VOL.10 No.6, June 2010
[11] Q. Li and B. Moon, "Indexing and Querying XML Data for Regular Path Expressions," in
The 27th International Conference on Very Large Databases(VLDB) Roma, Italy, 2001.
[12] J. Lu, T. W. Ling, C. Y. Chan, and T. Chen, "From Region Encoding to extend dewey: On

efficient processing of XML twig pattern matching," in International Conference on Very
Large Databases, Trondheim, Norway, 2005, pp. 193-204.
[13] B. Nicolas, K. Nick, and S. Divesh, "Holistic Twig Joins: Optimal XML Pattern
Matching," in International Conference on Management of Data (ACM SIGMOD), Wisconsin,
USA, 2002, pp. 310-321.
22
[14] P. Ramanan, "Covering Indexes for XML Querries: Bisimulation -Simulation=Negation,"
in The 29th International Conference on Very Large Databases(VLDB) Berlin, Germany, 2003.
[15] J. Shanmugasadaram, J. Kiernan, E. Shekita, C. Fan, and J. Funderburk, " Querying XML
Views of Relational Data," in The 27th International Conference on Very Large Databases
(VLDB) Roma, Italy, 2001.
[16] A K. Shurg and J. H.V, "Multi-level Operator Combination in XML Query Processing,"
in CIKM, Virginia, USA 2002, pp. 134-141.
[17] P. Stelios, P. Jignesh, and J. H.V, "SIGOPT:Using Schema to Optimize XML Query
Processing," in International Conference on Data Engineering (ICDE), Istanbul, Turkey, 2007,
pp. 1456-1460.
[18] C. Ting, L. Jiaheng, and W. L. Tok, "On Boosting Holism in XML Twig Pattern Matching
Structural Indexing Techniques," in International Conference on Management of Data (ACM
SIGMOD), Maryland, USA 2005, pp. 455-466
[19] J. Zhou, M. Xie, and X. Meng, "TwigStack+:Holistic Twig Join Pruning Using Extended
Solution Extension," Wuhan University Journal of Natural Sciences (WUJNS), vol. 8:2B, pp.
603-609, 2007.
[20] S. Abiteboul, "Querying Semistructured Data," in The International Conference on
Database Theory (ICDT) Delphi, Greece., 1997.
[21] S. Abiteboul, D. Quass, J. McHugh, J. Widom, and J. L. Wiener, "The Lorel Query
Language for Semistructured Data," International Journal on Digital Libraries, vol. 1(1), pp.
68-88, 1997.
[22] B. F. Cooper, N. Sample, M. J. Franklin, G. R. Hjaltason, and M. Shadmon, "A Fast Index
for Semistructured Data," in The 27th International Conference on Very Large Databases
(VLDB) Roma, Italy, 2001.

[23] J. McHugh and J. Widom, "Query Optimization for XML," in VLDB Edinburgh, Scotland,
1999.
[24] T. Milo and D. Suciu, "Index Structures for Path Expressions," in ICDT Jarujalem, Israel,
1999.
[25] A. A. d. Sousa, J. L. Perira, and J. A. Carvalho, "Querying XML Databases," in The 12th
InternationalConference of the Chilean Computer Science Society (SCCC) IEEE, 2002.
[26] R. Goldman and J. Widom, "DataGuides:Enabling Query Formulation and Optimization in
Semistructured Databases," in International Conference on Very Large Databases (VLDB),
Athens, Greece, 1997, pp. 436-445.
[27] F. Rizzolo and A. Mendelzon, "Indexing XML Data with ToXin," in Research Report
Department of Computer Science, University of Toronto, Canada, 2001.
[28] C W. Chung, J K. Min, and K. Shim, "APEX: An Adaptive Path Index for XML Data,"
in ACM SIGMOD Madison, Wisconsin, USA, 2002.
[29] N. Zhang, M. T. Ozsu, I. F. llyas, and A. Aboulnaga, "FIX:Feature-based Indexing
Technique for XML Documents," in The 32nd International Conferences on Very Large
databases(VLDB) Seoul, Korea, 2006.
[30] J. P. Yoon, V. Raghavan, and V. Chakilam, "BitCube: A Three-Dimensional Bitmap
Indexing for XML Documents," Journal of Intelligent Information Systems, vol. 17, pp. 241-
254, 2001.
[31] M. Benedikt, W. Fan, and F. Geerts, "XPath Satisfiability in the Presence of DTDs," in
PODS Baltimore, Maryland, 2005.
23
[32] S. Pal, I. Cseri, O. Seeliger, M. Rys, G. Schaller, W. Yu, D. Tomic, A. Baras, B. Berg, D.
Churin, and E. Kogan, "XQuery Implementation in Relational Database System," in The 31st
International Conference on Very Large Databases Trondheim, Norway, 2005.
[33] A. Deutsch, M. Fernandez, D. Florescu, A. Levy, and D. Suciu, "XML-QL: A Query
Language for XML," />[34] A. Bonifati and S. Ceri, "Comparative Analysis of Five XML Query Language,"
SIGMOD, vol. 29:1, pp. 68- 79, 2000.
[35] P. Buneman, M. Fernandez, and D. Suciu, "UnQL: a query language and algebra for
semistructured data based on structural recursion," The VLDB Journal, vol. 9, pp. 76-110, 2000.

[36] A. Balmin and Y. Papakonstantinou, "A Storing and Querying XML Data using
Denormalized Relational Databases," The journal on Very Large Databases (VLDB), vol. 14,
pp. 30-49, 2005.
[37] Y. Chen, S. Davidson, C. Hara, and Y. Zheng, "RRXS: Redundancy reducing XML
storage in relations," in The 29th International Conference on Very Large Databases (VLDB)
Berlin, Germany, 2003.
[38] S Y. Chien, Z. Vagena, and D. Zhang, "Efficient Structural Joins on Indexed XML
Documents," in The 28th International Conference on Very Large Databases (VLDB) Hong
Kong, China, 2002.
[39] F. Du, S. Amer, and J. Freire, "ShreX: Managing XML Documents in Relational
Databases " in The 30th International Conference on Very Large Databases (VLDB) Toronto,
Canada: , 2004.
[40] A. Halverson, V. Josifovski, G. Lohman, H. Pirahesh, and M. Morschel, "ROX: Relational
Over XML," in The 30th International Conference on Very Large Databases Toronto, Canada,
2004.
[41] B. M. Alom, F. A. Henskens, and M. R. Hannaford, "Storing Semistructured Data Into
Relational Database Using Reference Relationship Scheme," in IJCSNS International Journal of
Computer Science and Network Security, VOL.10 No.6, June 2010 133 International
Conference on Software & Data Technologies (ICSOFT) Porto, Portugal 2008.
[42] A. A. A. Aziz and H. Okasha, "Mapping XML DTDs to Relational Schemas," in IEEE,
2005.
[43] F. Bry and S. Schaffert, "The XML Query Language Xcerpt: Design Principles, Examples,
and Semantics," in LNCS 2593 Berlin Heidelberg: Springer-Verlag, 2003.
[44] A. Deutsch, M. Fernandez, and D. Suciu, "Storing Semistructured Data with STORED," in
International Conference on Management of Data (SIGMOD) Pennsylvania, USA., 1999.
[45] A. Deutsch, M. F. Fernandez, and D. Suciu, "Storing Semistructured Data in Relations," in
ICDT, 1999.
[46] D. Florescu and D. Kossman, "Storing and Querying XML Data using an RDMBS," The
IEEE Data Engineering Bulletin, vol. 22(3), pp. 27-34., 1999.
[47] P. J. Harding, Q. Li, and B. Moon, " XISS/R: XML Indexing and Storage System Using

RDBMS," in The 29th International Conference on Very Large Databases (VLDB) Berlin,
Germany, 2003.
[48] S. Pal, I. Cseri, O. Seeliger, G. Schaller, L. Giakoumakis, and V. Zolotov, "Indexing XML
data Stored in a Relational Database," in The 30th International Conference on Very Large
DatabasesToronto, Canada., 2004.
[49] />24
[50] J. Shanmugasadaram, R. Krishnamurthy, I. Tatarinov, E. Shekita, E. Vigias, J. Kiernan,
and J. Naughton, " A General Technique for Querying XML Documents using a Relational
Database System," The journal (SIGMOD), vol. 30(3), pp. 20-26, 2001
Tiểu sử tác giả
B.M.Monjurul ALom người sinh ra ở Bagherpara, Jessore, Bangladesh,
là một nghiên cứu (PhD) học sinh trong trường Khoa học Kĩ thuật điện và máy tính, Đại học
Newcastle, Australia. Ông Alom đã hoàn thành trình độ kĩ thuật MSc của ông tè trường Đại học
kĩ thuật và công nghệ Bangladesh, Dhaka. Nghiên cứu của ông quan tâm và phân tán (cấu trúc
và Semistructured) quản lý cơ sở dữ liệu. Ông Alom là một giáo sư trợ lí tại CSE năm 2004-
2007 và giảng viên từ năm 2000-2004 ở Đại học kĩ thuật công nghệ Dhaka, Gazipur,
Bangladesh.
Tiến sĩ Frans Henskens là một giáo sư của trường điện Cơ khí và Khoa
học Máy tính, Đại học Newcastle Úc. Ông là trưởng phòng kỹ thuật khoa học máy tính và Công
Nghệ Phần Mềm, Phó Trưởng Phòng Công Nghệ Kỹ Thuật và Khoa Học Máy Tính và Trợ lí
tại khoa học kĩ thuật và xây dựng môi trường. Nghiên cứu của ông gồm kĩ thuật của hệ thống
phần mềm linh hoạt, tin sinh học, hệ điều hành và pháp y máy tính, phân phối và tính toán khả
năng phục hồi lưới và sẵn sàng trong hệ thông cơ sở dữ liệu.
Tiến sĩ Michael Hannaford là trợ lí (nghiên cứu sau Đại học) của
FEBE, và một giảng viên cao cấp trong Trường Kĩ Thuật Điện và Khoa Học Máy Tính tại Đại
học Newcastle. Ông quan tâm nghiên cứu trong các lĩnh vực Distributed Computing và thiết kế
và thực hiện lập trình ngôn ngữ.
25

×