Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 13 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
13
Dung lượng
256,01 KB
Nội dung
TẠP CHÍ KHOA HỌC, Đại học Huế, Số 58, 2010 SIÊU ĐỒ THỊ KẾT NỐI ĐỐI TƯỢNG – MỘT CÁCH TIẾP CẬN TRONG TỐI ƯU HOÁ CÂU TRUY VẤN ĐỐI TƯỢNG LỒNG NHAU Lê Mạnh Thạnh Đại học Huế Hoàng Bảo Hùng Sở Thông tin Truyền thông tỉnh Thừa Thiên Huế TÓM TẮT Trong sở liệu hướng đối tượng, truy vấn đối tượng lồng sử dụng thường xuyên Các cấu trúc lồng biểu diễn biểu thức điều kiện truy vấn hai dạng: truy vấn lồng biểu thức đường dẫn có chứa kết nối ẩn tân từ lồng Đối với truy vấn lồng, phân tích ước lượng chi phí biểu thức đại mệnh đề số lồng nhau, việc định giá cho kết chi phí khơng hiệu Vì vậy, phương pháp đưa báo làm phẳng truy vấn truy vấn có cấu trúc lồng sử dụng siêu đồ thị kết nối đối tượng, phương pháp làm tăng tính hiệu cho việc thực thi xử lý truy vấn sở liệu hướng đối tượng Mở đầu Để xử lý tân từ lặp (lồng), Cho W [3] đưa phương pháp ước lượng chi phí phụ thuộc tỷ số số đối tượng lớp bắt đầu biểu thức đường dẫn tổng số đối tượng lớp, dựa mối quan hệ nhiều @ nhiều lớp Tỷ số tham số lựa chọn trình thiết kế CSDL vật lý Đối với truy vấn lồng, Cluet S [4] đề xuất phương pháp tối ưu theo hai bước Đầu tiên, biến đổi truy vấn mức ngôn ngữ nhằm xử lý cách hiệu biểu thức chung truy vấn độc lập Sau đó, truy vấn biên dịch thành biểu thức đại số lồng áp dụng phương pháp biến đổi đại số Tuy nhiên, phân tích ước lượng vòng lặp lồng biểu thức đại số, nhận thấy biểu thức kết có chi phí khơng hiệu Do đó, phương pháp chúng tơi đề xuất phần sau giải vấn đề xử lý cho truy vấn lồng giai đoạn “làm phẳng” truy vấn lồng phương pháp rút gọn siêu đồ thị kết nối đối tượng, giúp cho phép định giá hiệu Trong báo này, xuất phát từ ý tưởng biểu diễn tối ưu hóa truy vấn siêu đồ thị Ullman J.D [9] Han [5], đưa khái niệm siêu đồ thị kết nối đối tượng để biểu diễn truy vấn đối tượng OQL, đặc biệt xử lý truy vấn lồng Từ đó, đề xuất thuật toán ước lượng siêu cạnh thuật toán thu gọn siêu đồ thị kết nối đối tượng 121 Biểu diễn truy vấn đối tượng ký pháp siêu đồ thị Trước hết, cách hình thức xét định nghĩa khái niệm siêu đồ thị kết nối đối tượng sau [6]: Định nghĩa Siêu đồ thị kết nối đối tượng sáu sH, lbH), đó: (i) CH tập hữu hạn lớp tham gia truy vấn (ii) VH tập hữu hạn nút (iii) LH tập hữu hạn nhãn = (CH, VH, EH, LH, (iv) EH = EC ∪ EQ @ tập siêu cạnh (hữu hạn), EC, EQ tập siêu cạnh biểu diễn lớp đối tượng thành phần truy vấn (v) sH: VH → EH ánh xạ khởi tạo siêu cạnh từ tập nút (vi) lbH: EH → LH hàm gán nhãn cho siêu cạnh, cho ∀ e ∈ EH lbH(e) ∈ LH Ví dụ 2.1 Xét siêu đồ thị kết nối đối tượng biểu diễn truy vấn sau: select A from c1, c2, c3 where c1.A = c2.F and (c1.A + c1.B > c3.D) and (c3.E ≤ c2.G) A B C D E G H Hình Siêu đồ thị kết nối đối tượng ví dụ 2.1 Trong đó, ta có: CH = {c1, c2, c3}, c1 = (A, B, C), c2 = (G, H) c3 = (D, E, F) lớp đối tượng VH = {A, B, C, D, E, F, G, H}: tập nút, LH = {e1, e2, f1, f2, “head”}: nhãn EH = EC ∪ EQ, với EC gồm tập siêu cạnh gán nhãn {e1, e2, e3} biểu diễn lớp c1, c2, c3 Và EQ có siêu cạnh biểu diễn kết truy vấn, biểu thức điều kiện truy vấn tương ứng có nhãn {f1, f2, “head”} Đối với điều kiện “c1.A = c2.F” thực “trộn” hai nút đặt nhãn “A” Từ định nghĩa (trong phần sau, siêu đồ thị kết nối đối tượng gọi tắt 122 siêu đồ thị), sử dụng ký pháp siêu đồ thị để biểu diễn cho truy vấn OQL sau: @ Tập nút siêu đồ thị tập thuộc tính thuộc lớp tham gia truy vấn Mỗi thuộc tính lớp ci biểu thị nút Nếu hai lớp ci cj có số thuộc tính kế thừa từ siêu lớp đó, chúng kế thừa tất thuộc tính từ siêu lớp, tạo riêng cho thuộc tính nút khác @ Các siêu cạnh siêu đồ thị tạo thành từ biểu thức điều kiện lớp ci: Xét biểu thức điều kiện mệnh đề where, biểu thức điều kiện chia dạng sau: A = a, (1.1) A = B, (1.2) A θ B, θ ∈ { < , ≤ , ≠ , > , ≥}, (1.3) A θ B, θ ∈ {⊂ , ⊆ , ≠ , ⊃ , ⊇} (1.4) đó, A, B thuộc tính lớp a Các siêu cạnh tập với số lượng nút hữu hạn, biểu diễn lớp, ta gọi siêu cạnh đối tượng vẽ đường khép kín bao quanh nút siêu cạnh Gán nhãn tên lớp Đối với biểu thức điều kiện dạng (1.3) (1.4), tạo siêu cạnh chứa thuộc tính có mặt biểu thức Những siêu cạnh gọi siêu cạnh điều kiện chúng biểu thị đường nét chấm khép kín Điều kiện có dạng (1.1) trở thành nhãn “A = a”của nút biểu diễn thuộc tính tương ứng Biểu thức điều kiện có dạng A = B (1.2), với A, B thuộc tính hai lớp (có thể thuộc tính kế thừa từ siêu lớp đó), chọn thuộc tính đại diện đặt nhãn chung tên hai thuộc tính @ Nếu có hai điều kiện tập thuộc tính, phải đặt nhãn riêng cho siêu cạnh để phân biệt chúng @ Các thuộc tính mệnh đề select bao đường liền khép kín gán nhãn “head”, gọi siêu cạnh đỉnh Siêu cạnh đỉnh tương ứng với lớp @ kết truy vấn 123 @ Siêu cạnh kết nhập chứa thuộc tính tham gia biểu thức chứa phép toán {IS, IN, UNION, FORALL, EXIST, } truy vấn lồng nhau, vẽ đường nét rời khép kín Các siêu cạnh kết nhập gán nhãn tương ứng với tên phép toán Truy vấn đơn có khối select from where (SFW); Truy vấn lồng OQL có nhiều khối SFW Truy vấn lồng biểu diễn siêu đồ thị xây dựng từ siêu đồ thị khối SFW đơn liên kết với qua siêu cạnh kết nhập Chúng ta biểu diễn hình thức lược đồ đối tượng S = (s1, …, sn), si lớp S truy vấn đối tượng QE = (s1, …, sm, R, p1, …, pk), với si (i = 1,…, m) lớp tham gia truy vấn, R lớp/kiểu kết truy vấn pj (j = 1, …, k) biểu thức điều kiện mệnh đề where Thuật toán 2.1: Khởi tạo siêu đồ thị truy vấn đối tượng (không chứa truy vấn lồng) Vào: Lược đồ đối tượng S = (s1, …, sn) Truy vấn đối tượng QE = (s1, …, sm, R, p1, …, pk) Ra: Siêu đồ thị Phương pháp: (1) SC := ∅ (2) V := (s1, …, sm) (3) for si ∈ V (4) if (si siêu lớp gốc) then //không kế thừa từ siêu lớp khác Khởi tạo siêu cạnh đối tượng e = sH({si}) nhãn lbH(e) (5) (6) //tập chứa siêu cạnh đối tượng siêu đồ thị else if (si lớp kế thừa đơn kế thừa bội) then (7) Xử lý trường hợp xung đột tên với thuộc tính kế (8) Khởi tạo lớp si’ chứa thuộc tính lớp thuộc tính (9) Khởi tạo siêu cạnh đối tượng e = sH({si’}) gán nhãn thừa kế thừa lbH(e) (10) SC := SC ∪ e (11) Khởi tạo siêu cạnh đỉnh h = sH({R}) lbH(h) = “head” (12) SC := SC ∪ h 124 (13) SD := ∅ (14) for pi ∈ (p1, …, pk) (15) //tập chứa siêu cạnh điều kiện siêu đồ thị if (pi có dạng (3.3) (3.4)) then (16) Khởi tạo siêu cạnh điều kiện f = sH({pi}) (17) SD := SD ∪ f (18) (19) else Gán nhãn cho nút lbH(e) = “= a” := SC ∪ SD Từ định nghĩa, khẳng định thuật toán 2.1 đắn độ phức tạp tính tốn thuật toán O(n2), với n số lớp tham gia truy vấn Trên sở thuật toán 2.1, xây dựng thuật toán khởi tạo siêu đồ thị biểu diễn truy vấn lồng Với bước xác lập siêu đồ thị đơn, tạo siêu đồ thị kết từ liên kết siêu đồ thị đơn với siêu cạnh kết nhập Thuật toán 2.2: Khởi tạo siêu đồ thị truy vấn lồng OQL Vào: Lược đồ đối tượng S = (s1, …, sn) Truy vấn QE = (s1, …, sm, R, p1, …, pk), tập TT ⊆ {is, in, union, diff, forall, exists} tập toán tử tham gia mệnh đề where truy vấn QE Ra: Siêu đồ thị Phương pháp: (1) (2) (3) := ∅ for (mỗi truy vấn QEi truy vấn QE) Khởi tạo siêu đồ thị (4) (5) := ∪ i với QEi (Thuật toán 2.1) i for (mỗi toán tử ti ∈ TT) (6) Khởi tạo siêu cạnh kết nhập g có nhãn ti chứa siêu cạnh đỉnh siêu đồ thị vế phải ti thuộc tính vế trái ti (7) := ∪g Ví dụ 2.2 Tìm tên tất sinh viên thành phố với giảng viên có tên “Huế” define SinhVien as p1 select (p1.name) from p1, p2 GiangVien 125 where p1.tpho = p2.tpho AND p2.hoten = “Hu4” Truy vấn ví dụ 2.2 chứa kết nối dựa giá trị (p1.tpho = p2.tpho) gán nhãn “tpho”, trộn nút có nhãn “tpho” “Huế” GiangVien hoten tpho … … … hoten SinhVien Hình 2.2 Siêu đồ thị biểu diễn cho ví dụ 2.2 Ví dụ 2.3 Xét truy vấn cho biết tên cán giảng viên (cbgv) khoa có ngân sách cấp lớn 250 (đơn vị tính: triệu đồng) có mức lương lớn 2.4 select e.hoten from GiangVien as e where e.luong >= 2.4 AND e.makhoa IN ( select s.makhoa from Khoa as s where s.ngansach > 250) Siêu đồ thị ví dụ 2.3 khởi tạo sau: Các siêu cạnh đối tượng biểu diễn lớp GiangVien Khoa Đối với siêu cạnh đỉnh, có hai siêu cạnh đỉnh: e.hoten @ siêu cạnh đỉnh (kết truy vấn), s.makhoa @ siêu cạnh đỉnh khối SFW lồng Hai siêu cạnh điều kiện e.luong >= 2.4, s.ngansach > 250 siêu cạnh kết nhập e.makhoa gán nhãn IN Hình 2.2 Biểu diễn siêu đồ thị ví dụ 2.3 126 Phương pháp ước lượng siêu đồ thị 3.1 Ước lượng siêu cạnh [6] Biểu diễn hình thức cho siêu đồ thị truy vấn hướng đối tượng dãy kiện: = (E1, E2 , , En), đó, kiện Ei siêu cạnh đối tượng, siêu cạnh điều kiện siêu cạnh kết nhập Lớp dẫn xuất thu sau tác động kiện Ej ký hiệu Lớp_dẫn_xuất(E1, , Ej), E1 phải siêu cạnh đối tượng (trường hợp siêu đồ thị có siêu cạnh phải siêu cạnh đối tượng) Thủ tục Ướclượngsiêucạnh nhận vào lớp dẫn xuất thu sau tác động kiện Ej@1 kiện Ej, kết thủ tục lớp dẫn xuất với kiện Ej Procedure Ướclượngsiêucạnh(Lớp_dẫn_xuất(E1, , Ejd1), Ej) Vào: Lớp_dẫn_xuất(E1, , Ejd1) kiện Ej Ra: Lớp_dẫn_xuất(E1, , Ej) Phương pháp: (1) Khởi tạo, Ướclượngsiêucạnh(E1) cho kết quả: Lớp_dẫn_xuất(E1) = c1, đó, c1 lớp tương ứng với siêu cạnh đối tượng E1 (2) if (Ej điều kiện siêu cạnh điều kiện) then Lớp_dẫn_xuất(E1, , Ej) = σF(Lớp_dẫn_xuất(E1, , Ejd1)) với F biểu thức điều kiện tương ứng với Ej (3) if (Ej siêu cạnh đối tượng lớp Cj có giao với siêu đồ thị) then Lớp_dẫn_xuất(E1, , Ej) = Lớp_dẫn_xuất(E1, , Ejd1)) (4) Cj if (Ej siêu cạnh đối tượng không giao với siêu đồ thị) then Lớp_dẫn_xuất(E1, , Ej) = Lớp_dẫn_xuất(E1, , Ejd1)) × Cj Trong ví dụ 2.2, S = (GiangVien, SinhVien), ta có: Lớp_dẫn_xuất(GiangVien, SinhVien) = Lớp_dẫn_xuất(GiangVien) SinhVien Khi tất siêu cạnh siêu đồ thị ước lượng cách tác động kiện để thu lớp dẫn xuất Lớp dẫn xuất kết chiếu lên tập thuộc tính siêu cạnh đỉnh, câu trả lời truy vấn Thuật toán 3.1: Ước lượng siêu cạnh siêu đồ thị Vào: Siêu đồ thị = (E1, E2, , En), R siêu cạnh đỉnh Ra: Lớp kết truy vấn 127 Phương pháp: (1) Biểu diễn siêu đồ thị (2) for j = to n = (E1, E2, , En), với dãy kiện Ei Ướclượngsiêucạnh(Lớp_dẫn_xuất(E1, , Ejd1), Ej) (3) Call (4) Bổ sung Lớp_dẫn_xuất(E1, , Ej) vào (5) = πR(Lớp_dẫn_xuất(E1, , En)) Mệnh đề Thuật toán 3.1 dừng sau hữu hạn bước cho câu trả lời Chứng minh Rõ ràng số kiện hữu hạn, thuật tốn 3.1 dừng sau n lần tác động kiện Ej lên lớp dẫn xuất, n số kiện siêu đồ thị Để chứng minh thuật toán 3.1 trả câu trả lời truy vấn cho, chứng minh quy nạp sau: Trường hợp sở: n = 1, = (E1), E1 siêu cạnh đối tượng, ta có: = πR(E1) = πR(C1) – câu trả lời truy vấn Giả sử lớp dẫn xuất thứ k thu sau tác động kiện Ek ước lượng k siêu cạnh siêu đồ thị (Lớp_dẫn_xuất(E1, , Ek)) Mặt khác, lớp dẫn xuất thu bước thứ k lại đầu vào cho bước ước lượng thứ (k+1), k = n sau n bước ước lượng siêu cạnh, ta có lớp dẫn xuất thu là: Ướclượngsiêucạnh(Lớp_dẫn_xuất(E1, , End1), En) = Lớp_dẫn_xuất(E1, , En) Sau chiếu lên siêu cạnh đỉnh ta có kết truy vấn: = πR(Lớp_dẫn_xuất(E1, , En)) – kết truy vấn Ví dụ, xét truy vấn ví dụ 2.2, có dãy kiện siêu đồ thị = (GiangVien, hoten = “Hu4”, SinhVien) Áp dụng thuật tốn 3.1, ta có bước ước lượng sau: (1) Khởi tạo lớp dẫn xuất tương ứng với siêu cạnh đối tượng GiangVien, (2) Áp dụng điều kiện chọn “hoten = “Hu4” siêu cạnh đối tượng GiangVien, (3) Ước lượng siêu cạnh đối tượng SinhVien, kết nối truyền thống dựa giá trị, (4) Chiếu lớp dẫn xuất thu sau phép kết nối lên siêu cạnh đỉnh (hoten) Chúng ta nhận thấy từ ví dụ 2.4, trật tự xếp siêu cạnh cho dãy bước ước lượng khác nhau, tương ứng với thứ tự phép toán thực thi Đây tham số xác định khơng gian tìm kiếm phương án thực thi truy vấn 128 Trong thuật toán 3.1, chưa xử lý cho trường hợp siêu cạnh kết nhập, tức là, xét siêu đồ thị biểu diễn truy vấn đối tượng lồng Các truy vấn lồng có thứ tự thực truy vấn theo trật tự từ “trong ngoài”, nghĩa là, truy vấn cấp sâu thực trước Giả sử siêu đồ thị biểu diễn truy vấn đối tượng lồng mơ tả mơt cách hình thức dãy kiện xây dựng thuật toán thu gọn siêu đồ thị = (E1, E2, …Ei, EAj, Ei+1, …, Ek, …), Ei siêu cạnh đối tượng siêu cạnh điều kiện, EAj siêu cạnh kết nhập Chúng ta mở rộng thuật toán 3.1 việc xử lý siêu cạnh kết nhập sau: Trước hết, ước lượng tất siêu cạnh El (l = i + 1, …, k) sau siêu cạnh kết nhập EAj, khơng tính tổng qt giả sử Ek siêu cạnh cuối ước lượng (trước ước lượng siêu cạnh kết hợp EAj) Sau đó, tác động kiện EAk lớp dẫn xuất thu sau tác động kiện thứ Ek (EAj’) Như vậy, ’ viết lại = (E1, E2, …Ei, EAj , Ei+1, …, Ek, EAj, …), EAj lớp dẫn xuất kết sau ước lượng siêu cạnh kết nhập Thuật toán 3.2: Thu gọn siêu đồ thị Vào: Siêu đồ thị = (E1, E2, …Ei, EAj, Ei+1, …, Ek, …), R siêu cạnh đỉnh Ra: Lớp kết truy vấn Phương pháp: (1) Biểu diễn siêu đồ thị (2) i := (3) repeat (4) = (E1, E2, …Ei, EAj, Ei+1, …, Ek, …) if (EAj siêu cạnh kết nhập) then (5) for l = i + to k – (6) Call (7) Ướclượngsiêucạnh(Lớp_dẫn_xuất(Ej),Ej+1) Bổ sung Lớp_dẫn_xuất(El, , Ek) vào Call trước EAj Ướclượngsiêucạnh(Lớp_dẫn_xuất(E1, , Eid1), Ei) (8) else (9) Bổ sung Lớp_dẫn_xuất(E1, , Ei) vào (10) inc(i) (11) until (ước lượng tất siêu cạnh (12) = πR(Lớp_dẫn_xuất(E1, , Ek, …)) ) Từ mệnh đề trên, suy thuật toán 3.2 dừng cho kết câu trả lời Độ phức tạp tính tốn thuật tốn 3.2 có thời gian đa thức 129 3.2 Khơng gian tìm kiếm truy vấn Các phương án thực thi truy vấn khơng gian tìm kiếm xét khả lựa chọn, ước lượng lớp siêu cạnh thuộc siêu đồ thị Từ đó, với thuật toán ước lượng thu gọn siêu đồ thị (thuật tốn 3.1 3.2), xây dựng khơng gian tìm kiếm phương án thực thi truy vấn sau (thuật toán 3.3) Chúng ta dùng tập danh sách với phần tử chứa thành phần siêu đồ thị, sau duyệt tập danh sách tương ứng để xác định phương án Thuật tốn 3.3 Khơng gian tìm kiếm truy vấn Vào: Siêu đồ thị Ra: Khơng gian tìm kiếm với tổng số phương án thực thi truy vấn Phương pháp: (1) Sắp xếp lớp, siêu cạnh đối tượng, điều kiện siêu cạnh kết nhập vào tập danh sách {L1} // Bước 1: Ước lượng siêu cạnh điều kiện siêu cạnh kết nhập (2) for danh sách L1 (3) for siêu cạnh E (4) if E siêu cạnh kết nhập then Bổ sung EAj vào L1 sau siêu cạnh cuối Ek (5) //Thuật toán 3.2 (6) else if E siêu cạnh điều kiện then (7) toán 3.1 (8) Ước lượng siêu cạnh điều kiện //Thuật Kết thu danh sách {L1’} // Bước 2: Uớc lượng siêu cạnh đối tượng (9) (10) (11) tương ứng (12) for danh sách L1’ for siêu cạnh đối tượng Thực ước lượng với siêu cạnh điều kiện Kết lưu danh sách {L2} // Bước 3: Ước lượng kết nối (13) for danh sách L2 130 (14) for siêu cạnh (15) (16) Ước lượng kết nối lớp Kết danh sách {L3}; Tập danh sách {L3} không gian tìm kiếm phương án thực truy vấn Chúng ta ký hiệu khơng gian tìm kiếm tổng số phương án thực thi truy vấn đối tượng Định lý Khơng gian tìm kiếm thuật tốn 3.3 có tổng số phương án thực thi truy vấn là: (p + q!+ 2q – 1) ≤ ≤ (q! + p2q – 1) đó, p số siêu cạnh siêu đồ thị, q chi phí phép tốn đại số Chứng minh Khơng gian tìm kiếm thuật tốn 3.3 xác định qua tham số sau: (i) Thứ tự xếp siêu cạnh danh sách, (ii) Chi phí thực phép tốn (iii) Chi phí kết nối truy vấn Đối với (i), p số siêu cạnh số giao hốn thứ tự siêu cạnh danh sách L1 p! Tham số (ii) phụ thuộc vào thiết kế hệ thống chi phí kết nối p siêu cạnh 2p – (iii) Vậy tổng số phương án thực thi truy vấn là: (p + q!+ 2q – 1) ≤ ≤ (q! + p2q – 1) Trong trường hợp xấu nhất, phương án bước ước lượng độc lập danh sách kết bước đầu vào bước sau = q! + p2q – , cịn khơng = q! + p + 2q – Kết luận Tối ưu hóa truy vấn đối tượng tác giả quan tâm nghiên cứu với nhiều kết xây dựng phương án tiếp cận khác phương pháp tối ưu hóa dựa ước lượng chi phí xử lý truy vấn, tối ưu hóa biểu thức đường dẫn truy vấn đối tượng, phương pháp phân tách ngang/dọc lớp đối tượng… Trong báo này, chúng tơi đề xuất phương pháp tối ưu hóa truy vấn đối tượng phát triển từ cách tiếp cận siêu đồ thị Ullman J.D [9] Han [5] đề xuất để giải cho lớp truy vấn đối tượng lồng với thuật toán ước lượng siêu cạnh đối tượng có chi phí xử lý truy vấn hiệu so với phương pháp biến đổi biểu thức đại số đối tượng phương pháp tối ưu biểu thức đường dẫn Mặt khác, việc sử dụng ký pháp siêu đồ thị đối tượng biểu diễn tối ưu cho lớp truy vấn đối tượng phức Vấn đề xây dựng thuật toán tổng quát để rút gọn siêu đồ thị đối 131 tượng kết hợp khơng gian tìm kiếm với mơ hình ước lượng chi phí truy vấn cho phép xác định phương án thực thi truy vấn tối ưu nghiên cứu giới thiệu báo sau TÀI LIỆU THAM KHẢO Đoàn Văn Ban, Lê Mạnh Thạnh Hoàng Bảo Hùng Sự tương đương biểu diễn ngôn ngữ truy vấn OQL đại số đối tượng, Tạp chí Tin học Điều khiển học, 20(3), (2004), 257–269 Cattel R.G.G., Barry D.K The Object Database Standard: ODMG 3.0, Morgan Kaufmann Publishers, 2000 Cho Wan@Sup, Han Wook@Shin, Hong Ki@Hyung and Whang Kyu@Young Estimating Nested Selectivity in ObjectdOriented Databases, ACM, (2000), 94–101 Cluet, Sophie and Moerkotte, Guido Nested Queries In Object Bases, In Fifth International Workshop on Database Programming Languages, Italy, 1995 Han, Jia Liang Optimizing Relational Queries in Connection Hypergraphs: Nested Queries, Views, and Binding Propagations The VLDB Journal, 7, (1998), 1–11 Lê Mạnh Thạnh, Đoàn Văn Ban, Hoàng Bảo Hùng Phương pháp ước lượng truy vấn lồng sở liệu hướng đối tượng siêu đồ thị kết nối Chuyên san Tạp chí Bưu Viễn thơng Cơng nghệ thơng tin, “Các cơng trình nghiên cứu @ Triển khai Viễn thông Công nghệ thông tin”, 14, (2005), 43–49 Trigoni A and Bierman G.M Inferring the Principal Type and the Schema Requirements of an OQL Query In 18th British National Conference on Databases (BNCOD), (2001),185–201 Trigoni A Semantic Optimization of OQL Queries, Technical Report, Number 547, University of Cambridge, Computer Laboratory, UCAM@CL@TR@547, ISSN 1476@2986, 2002 Ullman J D : Principles of Database and Knowledge base Systems Vol I: Classical Database Systems, Computer Science Press New York, 1988 Vol II: The New Technologies, Computer Science Press New York, 1989 132 OBJECT CONNECTION HYPERGRAPHS – AN APPROACH FOR NESTED OBJECT QUERY OPTIMIZATION Le Manh Thanh Hue University Hoang Bao Hung Department of Information and Communications of Thua Thien Hue Province SUMMARY The nested object queries are regularly used in ObjectdOriented Databases (OODB) Nested structures are put in conditional expressions of the queries in two forms: nested subd queries or path expression containing hidden joins – nested predicates in where clause For nested queries, when analyzing the estimated cost of the nested algebraic expression, the expression evaluation result gives out an ineffective cost Therefore, our method proposed in this paper will solve the problems by leveling nested subdqueires in the nested queries This method will increase the effectiveness of the query processing cost – We use object connection hypergraphs to present nested queries 133 ...2 Biểu diễn truy vấn đối tượng ký pháp siêu đồ thị Trước hết, cách hình thức xét định nghĩa khái niệm siêu đồ thị kết nối đối tượng sau [6]: Định nghĩa Siêu đồ thị kết nối đối tượng sáu sH,... gia truy vấn Trên sở thuật toán 2.1, xây dựng thuật toán khởi tạo siêu đồ thị biểu diễn truy vấn lồng Với bước xác lập siêu đồ thị đơn, tạo siêu đồ thị kết từ liên kết siêu đồ thị đơn với siêu. .. “A” Từ định nghĩa (trong phần sau, siêu đồ thị kết nối đối tượng gọi tắt 122 siêu đồ thị) , sử dụng ký pháp siêu đồ thị để biểu diễn cho truy vấn OQL sau: @ Tập nút siêu đồ thị tập thuộc tính