Nói chung, một câu hỏi truy vấn có nhiều phƣơng pháp khác nhau để tính toán câu trả lời. Nhiệm vụ của hệ thống là chuyển đổi câu hỏi đƣợc đƣa vào bởi ngƣời sử dụng thành một câu hỏi tƣơng đƣơng mà có thể đƣợc tính toán một cách hiệu quả hơn. Quá trình tìm kiếm một chiến lƣợc tốt cho việc xử lý một câu hỏi đƣợc gọi là tối ƣu hoá câu hỏi. Chiến lƣợc đƣợc chọn để thực hiện một phép toán phụ thuộc vào kích thƣớc mỗi quan hệ và sự phân bố giá trị trong các thuộc tính của quan hệ. Bởi vậy có thể dựa vào thông tin thống kê cho mỗi quan hệ R. Những kết quả thống kê bao gồm:
- Số lƣợng các bộ trong quan hệ R
- Kích thƣớc byte của một bản ghi của một quan hệ R
- Số lƣợng các giá trị khác nhau xuất hiện trong quan hệ R cho mỗi thuộc tính riêng biệt.
Những kết quả thống kê trên cho phép ứơc lƣợng kích cỡ kết quả của các phép toán khác nhau, cũng nhƣ chi phí thực hiện các phép toán trên. Các thông tin thống kê về các quan hệ đặc biệt hiệu quả khi sử dụng một chỉ số cho việc xử lý câu hỏi. Sự tồn tại của các cấu trúc dạng này có ảnh hƣởng rõ rệt lên sự lựa chọn một chiến lƣợc xử lý câu hỏi. Mỗi biểu thức đại số quan hệ biểu diễn một chuỗi các phép toán đặc biệt. Bƣớc đầu tiên trong việc lựa chọn một chiến lƣợc xử lý câu hỏi là tìm kiếm một biểu thức đại số quan hệ tƣơng đƣơng với biểu thức đã cho và đƣợc đánh giá là giảm chi phí để xử lý. Có một số các quy tắc tƣơng đƣơng có thể sử dụng để biến đổi một biểu thức thành một biểu thức tƣơng đƣơng với biểu thức đã cho.
Các phƣơng án đánh giá khác nhau cho mỗi biểu thức có thể đƣợc biến đổi nhờ các quy tắc đơn giản và phƣơng án hiệu quả nhất xét trong tất cả các biểu thức sẽ đƣợc chọn. Một số phƣơng pháp tối ƣu hoá với chiến lƣợc tìm kiếm vét
Phƣơng pháp Heuristic đƣợc xây dựng dựa vào các quy tắc chuyển đổi các câu hỏi đại số quan hệ theo hƣớng: "Thực hiện phép chọn càng sớm càng tốt", "Thực hiện phép chiếu sớm" và "Tránh thực hiện tính tích Descartes". Thuật toán có thể không đạt chi phí nhỏ nhất song có thể làm giảm chi phí cho việc tối ƣu hoá.
KẾT LUẬN
Kết quả nghiên cứu của luận văn
Cơ sở dữ liệu là một nguồn tài sản vô cùng quý giá của các tổ chức, các doanh nghiệp. Khai thác và sử dụng cơ sở dữ liệu sao cho thật nhanh chóng và có hiệu quả cao là đòi hỏi tất yếu cho sự phát triển lớn mạnh của các tổ chức. Do đó, trƣớc khi thực hiện các câu truy vấn CSDL cần thiết phải biến đổi về dạng tƣơng đƣơng, tức là dạng cho cùng một kết quả, nhƣng giảm thời gian tính toán. Việc làm đó gọi là "tối ƣu hoá". Trong việc tối ƣu hoá xử lý thông tin, ngƣời ta ƣu tiên việc tối ƣu hoá về thời gian hơn so với việc tối ƣu hoá bộ nhớ lƣu trữ dữ liệu. Luận văn đã tập trung nghiên cứu những vấn đề chính sau:
1. Tìm hiểu về cơ sở dữ liệu bao gồm: CSDL quan hệ, CSDL phân tán.
2. Trình bày, phân tích một số thuật toán tối ƣu hoá truy vấn trên hệ cơ sở dữ liệu tập trung và phân tán.
3. Trình bày, phân tích phƣơng pháp tối ƣu hoá bằng Heuristic.
Nhƣ đã trình bày trong luận văn, thực hiện một truy vấn là thực hiện một loạt các thao tác trên cơ sở dữ liệu để lấy ra những thông tin cần thiết. Trong quá trình thực hiện cần sử dụng một số thuật toán nhƣ sắp xếp thứ tự phép chiếu, phép chọn, phép nối... Nếu các phép toán này không đƣợc sử dụng tốt sẽ dẫn đến mất rất nhiều thời gian xử lý và không gian lƣu trữ. Để khắc phục đƣợc hạn chế này trƣớc hết cần nghiên cứu kỹ về cơ sở dữ liệu và các phƣơng pháp tối ƣu truy vấn để đƣa ra quyết định xem các truy vấn nên đƣợc tối ƣu hoá theo phƣơng pháp nào. Bởi vì, có những phƣơng pháp tối ƣu cho ta câu truy vấn tối ƣu nhất, nghĩa là chi phí phải trả để thực hiện truy vấn cuối cùng là thấp nhất, tuy nhiên nếu không xem xét kỹ đến chi phí phải trả cho quá trình tối ƣu câu
phƣơng pháp tối ƣu hoá truy vấn bằng Heuristic đem lại hiệu quả cao trong việc tối ƣu hoá truy vấn.
Hạn chế của luận văn
Tuy đã hoàn thành đƣợc mục tiêu ban đầu đề ra là nghiên cứu cơ sở lý thuyết
và Tìm hiểu phương pháp tối ưu hoá truy vấn bằng Heuristic nhƣng luận văn
vẫn còn có những hạn chế và sai sót. Kết quả trình bày trong luận văn mới chỉ dừng lại ở phƣơng diện lý thuyết, việc cài đặt các thuật toán, các chiến lƣợc tối ƣu đã đề cập còn gặp nhiều khó khăn. Hiện tại, luận văn mới chỉ thực hiện cài đặt đƣợc một phần những gì đã trình bày và cũng chƣa xét đƣợc đầy đủ các khả năng khác nhau của câu truy vấn trên thực tế.
Hƣớng phát triển
Để tiếp tục thực hiện đƣợc hƣớng nghiên cứu đã đề cập trong luận văn, em sẽ cố gắng nghiên cứu sâu và kỹ hơn nữa rồi tiến hành cài đặt các phƣơng pháp đã nghiên cứu đƣợc, đặc biệt là phƣơng pháp tối ƣu hoá bằng Heuristic. Em hy vọng sẽ tiếp tục nhận đƣợc sự chỉ dẫn của các thầy cô giáo, sự góp ý của các bạn để phát triển luận văn theo hƣớng cài đặt các thuật toán đã nêu trên ứng dụng thực tế.
TÀI LIỆU THAM KHẢO
Tài liệu tiếng Việt:
[1]. Nguyễn Kim Anh, Nguyên lý các hệ cơ sở dữ liệu, NXB ĐH Quốc Gia Hà Nội, 2004
[2]. Trần Tiến Dũng, Giáo trình lý thuyết và thực hành Oracle, NXB Giáo dục, 2000
[3]. Đỗ Phúc, Bài giảng cơ sở dữ liệu nâng cao (Dành cho lớp cao học CNTT), 2004
[4]. Đỗ Phúc - Nguyễn Tăng Tỵ, Giáo trình cơ sở dữ liệu, NXB Đại học QG TP Hồ Chí Minh, 2006
[5]. Jeffrey D.Ulman, biên dịch Trần Đức Quang (2002), Nguyên lý các hệ cơ sở dữ liệu và cơ sở tri thức, tập I và II, NXB thống kê.
[6]. Nguyễn Bá Tƣờng, Nhập môn cơ sở dữ liệu phân tán, NXB Khoa học và kỹ thuật, 2005
[7]. Phạm Thế Quế, Giáo trình CSDL, Lý thuyết và thực hành, NXB Bƣu Điện, 2004
[8].Tìm hiểu một số vấn đề về tối ưu hoá truy vấn, luận văn thạc sỹ, Nguyễn Thị Vân Anh
Tài liệu tiếng Anh:
[9]. Advanced Database Systems CS632 Spring 2001 http://www.cs.cornell.edu/courses/cs632/2001sp/
[10]. Distributed Database by Farnoush Banaei – Kashani excerpt from
“Principles of Distributed Database System”, M.Tamer Özsu and Patrick Valduriez, April 19,2006
http://infolab.usc.edu/csci585/Spring2006/Lectures/Session17-Query.pdf [11]. INGRES. 15-823. Advanced Topics in Database Systems Performance. 2,
2001 Anastassia
http://www.cs.cmu.edu/~natassa/courses/15-823/S01/lectures/3_Ingres.pdf [12]. Query Optimizationhttp://dbserver.kaist.ac.kr/~parkcs/qo.html
P H A N C O