Một số nhận xét so sánh về các phƣơng pháp định giá bảng và ma tập

Một phần của tài liệu Datalog và cơ sở dữ liệu suy diễn (Trang 57)

Các lời gọi trong phƣơng pháp định giá SLD đƣợc biểu diễn bởi các vị từ magic trong phƣơng pháp ma tập. Mặt khác, ở bƣớc 3 của phép biến đổi ma tập, đầu quy tắc

magic có cùng tô điểm nhƣ các vị từ magic đƣợc thêm vào quy tắc. Vì vậy các tô điểm trong vị từ magic biểu diễn các đối buộc và các đối tự do c ủa một lời gọi.

Cả hai phƣơng pháp định giá bảng và ma tập thực chất thực hiện cùng một sự tính toán và đều là các thuật toán hƣớng đích. Sự khác nhau cơ bản trong việc thực hiện của cả hai cách tiếp cận này là về mặt cấu trúc dữ liệu. Phƣơng pháp định giá bảng duy trì một cây stack của phép tính sao cho các câu trả lời đƣợc trả về trực tiếp đối với các phép tính toán. Với phƣơng pháp định giá ma tập, các câu trả lời đƣợc đƣa ra bằng cách thực hiện phép toán nối. Mặt dù chiến lƣợc định giá bảng đƣợc xem là thuộc cách tiếp cận trên xuống và phép biến đổi ma tập đƣợc xem là dƣới lên, nhƣng điều đáng ghi nhận là định giá bảng trình bày một thành phần dƣới lên trong khi phép biến đổi ma tập trình bày một thành phần trên xuống trong các chiến lƣợc chung của chúng.

Một điểm bất lợi của hai phƣơng pháp định giá bảng và ma tập là quá trình tìm câu trả lời truy vấn không tách rời đƣợc không gian tìm kiếm ra khỏi chiến lƣợc tìm kiếm.

Phƣơng pháp ma tập loại bỏ một nét đặc trƣng của phƣơng pháp định giá bảng, đó là chia sẻ câu trả lời giữa các lời gọi giống nhau.

2.6. Kết luận

Chƣơng 2 đã tập trung nghiên cứu các các phƣơng pháp tối ƣu câu truy vấn trong chƣơng trình Datalog theo ba cách tiếp cận khác nhau. Luận văn đã thảo luận một cách chi tiết, phân tích làm rõ đặc trƣng, ý nghĩa của mỗi cách tiếp cận. Các phƣơng pháp nhằm ngăn chặn các vòng lặp vô hạn khi tìm kiếm lời giải của câu truy vấn đối với chƣơng trình Datalog bằng phƣơng pháp định giá bảng cũng nhƣ thuật toán định giá chƣơng trình Datalog theo các thành phần liên thông mạnh đã đƣợc phân tích, xem xét. Trong chƣơng 3 sẽ thảo luận một số vấn đề liên quan đến phƣơng pháp ma tập nhằm nâng cao hiệu quả của nó.

CHƢƠNG 3. PHƢƠNG PHÁP MA TẬP

Chƣơng 3 trình bày kỹ hơn về phƣơng pháp biến đổi ma tập và thảo luận một số hạn chế của phép biến đổi ma tập. Từ đó đã có đƣợc sự cải tiến thuật toán ma tập trên một số lớp con của chƣơng trình Datalog là chƣơng trình Datalog tuyến tính phải và chƣơng trình Datalog không đệ qui. Một số cải tiến khác về thuật toán ma tập trên chƣơng trình Datalog cũng đƣợc xem xét [6].

Một phần của tài liệu Datalog và cơ sở dữ liệu suy diễn (Trang 57)