Tải bản đầy đủ (.pdf) (27 trang)

Tối ưu hóa truy vấn trong cơ sở dữ liệu phân tán

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 (445.26 KB, 27 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ LOAN

TỐI ƯU HOÁ TRUY VẤN
TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN
LUẬN VĂN THẠC SĨ
KHOA H ỌC M ÁY T ÍNH

Thái nguyên, 2011
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ LOAN

TỐI ƯU HOÁ TRUY VẤN
TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN
CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ SỐ: 60 48 01

LUẬN VĂN THẠC SĨ
KHOA HỌC M ÁY T ÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS ĐOÀN VĂN BAN


Thái nguyên, 2011

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

Thái nguyên, 2011




LỜI CAM ĐOAN
Tôi xin cam đoan, kết quả của luận văn hoàn toàn là kết quả
của tự bản thân tôi tìm hiểu, nghiên cứu. Các tài liệu tham khảo
đƣợc trích dẫn và chú thích đầy đủ.

Tác giả
NGUYỄN THỊ LOAN

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




LỜI CẢM ƠN
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành nhất đến thầy
PGS.TS Đoàn Văn Ban đã định hƣớng và nhiệt tình hƣớng dẫn,
giúp đỡ tôi rất nhiều về mặt chuyên môn trong quá trình làm luận
văn.
Tôi xin gửi lời biết ơn sâu sắc đến các thầy, các cô đã dạy dỗ
và truyền đạt những kinh nghiệm quý báu cho chúng tôi trong suốt
hai năm cao học ở trƣờng Đại học Công nghệ thông tin và truyền

thông.
Cuối cùng tôi xin dành tình cảm thân thiết nhất cho bạn bè,
đồng nghiệp, cha mẹ và gia đình, những ngƣời luôn gần gũi để
động viên, chia sẻ cùng tôi trong suốt thời gian qua.
Thái Nguyên, tháng 9 năm 2011
Nguyễn Thị Loan

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




MỤC LỤC
Trang phụ bìa

Trang

Lời cam đoan

i

Lời cảm ơn

ii

Mục lục

iii

Danh mục các hình vẽ, đồ thị


vi

PHẦN MỞ ĐẦU ………………………………………………………………1
1. Đặt vấn đề…………………………………………………………….1
2. Đối tƣợng và phạm vi nghiên cứu……………………………………. 1
3. Hƣớng nghiên cứu của đề tài…………………………………………. 1
4. Phƣơng pháp nghiên cứu………………………………………………2
5. Ý nghĩa khoa học của đề tài……………………………………………2
6. Các kết quả dự kiến…………………………………………………….2
Chƣơng 1. CƠ SỞ DỮ LIỆU PHÂN TÁN…………………………………… .3
1.1. Khái niệm về hệ cơ sở dữ liệu phân tán…………………………… 3
1.1.1. Khái niệm………………………………………………………...3
1.1.2. Các đặc điểm chính của cơ sở dữ liệu phân tán…………………4
1.1.3. Mục đích của việc sử dụng cơ sở dữ liệu phân tán……………...8
1.2. Các đặc trƣng trong suốt của cơ sở dữ liệu phân tán………………...9
1.2.1.Trong suốt phân tán………………………………………………9
1.2.2. Trong suốt giao dịch…………………………………………….10
1.2.3.Trong suốt các sự cố……………………………………………..10
1.2.4. Trong suốt thao tác……………………………………………...10
1.2.5.Trong suốt về tính không thuần nhất…………………………… 10
1.3.Kiến trúc cơ bản của cơ sở dữ liệu phân tán…………………………10
1.3.1.Sơ đồ tổng thể……………………………………………………11
1.3.2. Sơ đồ phân đoạn……………………………………………… 11
1.3.3. Sơ đồ định vị…………………………………………………….12
1.3.4. Sơ đồ ánh xạ địa phương……………………………………….12

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên





1.3.5. Chia sẻ tài nguyên……………………………………………… 14
1.4. Các kỹ thuật xây dựng cơ sở dữ liệu phân tán……………………......14
1.4.1.Phân tán……………………………………………………………14
1.4.1.1. Phân đoạn ngang………………………………………… …14
1.4.1.2. Phân đoạn ngang dẫn tiếp……………………………….......15
1.4.1.3. Phân đoạn dọc……………………………………………….16
1.4.1.4. Phân đoạn hỗn hợp…………………………………………..17
1.4.2.Nhân bản dữ liệu………………………………………………..18
1.4.3. Định vị dữ liệu………………………………………………….19
1.4.4. Hệ quản trị CSDL phân tán…………………………………….19.
1.5. Kết luận……………………………………………………………….20
Chƣơng 2. TỐI ƢU HÓA TRUY VẤN TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN
2.1. Các chiến lƣợc tối ƣu hóa cơ bản……………………………………..21
2.2. Các phép biến đổi đại số………………………………………………22
2.2.1. Các yêu cầu của phép biến đổi tối ưu hóa câu truy vấn………….22
2.2.2. Biểu thức tương đương……………………………………………23
2.2.3. Các qui tắc liên quan đến phép kết nối và tích Decartes………....23
2.2.4. Các qui tắc liên quan đến phép chọn và phép chiếu……………..24
2.2.5. Thuật toán cải tiến cây biểu diễn biểu thức quan hệ…………......25
2.3. Phân rã câu truy vấn thành những câu truy vấn con………………….30
2.3.1. Đồ thị nối các quan hệ……………………………………………30
2.3.2. Tách câu truy vấn thành các câu truy vấn con…………………..31
2.3.3. Dùng phép nửa kết nối để giảm kích thước quan hệ…………….32
2.3.4. Phương pháp thay thế n –bộ………………………………….....32
2.4. Các kỹ thuật tối ƣu hóa tập trung…………………………………….33
2.4.1. Thuật toán INGRES…………………………………………...…33
2.4.2. Thuật toán System R……………………………………………..37
2.5. Phân rã cây truy vấn……………………………………………….....40

2.5.1. Chuẩn hóa……………………………………………………….40
2.5.2.Phân tích………………………………………………………....42

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




2.5.3. Loại bỏ dư thừa…………………………………………………44
2.5.4. Viết lại…………………………………………………………...45
2.6. Định vị dữ liệu phân tán…………………………………………......48
2.6.1. Rút gọn phân đoạn ngnang nguyên thủy………………………48
2.6.2. Rút gọn phân đoạn dọc………………………………………..51
2.6.3. Rút gọn phân đoạn gián tiếp…………………………………..52
2.6.4. Rút gọn phân đoạn hỗn hợp…………………………………...54
2.7. Khái quát về xử lý câu truy vấn…………………………………....55
2.7.1. Vấn đề xử lý truy vấn………………………………………….56
2.7.2. Các mục tiêu của xử lý câu truy vấn…………………………..56
2.7.3. Các giai đoạn xử lý câu truy vấn………………………………57
2.7.4. Tối ưu hóa các truy vấn phân tán……………………………..57
2.7.4.1. Đầu vào bộ tối ưu hóa câu truy vấn………………………58
2.7.4.2. Thứ tự kết nối trên các câu truy vấn đoạn………………..63
2.7.4.3.Thứ tự kết nối……………………………………………...63
2.7.4.4. Các thuật toán dựa trên phép nửa kết nối………………...65
2.8. Các thuật toán tối ƣu hóa truy vấn phân tán……………………….69
2.8.1. Thuật toán INGRES phân tán…………………………………70
2.8.2. Thuật toán R*………………………………………………….72
2.8.3. Thuật toán SDD -1…………………………………………….76
2.8.4. Các thuật toán AHY ( Apers – Hevner – Yao)…………………80
2.9. Kết luận…………………………………………………………….86

Chƣơng 3. CÀI ĐẶT VÀ THỬ NGHIỆM THUẬT TOÁN…………………89
3.1. Xác định thuật toán………………………………………………...89
3.2. Cài đặt thử nghiệm thuật toán……………………………………...89
3.2.1. Cấu trúc cơ sở dữ liệu………………………………………….89
3.2.2. Xây dựng ứng dụng……………………………………………90
3.2.3. Thử nghiệm 1………………………………………………….92
3.2.4. Thử nghiệm 2………………………………………………….94
3.3. Kết luận. …………………………………………………………..95

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI……………………96
TÀI LIỆU THAM KHẢO……………………………………………………97

CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1. Trong suốt phân đoạn……………………………………………6
Hình 1.2. Sự trong suốt về vị trí……………………………………………7
Hình 1.3. Sự trong suốt ánh xạ cục bộ……………………………………..8
Hình 1.4 Kiến trúc cơ sở dữ liệu phân tán…………………………………11
Hình 1.5. Các đoạn và hình ảnh vật lý của một quan hệ tổng thể…………12
Hình 1.6. Cây phân tán của quan hệ……………………………………….18
Hình 2.1. Cây biểu diễn biểu thức hỏi……………………………………..27
Hình 2.2. Cây với tổ hợp phép chọn………………………………………29
Hình 2.3. Cây kết quả với sự phân nhóm các phép toán…………………..30
Hình 2.4. Đồ thị nối quan hệ………………………………………………31
Hình 2.5. Đồ thị nối các quan hệ…………………………………………..32
Hình 2.6. Đồ thị các quan hệ có chu trình…………………………………33

Hình 2.7. Gỡ bỏ chu trình bằng cách thay thế n- bộ………………………33
Hình 2.8. Đồ thị kết nối của cây truy vấn…………………………………39
Hình 2.9. Các đồ thị quan hệ……………………………………………....43
Hình 2.10. Đồ thị cây truy vấn không liên thông………………………….44
Hình 2.11. Cây đại số quan hệ…………………………………………….46
Hình 2.12. Cây đại số quan hệ tƣơng đƣơng……………………………....47
Hình 2.13. Cây đại số quan hệ viết lại……………………………………..48
Hình 2.14. Rút gọn cho phân đoạn ngnang với phép chọn………………..49
Hình 2.15. Rút gọn phân đoạn ngang cho phép kết nối……………………50
Hình 2.16. Rút gọn đối với việc phân đoạn dọc…………………………...52
Hình 2.17. Rút gọn phân đoạn gián tiếp.…………………………………..54

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




Hình 2.18. Rút gọn phân đoạn hỗn hợp…………………………………...55
Hình 2.19. Sơ đồ phân lớp cho việc xử lý truy vấn phân tán……………..57
Hình 2.20. Truyền các toán hạng trong phép toán hai ngôi……………….64
Hình 2.21. Đồ thị kết nối của câu truy vấn phân tán……………………...64
Hình 2.22. Biến đổi của câu truy vấn chu trình…………………………...68
Hình 2.23. Câu truy vấn ví dụ và các thống kê…………………………...79
Hình 2.24. Ví dụ một câu truy vấn đơn và các thống kê………………….82
Hình 2.25. Schedule tối ƣu………………………………………………..83
Hình 2.26. Các giai đoạn của việc đánh giá một câu truy vấn phân tán….87

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên





-1-

PHẦN MỞ ĐẦU
1. Đặt vấn đề.
Ngày nay lĩnh vực thương mại ngày càng mở rộng và phát triển . Để kinh
doanh được thuận lợi và có hiệu quả cần phải nắm bắt thông tin nhanh nhất khi
các địa điểm kinh doanh ở xa nhau. Do đó xây dựng 1 hệ thống làm việc dựa trên
cơ sở dữ liệu phân tán là phù hợp với xu hướng hiện nay.
Cơ sở dữ liệu phân tán đã, đang được nghiên cứu và ứng dụng vào thực tế.
Việc cần làm là nghiên cứu và làm sáng tỏ thêm khả năng ứng dụng thực tiễn của
cơ sở dữ liệu phân tán.
Lợi ích cơ bản nhất của cơ sở dữ liệu phân tán là dữ liệu của các cơ sở dữ liệu
vật lý riêng biệt được tích hợp logic với nhau làm cho nhiều người sử dụng trên
mạng có thể truy nhập được.
Cơ sở dữ liệu phân tán với cấp độ tự trị cao ở mỗi điểm. Trong hệ phân tán
các câu truy vấn có thể sử dụng kỹ thuật tối ưu hoá làm giảm thời gian tính toán,
khối lượng truyền thông tin giữa các trạm và giảm không gian bộ nhớ, tránh được
các công việc dư thừa, loại bỏ những phần vô ích.
Khi khối lượng thông tin phải xử lý ngày càng lớn, phong phú và đa dạng
thì vấn đề đặt ra là xử lý thông tin như thế nào để giảm chi phí đến mức tối
thiểu. Một trong các giải pháp có tính khả thi là phải tối ưu hoá các câu lệnh khi
truy vấn dữ liệu nên tôi chọn nghiên cứu “Tối ưu hoá truy vấn trong cơ sở dữ
liệu phân tán” làm đề tài luận văn tốt nghiệp của mình.
2. Đối tƣợng và phạm vi nghiên cứu.
- Đối tượng nghiên cứu là cơ sở dữ liệu phân tán.
- Phạm vi nghiên cứu là một số các kỹ thuật tối ưu hoá truy vấn trong cơ sở
dữ liệu.
3. Hƣớng nghiên cứu của đề tài.

- Nghiên cứu tối ưu hoá truy vấn trong cơ sở dữ liệu phân tán, các nguyên lý
chung, các kỹ thuật, các thuật toán liên quan đến vấn đề tối ưu hoá truy vấn và
nghiên cứu cải tiến về tối ưu hoá truy vấn lồng trong cơ sở dữ liệu phân tán.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....




data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....

data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....

data error !!! can't not
read....



×