Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 59 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
59
Dung lượng
618,39 KB
Nội dung
ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KHOA HỌC MÁY TÍNH BÁO CÁO THU HOẠCH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO ĐỀ TÀI: PHÂN MẢNH TRONG CSDL PHÂN TÁN Giáo viên hướng dẫn: Sinh viên thực hiện: PGS. TS. ĐỖ PHÚC NGUYỄN NGỌC LÂM MSSV: CH1101098 LỚP: CH-K6 TP.HCM 08-2012 Lời mở đầu LỜI MỞ ĐẦU Phân mảnh dữ liệu là một trong những hướng nguyên cứu mới trong cơ sở dữ liệu (CSDL), là kỹ thuật thiết kế cơ sở dữ liệu ở mức logic nhằm giảm bớt những truy xuất không cần thiết đến dữ liệu, cho phép thực hiện song song các truy vấn bằng cách chia nó thành một tập các truy vấn con tác dụng lên các mảnh nằm ở các Site được đặt ở những vị trí địa lý khác nhau. Trong những năm gần đây, do các ứng dụng ngày càng phức tạp, các mô hình CSDL trước đó cũng như mô hình CSDL quan hệ bộc lộ nhiều hạn chế trong việc mô hình hóa và xử lý dữ liệu. Có nhiều mô hình CSDL ra đời và phát triển nhằm khắc phục những hạn chế đó, một trong số đó là mô hình CSDL phân tán. Và một trong những đặc trưng của mô hình CSDL phân tán chính là việc phân mảnh dữ liệu. Nội dung của bài tiểu luận gồm 5 chương, chủ yếu lựa chọn và sắp xếp những nội dung cần thiết nhất trong khoảng thời gian và không gian cho phép. Bài tiểu luận trình bày và giới thiệu một cách tương đối hệ thống những kiến thức cơ bản về phân mảnh dữ liệu trong mô hình CSDL phân tán, đồng thời cài đặt một số ứng dụng đặt trưng minh họa cho quá trình phân mảnh dữ liệu. Chương 1 - TỔNG QUAN VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN Nội dung chương 1 trình bày tổng quan các khái niệm cơ bản về việc phân mảnh dữ liệu trong mô hình CSDL phân tán, các vấn đề về phân mảnh dữ liệu. Chương 2 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG Nội dung chương này sẽ trình bày các phương pháp phân mảnh ngang và phương pháp phân mảnh ngang dẫn xuất, đồng thời giới thiệu các thuật toán được sử dụng trong phân mảnh ngang. Chương 3 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH DỌC Trong chương này sẽ trình bày phương pháp phân mảnh dọc và các thuật toán được sử dụng trong phân mảnh dọc. Chương 4 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH HỖN HỢP Phương pháp phân mảnh hỗn hợp là sự kết hợp phân mảnh ngang và phân mảnh dọc lại với nhau. Chương 5 - CÀI ĐẶT MINH HỌA CÁC THUẬT TOÁN PHÂN MẢNH Trong chương 5 sẽ cài đặt một số thuật toán tiêu biểu để minh họa cho việc phân mảnh trong hệ CSDL phân tán. Lời mở đầu Lời cảm ơn LỜI CẢM ƠN Với lòng biết ơn sâu sắc nhất, em xin gửi đến quý Thầy Cô ở khoa Khoa Học Máy Tính - trường Đại Học Công Nghệ Thông Tin đã đem hết tâm huyết của mình truyền đạt vốn kiến thức quý báu cho chúng em. Em xin chân thành cảm ơn PGS. TS. Đỗ Phúc đã truyền đạt kiến thức môn Cơ Sở Dữ Liệu Nâng Cao. Qua đó giúp em co đầy đủ kiến thức để hoàn thành bài thu hoạch này. Nhân đây em cũng xin gửi lời cảm ơn chân thành đến gia đình, bạn bè, đồng nghiệp đã động viên tin thần cho em trong suốt quá trình học tập của mình. Sau cùng, em xin kính chúc quý Thầy Cô trong khoa Khoa Học Máy Tính cùng PGS. TS. Đỗ Phúc dồi dào sức khỏe để thực hiện sứ mệnh cao đẹp của mình là truyền đạt kiến thức cho thế hệ mai sau. Một lần nữa em xin chân thành cảm ơn ! TP. HCM, ngày 18 tháng 08 năm 2012 Sinh viên thực hiện (ký và ghi rõ họ tên) Nguyễn Ngọc Lâm Nhận xét của giáo viên hướng dẫn NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẨN …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ……… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ……… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ……… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ……… …………………………………………………………………………………………………… … …………………………………………………………………………………………………… … …………………………………………………………………………………………………… … …………………………………………………………………………………………………… … Nhận xét của giáo viên hướng dẫn …………………………………………………………………………………………………… … …………………………………………………………………………………………………… … …………………………………………………………………………………………………… … TP. HCM, ngày 18 tháng 08 năm 2012 Sinh viên thực hiện (ký và ghi rõ họ tên) Nguyễn Ngọc Lâm MỤC LỤC BẢNG Bảng 1.1 Bảng EMP……………………………………………………………….2 Bảng 1.2 Bảng ASG……………………………………………………………….2 Bảng 1.3 Bảng PROJ…………………………………………………………… 2 Bảng 1.4 Bảng PAY……………………………………………………………… 2 Bảng 1.5 Bảng PROJ1…………………………………………………………… 3 Bảng 1.6 Bảng PROJ2…………………………………………………………… 4 Bảng 1.7 Bảng PROJ3…………………………………………………………… 4 Bảng 1.8 Bảng PROJ4…………………………………………………………… 4 Bảng 2.1 Phân mảnh ngang cơ sở quan hệ PROJ……………………………… 11 Bảng 2.2 Phân mảnh ngang cho quan hệ PAY………………………………… 14 Bảng 2.3 Phân hoạch ngang quan hệ PROJ………………………………………16 Hình 2.4 Phân mảnh ngang dẫn xuất quan hệ EMP…………………………… 17 Bảng 3.1 Bảng PROJ…………………………………………………………… 19 DANH SÁCH CÁC HÌNH Hình 2.1 Mô tả mối quan hệ giữa các quan hệ bởi đồ thị có hướng……………….7 Hình 2.2 Sơ đồ liên kết CSDL sau khi phân mảnh……………………………….17 Hình 3.1 Ma trận giá trị sử dụng thuộc tính………………………………………20 Hình 3.2 Ma trận tần số truy cập…………………………………………………20 Hình 3.3 Ma trận ái lực thuộc tính……………………………………………… 21 Hình 3.4 Ma trận CA khi cố định cột A 1 và A 2…………………………………………………… 25 Hình 3.5 Ma trận CA khi thêm A 3 theo thứ tự 1-3-2…………………………….25 Hình 3.6 Ma trận CA khi thêm A 4 theo thứ tự 3-2-4…………………………… 27 Hình 3.7 Ma trận CA sau khi hoán vị hàng………………………………………27 Hình 3.8 Cấp phát điểm tách…………………………………………………… 28 Hình 4.1 Phân mảnh hỗn hợp…………………………………………………….32 Hình 4.2 Tái xây dựng phân mảnh hỗn hợp…………………………………… 32 Hình 5.1 Form màn hình chính khi chạy ứng dụng………………………………40 Hình 5.2 Chọn ứng dụng BEA……………………………………………………41 Hình 5.3 Giao diện thuật toán BEA………………………………………………41 Hình 5.4 Chọn giá trị thuộc tính………………………………………………….42 Hình 5.5 Nhập giá trị cho ma trân Use………………………………………… 42 Hình 5.6 Bảng thông báo giá trị nhập không hợp lệ…………………………… 43 Hình 5.7 Những giá trị ma trận Use không hợp lệ được tô màu đỏ…………… 43 Hình 5.8 Nhập giá trị cho ma trân Use………………………………………… 43 Hình 5.9 Bảng thông báo giá trị nhập không hợp lệ…………………………… 44 Hình 5.10 Những giá trị ma trận ACC không hợp lệ được tô màu đỏ………… 44 Hình 5.11 Ma trận ACC hợp lệ………………………………………………… 44 Hình 5.12 Ma trận AA……………………………………………………………45 Hình 5.13 Ma trận CA……………………………………………………………45 Hình 5.14 Phân quan hệ thành hai mảnh…………………………………………46 Bảng 5.15 Chọn tab About Bond…………………………………………………46 Hình 5.16 Bảng hướng dẫn sử dụng…………………………………………… 47 cvcv TÀI LIỆU THAM KHẢO……………………………………………….48 Chương 1 – TỔNG QUAN VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN Chương 1 - TỔNG QUAN VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN Nội dung chương 1 trình bày tổng quan các khái niệm cơ bản về việc phân mảnh dữ liệu trong mô hình CSDL phân tán, các vấn đề về phân mảnh dữ liệu. 1.1 Phân mảnh (Fragmentation) Phân mảnh dữ liệu là việc chia các quan hệ trong một CSDL thành các quan hệ nhỏ hơn. Các quan hệ này còn được gọi là các mảnh và được bố trí tại các site khác nhau. 1.2 Lý do phân mảnh Trong thiết kế CSDL phân tán, sự cần thiết phải thực hiện phân mảnh dữ liệu vì những lý do sau đây: - Trong các hệ quản trị CSDL, các quan hệ được lưu trữ dưới dạng các bảng 2 chiều và các truy vấn đối với CSDL được thực hiện trên các bảng. Tuy nhiên trong thực tế, các ứng dụng chỉ thao tác trên tập con của các quan hệ. Vì vậy, việc xem tập con của quan hệ là đơn vị truy xuất thông tin để phân tán dữ liệu là hợp lý. - Việc phân rã một quan hệ thành nhiều mảnh, mỗi mảnh được xử lý như một đơn vị dữ liệu sẽ cho phép thực hiện nhiều giao dịch đồng thời. Mặc khác, việc phân mảnh các quan hệ cũng cho phép thực hiện song song một câu truy vấn bằng cách chia nó thành một tập các truy vấn con truy cập tới các mảnh. Vì vậy, việc phân mảnh sẽ nâng cao hiệu năng xử lý song song, góp phần tăng lưu lượng hoạt động của hệ thống. Tuy nhiên, việc phân mảnh không chỉ có những ưu điểm mà còn có những hạn chế nhất định như: - Đồng bộ hóa mọi thay đổi trên các mảnh trong thời gian thực - Đáp ứng chậm nhu cầu của các trạm trong trường hợp các phần mền ứng dụng không được phân bố phù hợp với việc sử dụng chung. - Những ứng dụng truy cập trên nhiều mảnh khác nhau sẽ làm giảm hiệu năng hoạt động của hệ thống, làm tăng chi phí truy xuất dữ liệu đến các mảnh, đồng thời làm tăng chi phí kết nối các mảnh. - Khó kiểm soát tính toàn vẹn dữ liệu khi các mảnh được phân bố tại các site khác nhau. 1.3 Các kiểu phân mảnh Các quan hệ trong hệ quản trị CSDL được biểu diễn dưới dạng các bảng 2 chiều. Nên có thể phân mảnh một quan hệ thành các quan hệ con khác nhau theo các mảnh khác nhau. Có hai kiểu phân mảnh tương ứng với việc chia quan hệ theo chiều dọc và chiều ngang của bảng. CH1101098 – Nguyễn Ngọc Lâm Trang 10 N [...]... VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN được phân mảnh, có thể phân mảnh một quan hệ đã được phân mảnh, có thể phân mảnh theo chiều ngang hoặc theo chiều dọc Một mức độ phân mảnh thích hợp là làm tăng hiệu năng truy vấn đến hệ quản trị CSDL 1.3.4 Các quy tắc phân mảnh Các quy tắc phân mảnh nhằm đảm bảo tính nhất quán của CSDL, đặc biệt về mặt ngữ nghĩa của quan hệ 1.3.4.1 Tính đầy đủ Quan hệ R được phân. .. Trong thực tế sự phân mảnh sẽ kết hợp cả hai loại phân mảnh lại với nhau và được gọi là phân mảnh hỗn hợp Mức độ phân mảnh tùy thuộc vào yêu cầu của ứng dụng, phân mảnh quá lớn hay quá nhỏ cũng ảnh hưởng đến hiệu năng của truy vấn 1.3.3 Mức độ phân mảnh Phân mảnh CSDL đến mức độ nào là đủ, không ảnh hưởng đến hiệu năng trong việc thực hiện truy vấn Mức độ phân mảnh có thể là phân mảnh một quan hệ chưa... Phân mảnh dẫn xuất sẽ gây nên phân mảnh lan truyền CH1101098 – Nguyễn Ngọc Lâm Trang 27 Chương 3 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN DỌC Chương 3 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG N ội dung chương này sẽ trình bày phương pháp phân mảnh dọc và các thuật toán được sử dụng trong phân mảnh dọc CH1101098 – Nguyễn Ngọc Lâm Trang 28 Chương 3 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN DỌC 3.1 Khái niệm phân mảnh dọc Phân. .. một biểu thức đều kiện cho trước Có hai loại phương pháp phân mảnh ngang đó là: Phân mảnh ngang nguyên thủy: là phân mảnh ngang được thực hiện trên các vị từ của chính quan hệ đó Phân mảnh ngang dẫn xuất: là phân mảnh ngang được thực hiện dựa trên các vị từ của quan hệ khác 2.1.2 Thông tin cần thiết của phân mảnh ngang Để thực hiện phân mảnh ngang ta cần phải có những loại thông tin sau đây 2.1.2.1... Phân mảnh dọc quan hệ R tạo ra các mảnh con nhỏ hơn R 1, R2, …, Rn, sao cho mỗi mảnh chứa một tập con các thuộc tính của quan hệ R và khóa của nó Mục đích của phân mảnh dọc là phân chia quan hệ R thành các quan hệ nhỏ hơn để nhiều ứng dụng có thể truy vấn trên một mảnh Mảnh tối ưu là mảnh sinh ra một lược đồ phân mảnh cho phép giảm tối thiểu thời gian thực hiện của ứng dụng trên mảnh đó Kỹ thuật phân mảnh. .. THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG P4 Maintenance 310000 Bảng 2.3 Phân hoạch ngang quan hệ PROJ Paris 2.3 Phân mảnh ngang dẫn xuất Phân mảnh ngang dẫn xuất được định nghĩa dựa trên sự phân mảnh ngang của một quan hệ thành viên của một đường nối dựa trên phép toán chọn trên quan hệ chủ nhân của đường nối đó, hay ta còn gọi đó là sự phân mảnh quan hệ thành viên dựa trên cơ sở quan hệ phân mảnh chủ nhân Cho... pháp phân mảnh ngang dẫn xuất, đồng thời giới thiệu các thuật toán được sử dụng trong phân mảnh ngang 2.1 Phương pháp phân mảnh ngang 2.1.1 Giới thiệu Phân mảnh ngang tức là quan hệ được chia theo chiều ngang Kết quả của quá trình phân mảnh ngang chính là các quan hệ con, số lượng quan hệ con phụ thuộc vào đều kiện ràng buộc của các thuộc tính và các bộ trong quan hệ con là tách biệt nhau Phân mảnh. .. Paris Bảng 2.1 Phân mảnh ngang cơ sở quan hệ PROJ PNO P1 CH1101098 – Nguyễn Ngọc Lâm Trang 20 Chương 2 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG Phân mảnh ngang Ri của quan hệ R gồm tất cả các bộ của R thỏa một vị từ hội sơ cấp m i Vì vậy, cho một tập M các vị từ hội sơ cấp, số lượng phân mảnh ngang của quan hệ R bằng số lượng các vị từ hội sơ cấp Tập phân mảnh ngang được gọi là tập các mảnh hội sơ cấp... trong mảnh Rk với k j Quy tắc này đảm bảo các mảnh tách rời nhau Trong trường hợp phân mảnh dọc, khóa chính của quan hệ phải được lập lại trong tất cả các mảnh con, còn các thuộc tính khác phải tách rời CH1101098 – Nguyễn Ngọc Lâm Trang 14 Chương 2 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG Chương 2 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH NGANG N ội dung chương này sẽ trình bày các phương pháp phân mảnh. .. J Jones Syst Anal Hình 2.4 Phân mảnh ngang dẫn xuất quan hệ EMP Sơ đồ liên kết của CSDL sau khi phân mảnh PAY1 PAY2 TITLE, SAL TITLE, SAL L11 L12 EMP1 PROJ EMP2 ENO, ENAME, TITLE ENO, ENAME, TITLE PNO, PNAME, BUDGET, LOC L3 L2 ASG ENO, PNO, RESP, DUR Hình 2.2 Sơ đồ liên kết CSDL sau khi phân mảnh Một số nhận xét quan trọng: Thuật toán phân mảnh dẫn xuất cần có tập các phân hoạch quan hệ chủ nhân . TỔNG QUAN VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN được phân mảnh, có thể phân mảnh một quan hệ đã được phân mảnh, có thể phân mảnh theo chiều ngang hoặc theo chiều dọc. Một mức độ phân mảnh thích hợp. phân mảnh dọc và các thuật toán được sử dụng trong phân mảnh dọc. Chương 4 – GIỚI THIỆU PHƯƠNG PHÁP PHÂN MẢNH HỖN HỢP Phương pháp phân mảnh hỗn hợp là sự kết hợp phân mảnh ngang và phân mảnh. về phân mảnh dữ liệu trong mô hình CSDL phân tán, đồng thời cài đặt một số ứng dụng đặt trưng minh họa cho quá trình phân mảnh dữ liệu. Chương 1 - TỔNG QUAN VỀ PHÂN MẢNH TRONG HỆ CSDL PHÂN TÁN Nội