63
1 CƠ SDLIU NÂNG CAO Advanced Database PDF created with pdfFactory Pro trial version www.pdffactory.com

Chapter3.Distributed Database.pdf

Embed Size (px)

DESCRIPTION

co so du lieu

Citation preview

Page 1: Chapter3.Distributed Database.pdf

1

CƠ SỞ DỮ LIỆU NÂNG CAO

Advanced Database

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 2: Chapter3.Distributed Database.pdf

2

CHAPTER 3

Distributed database

Advanced Database

PHÂN TÁN DỮ LIỆU

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 3: Chapter3.Distributed Database.pdf

3

Chapter 3. Phân tán dữ liệu

GIỚI THIỆU CHƯƠNG

o Cơ sở dữ liệu phân tán là gì?

ðĐể trả lời được câu hỏi này các nhà nghiên cứu đã,

đang từng bước tiếp cận và sẽ trả lời chính xác

ðCơ sở dữ liệu phân tán = Cơ sở dữ liệu + Mạng

máy tính

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 4: Chapter3.Distributed Database.pdf

4

Chapter 3. Phân tán dữ liệu

NỘI DUNG

n CSDL TẬP TRUNG VÀ PHÂN TÁN

n KHÁI NIỆM PHÂN TÁN DỮ LIỆU

n PHÂN MẢNH NGANG

n PHÂN MẢNH DỌC

n VÍ DỤ

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 5: Chapter3.Distributed Database.pdf

5

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o CSDL phân tán được thiết kế khác CSDL tập trung. So sánh các đặc trưng của CSDL phân tán với CSDL tập trung để thấy được lợi ích của CSDL phân tán.

o Đặc trưng mô tả CSDL tập trung là điều khiển tậptrung, độc lập dữ liệu, giảm bớt dư thừa, khả năngtruy cập, hồi phục, và an toàn dữ liệu

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 6: Chapter3.Distributed Database.pdf

6

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o Điều khiển tập trung

- Không đề cập đến vấn đề

điều khiển tập trung.

- Người quản trị cơ sở dữ liệu

chung phân quyền cho người

quản trị cơ sở dữ liệu địa

phương.

- Điều khiển tập trung các

nguồn thông tin của công

việc hay tổ chức.

- Có người quản trị đảm bảo

an toàn dữ liệu.

CSDL PHÂN TÁNCSDL TẬP TRUNG

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 7: Chapter3.Distributed Database.pdf

7

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o Độc lập dữ liệun Là một trong những nhân tố tác động đến cấu trúc

cơ sở dữ liệu để tổ chức dữ liệu chuyển chochương trình ứng dụng.

n Trong CSDL phân tán, độc lập dữ liệu có tầmquan trọng cũng như trong CSDL tập trung.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 8: Chapter3.Distributed Database.pdf

8

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o Giảm dư thừa dữ liệu

-Dữ liệu được chia ra

thành nhiều phần nhỏ và

chỉ có một bản sao logic

tổng thể duy nhất để tiện

cho việc truy cập dữ liệu.

- Dữ liệu không đồng

nhất khi có vài bản sao

của cùng cơ sở dữ liệu

logic

CSDL PHÂN TÁNCSDL TẬP TRUNG

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 9: Chapter3.Distributed Database.pdf

9

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o Tính an toàn và bảo mật dữ liệu

cấp độ tự trị cao ở mỗi điểm, người có dữ liệu cục bộ sẽcảm thấy an toàn hơn vì cóthể tự bảo vệ dữ liệu củamình thay vì phụ thuộc vàongười quản trị hệ thống tậptrung.

người quản trị hệ thống cóquyền điều khiển tập trung, người sử dụng có chắc chắnđược phân quyền mới truycập vào được dữ liệu.

CSDL PHÂN TÁNCSDL TẬP TRUNG

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 10: Chapter3.Distributed Database.pdf

10

Chapter 3. Phân tán dữ liệu

1. CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN

o Trong cơ sở dữ liệu phân tán vấn đề an toàn cơ sở dữliệu phức tạp hơn và đòi hỏi nhiều kỹ thuật bảo vệ.

o Nguyên nhân gây ra là hệ thống này có tính mở vànhiều người dùng trong cùng hệ thống sử dụng nhiều cơ sở dữ liệu.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 11: Chapter3.Distributed Database.pdf

11

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo ĐẶT VẤN ĐỀn Vì yêu cầu của công ty, doanh nghiệp, đơn vị

kinh doanh... về vấn đề tổ chức sao cho kinh doanh có hiệu quả nhất và nắm bắt thông tin nhanh nhất khi các cơ sở của công ty hiện ởnhững địa điểm xa nhau

n cho nên xây dựng một hệ thống làm việc trên cơ sở dữ liệu phân tán là phù hợp xu hướng hiện nay vì hệ thống này thoả mãn được những yêu cầu tổchức của từng đơn vị.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 12: Chapter3.Distributed Database.pdf

12

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo ĐẶT VẤN ĐỀn Lợi điểm về tổ chức và kỹ thuật của xu hướng

phát triển cơ sở dữ liệu phân tán là: giải quyết được những hạn chế của cơ sở dữ liệu tập trung và phù hợp xu hướng phát triển tự nhiên với cơ cấu không tập trung của các tổ chức, công ty doanh nghiệp...

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 13: Chapter3.Distributed Database.pdf

13

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo KHÁI NIỆMn Cơ sở dữ liệu phân tán là tập hợp dữ liệu logic

thuộc về cùng một hệ thống nhưng trải rộng ra nhiều điểm trên mạng máy tính.

n Cơ sở dữ liệu phân tán = Cơ sở dữ liệu + Mạngmáy tính

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 14: Chapter3.Distributed Database.pdf

14

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo LỢI ĐIỂM CỦA CSDL PHÂN TÁN

n Lợi điểm về tổ chức và tính kinh tế: tổ chức phân tán nhiều chi nhánh và dùng CSDL phân tán phù hợp với các tổ chức kiểu này. Với vai trò là động lực thúc đẩy kinh tế thương mại phát triển rộng hơn, thì việc phát triển các trung tâm máy tính phân tán ở nhiều vị trí trở thành nhu cầu cần thiết.

n Tận dụng những cơ sở dữ liệu sẵn có: Hình thành CSDL phân tán từcác CSDL tập trung có sẵn ở các vị trí địa phương.

n Thuận lợi cho nhu cầu phát triển: Xu hướng dùng CSDL phân tán sẽcung cấp khả năng phát triển thuận lợi hơn và giảm được xung đột vềchức năng giữa các đơn vị đã tồn tại và giảm được xung đột giữa các chương trình ứng dụng khi truy cập đến cơ sở dữ liệu. Với hướng tập trung hoá, nhu cầu phát triển trong tương lai sẽ gặp khó khăn.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 15: Chapter3.Distributed Database.pdf

15

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo LỢI ĐIỂM CỦA CSDL PHÂN TÁN

n Giảm chi phí truyền thông: Trong CSDL phân tán chương trình ứng dụng đặt ở địa phương có thể giảm bớt được chi phí truyền thông khi thực hiện bằng cách khai thác CSDL tại chỗ.

n Tính dễ hiểu và sẵn sàng: Hướng phát triển CSDL phân tán cũng nhằm đạt được tính dễ hiểu và tính sẵn sàng cao hơn. Tuy nhiên để đạt được mục tiêu này không phải là dễlàm và đòi hỏi sử dụng kỹ thuật phức tạp. Khả năng xử lý tự trị của các điểm làm việc khác nhau không đảm bảo tính dễ sử dụng.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 16: Chapter3.Distributed Database.pdf

16

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo LỢI ĐIỂM CỦA CSDL PHÂN TÁN

Hai nguyên nhân về mặt kỹ thuật đáp ứng cho sự phát triển

hệ cơ sở dữ liệu phân tán: n Công nghệ tạo ra máy tính nhỏ và nền tảng phần cứng có

khả năng phục vụ xây dựng hệ thống thông tin phân tán. n Kỹ thuật thiết kế hệ CSDL phân tán được phát triển vững

chắc dựa trên hai kỹ thuật thiết kế chính là Top-down vàBottom-up từ những năm thập kỷ 60.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 17: Chapter3.Distributed Database.pdf

17

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo PHÂN TÁN DỮ LIỆU

Khi thiết kế các hệ thống CSDL phân tán người ta thường tập trung xoay quanh các câu hỏi?n Tại sao lại cần phải phân tán (phân mảnh/phân rã)?n Làm thế nào để thực hiện phân mảnh?n Phân mảnh nên thực hiện đến mức độ nào?n Có cách gì kiểm tra tính đúng đắn của việc phân mảnh?

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 18: Chapter3.Distributed Database.pdf

18

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo LÝ DO PHÂN MẢNH

n Phân tán dữ liệu được thực hiện trên cơ sở cấp phát các tập tin cho các nút trên một mạng máy tính. Các nút mạng thường nằm ở các vị trí địa lý khác nhau trải rộng trên một diện tích lớn. Do vậy để tối ưu việc khai thác thông tin thì dữ liệu không thể để tập trung mà phải phán tán trên các nút của mạng.

n 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ị sẽ cho phép thực hiện nhiều giao dịch đồng thời.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 19: Chapter3.Distributed Database.pdf

19

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNH

n Thể hiện của các quan hệ chính là các bảng, vì thế vấn đềlà tìm những cách khác nhau để chia một bảng thành nhiều bảng nhỏ hơn.

n Có hai phương pháp: Chia bảng theo chiều dọc và chia bảng theo chiều ngang:o Chia dọc ta được các quan hệ con mà mỗi quan hệ

chứa một tập con các thuộc tính của quan hệ gốc – gọi là phân mảnh dọc.

o Chia ngang một quan hệ ta được các quan hệ con màmỗi quan hệ chứa một số bộ của quan hệ gốc - gọi làphân mảnh ngang.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 20: Chapter3.Distributed Database.pdf

20

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNH

n Ví dụ: Cho CSDL của một công ty máy tính thực hiện các dự án phần mềm, gồm các quan hệ:o DuAn(MaDA, TenDA, KinhPhi, ViTri);o NhanVien(MaNV, TenNV, ChucVu);o TrachNhiem(MaNV, MaDA, TrachNhiem,

ThoiGianTG);o Luong(ChucVu, Luong).

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 21: Chapter3.Distributed Database.pdf

21

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNH

n Dữ liệu của các bảng

Paris310000Bảo trìP4NY250000CADP3NY135000CSDLP2Monl150000Thiết bịP1ViTriKinhPhiTenDAMaDA

DuAn

24.000Lập trình viên27.000KS máy34.000Phân tích hệ thống40.000KS ĐiệnLuongCBChucVu

LUONG

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 22: Chapter3.Distributed Database.pdf

22

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNH

n Dữ liệu của các bảng

Phân tích HTVân DũngE8KS MáyHoài NamE7KS ĐiệnVăn HiềnE6Phân tích HTMinh HoaE5Lập trình viênDương HàE4KS MáyMinh TàiE3Phân tích HTĐình VượngE2KS ĐiệnHoàng LanE1ChucVuTenNVMaNV

NhanVien

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 23: Chapter3.Distributed Database.pdf

23

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNH

n Dữ liệu của các bảng

40Quản lýP3E836Kỹ sưP3E7

TrachNhiem

Quản lýQuản lýLập trình viênKỹ sưTư vấnPhân tíchPhân tíchQuản lýTrachNhiem

48P4E624P2E518P2E448P4E310P3E306P2E224P1E212P1E1ThoiGianMaDAMaNV

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 24: Chapter3.Distributed Database.pdf

24

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNHn Phân mảnh ngang

o Ví dụ 1: Có thể chia ngang quan hệ DuAn thành cácquan hệ con DuAn1, DuAn2. DuAn1 chứa nhữngthông tin về các dự án có ngân sách dưới 200000vnd, còn DuAn2 lưu các thông tin về các dự án có ngânsách trên 200000vnd.

Paris310000Bảo trìP4NY250000CADP3ViTriKinhPhiTenDAMaDA

DuAn2

NY135000CSDLP2Monl150000Thiết bịP1ViTriKinhPhiTenDAMaDA

DuAn1

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 25: Chapter3.Distributed Database.pdf

25

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo CÁC KIỂU PHÂN MẢNHn Phân mảnh dọcVí dụ 2: Có thể phân mảnh dọc quan hệ DuAn thành haiquan hệ DuAn3, DuAn4. DuAn3 chỉ chứa thông tin về ngânsách của các dự án, còn DuAn4 lưu thông tin về tên và vị trí

dự án. DuAn3

310000P4250000P3135000P2150000P1KinhPhiMaDA

DuAn4

HNBảo trìP4NACADP3HTCSDLP2NAThiết bịP1ViTriTenDAMaDA

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 26: Chapter3.Distributed Database.pdf

26

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo MỨC ĐỘ PHÂN MẢNH

n Phân mảnh CSDL đến mức độ nào là một quyết định rất quan trong có ảnh hưởng đến hiệu năng thực hiện vấn tin. Mức độ phân mảnh có thể là từ thái cực không phân mảnh nào đến thái cực phân mảnh thành từng bộ (phân mảnh ngang) hoặc từng thuộc tích (phân mảnh dọc).

n Tuy nhiên nếu phân mảnh quá nhỏ sẽ có những tác động không tốt đến hoạt động khai thác CSDL.

n Vậy cần phải định ra được một mức độ phân mảnh thích hợp. Mức độ này sẽ tùy thuộc vào từng CSDL và các ứng dụng CSDL cụ thể.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 27: Chapter3.Distributed Database.pdf

27

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo QUY TẮC PHÂN MẢNH ĐÚNG ĐẮN

1. Tính đầy đủ: Nếu một quan hệ R được phân mảnh thành các mảnh R1, R2,…, RN thì mỗi mục dữ liệu có trong R phải có mặt trong một hoặc nhiều mảnh Ri.2. Tính tái thiết được: Nếu một quan hệ R được phân mảnh thành R1, R2,…, RN thì cần phải định nghĩa một toán tử tái thiết Θ sao cho: R = ΘRi, i = 1..N.

Toán tử Θ thay đổi tùy theo từng loại phân mảnh:

- phân mảnh ngang thì Θ là phép toán hợp

- phân mảnh dọc là phép toán kết nối.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 28: Chapter3.Distributed Database.pdf

28

Chapter 3. Phân tán dữ liệu

2. KHÁI NIỆM PHÂN TÁN DỮ LIỆUo QUY TẮC PHÂN MẢNH ĐÚNG ĐẮN

3. Tính tách biệt:n Nếu quan hệ R được phân mảnh ngang thành các mảnh

R1, R2,…, RN và mục dữ liệu ti nằm trong mảnh Ri, thì nósẽ không nằm trong các mảnh Rk với k≠ i. Tiêu chuẩn này đảm bảo rằng các mảnh ngang sẽ tách biệt với nhau.

n Nếu quan hệ được phân mảnh dọc, các thuộc tính khóa chính phải được lặp lại trong mỗi mảnh. Vì thế trong trường hợp phân mảnh dọc, tính tách biệt chỉ được định nghĩa trên các trường không phải là khóa chính của một quan hệ.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 29: Chapter3.Distributed Database.pdf

29

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo YÊU CẦU THÔNG TIN VỀ CSDL

n Thông tin về CSDL là lược đồ toàn cục và quan hệ gốc. Trong ngữ cảnh này chúng ta cần biết được các quan hệ sẽkết nối lại với nhau bằng phép nối hay phép tính khác.

n Với mục đích phân mảnh dẫn xuất, các vị từ được định nghĩa trên các quan hệ khác. Để xác định “quan hệ khác” ta thường dùng mô hình thực thể - liên kết (ERM) vìtrong mô hình này các mối quan hệ được biểu diễn bằng các đường nối có hướng (các cung) giữa các liên kết cóquan hệ với nhau qua một nối.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 30: Chapter3.Distributed Database.pdf

30

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANG

o YÊU CẦU THÔNG TIN VỀ CSDLn Ví dụ 3:

ChucVu, Luong

MaNV, TenNV, ChucVu

MaNV, MaDA, TrachNhiem, ThoiGian

MaDA, TenDA, KinhPhi, ViTri

Luong

NhanVienDuAn

TrachNhiem

L1

L2 L3

Biểu diễn mối liên kết giữa các quanhệ nhờ các đường nối

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 31: Chapter3.Distributed Database.pdf

31

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANG

o YÊU CẦU THÔNG TIN VỀ CSDLn Quan hệ nằm tại đầu (không mũi tên) của đường nối được

gọi là chủ nhân (owner) của đường nốin Quan hệ tại cuối đường nối (phía mũi tên) gọi là thành

viên (member)n Ví dụ 4: Cho đường nối L1, các hàm owner và member có

các giá trị như sau:owner(L1) = Luongmember(L1) = NhanVien

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 32: Chapter3.Distributed Database.pdf

32

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo YÊU CẦU THÔNG TIN VỀ ỨNG DỤNG

n Thông tin Định lượng cần có về CSDL là lực lượng của mỗi quan hệ R, đó là số bộ có trong R được ký hiệu là card(R).

n Để phân tán ngoài Card(R) ta còn cần thông tin định tính cơ bản gồm có vị từ được dùng trong các câu vấn tin. Lượng thông tin này phụ thuộc vào bài toán cụ thể.

n Vậy chúng ta cần phải tìm cách xác định các vị từ.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 33: Chapter3.Distributed Database.pdf

33

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

n Cho lược đồ quan hệ R(U), U = A1, A2,…, AN trong đó mỗi Aj

là một thuộc tính có miền giá trị dom(Aj) (hay D(Aj)).

n Một vị từ đơn giản P được định nghĩa trên R có dạng:

P: Aj θ <giá trị>

Trong đó: - θ є {=, <, <=, >=, >, <>},

- Ai là một thuộc tính,

- <giátrị> є D(Aj).

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 34: Chapter3.Distributed Database.pdf

34

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪn Như vậy cho trước một lược đồ R, nếu có miền giá trị

D(Aj) là hữu hạn chúng ta có thể xác định được tập tất cảcác vị từ đơn giản P trên R.

n Vậy P = {P: Aj θGiatri}

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 35: Chapter3.Distributed Database.pdf

35

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANG

o XÁC ĐỊNH CÁC VỊ TỪn Ví dụ 5: Cho quan hệ DuAn với các vị từ đơn giản:

P1: TenDA = “Bảo trì”P2: KinhPhi <= 200000

Là các vị từ đơn giản

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 36: Chapter3.Distributed Database.pdf

36

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

n Ví dụ: Cho quan hệ R:

Khi đó:P1: A = 0P2: B<2P3: C≠ 3

Là những vị từ đơn giản011052314321DCBA

R

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 37: Chapter3.Distributed Database.pdf

37

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪn Trong các bài toán thức tế các câu vấn tin thường chứa

nhiều vị từ phức tạp hơn, là tổ hợp của các vị từ đơn giản.

n Sử dụng vị từ hội sơ cấp của các vị từ đơn giản để biểu

diễ các vị từ phức tạp

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 38: Chapter3.Distributed Database.pdf

38

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

n Cho một tập P = {p1, p2,....,pn} là các tập vị từ đơn giản

trên R

n Tập các vị từ hội sơ cấp M = {m1,m2,....mz} được định

nghĩa là mi = ^ p*ik với 1≤ik≤n

Trong đó p*ik = pik hoặc p*

ik = ¬pik

n Mỗi vị từ đơn giản có thể xuất hiện trong vị từ hội sơ cấp

dưới dạng tự nhiên hoặc dạng phủ định

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 39: Chapter3.Distributed Database.pdf

39

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

n Ví dụ 6: Xét quan hệ Luong. Một số vị từ đơn giản có thể

định nghĩa trên Luong:

n P1: ChucVu = “Kỹ sư điện”

n P2: ChucVu = “Lập trình viên”

n P3: LuongCB ≤ 30.000

n P4: LuongCB > 30.000

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 40: Chapter3.Distributed Database.pdf

40

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

Một số các vị từ hội sơ cấp được định nghĩa dựa trên các

vị từ đơn giản này:

n m1: ChucVu = “KS Điện” ^ LuongCB ≤ 30.000

n m2: ChucVu = “KS Điện” ^ LuongCB > 30.000

n m3: ¬(ChucVu = “KS Điện”) ^ LuongCB ≤ 30.000

n m4: ¬(ChucVu = “KS Điện”) ^ LuongCB > 30.000

n m5: ChucVu = “Lập trình viên” ^ LuongCB ≤ 30.000

n m6: ChucVu = “Lập trình viên”) ^ LuongCB > 30.000

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 41: Chapter3.Distributed Database.pdf

41

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANG

o XÁC ĐỊNH CÁC VỊ TỪLưu ý:

n Phép phủ định không phải lúc nào cũng thực hiện được

n Không phải tất cả các vị từ hội sơ cấp đều có thể định

nghĩa được. Một số vị từ hội sơ cấp có thể vô nghĩa đối

với ngữ nghĩa của quan hệ.

n m3: ¬(ChucVu = “KS Điện”) ^ LuongCB ≤ 30.000

n viết lại m3: ChucVu ≠ “KS Điện” ^ LuongCB ≤ 30.000

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 42: Chapter3.Distributed Database.pdf

42

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo XÁC ĐỊNH CÁC VỊ TỪ

n Độ tuyển hội sơ cấp (minterm selectivity): Số lượng các

bộ của quan hệ sẽ được truy xuất bởi câu vấn tin được đặc

tả theo một vị từ hội sơ cấp đã cho.

Ví dụ: độ tuyển của m1 là 0 vì không có bộ nào trong Luong

thỏa mãn vị từ này. Độ tuyển của m2 là 1

n Kí hiệu độ tuyển của một hội sơ cấp mi là sel(mi)

Ví dụ: sel(m1) = 0

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 43: Chapter3.Distributed Database.pdf

43

Chapter 3. Phân tán dữ liệu

3. PHÂN MẢNH NGANGo Có hai chiến lược phân mảnh ngang cơ bản

n Phân mảnh ngang nguyên thủy

n Phân mảnh ngang dẫn xuất

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 44: Chapter3.Distributed Database.pdf

44

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦYo Phân mảnh ngang nguyên thủy (primary horizontal

fragmentation): được định nghĩa bằng một phép chọn trên

các quan hệ chủ nhân của một lược đồ CSDL

n Cho quan hệ R, các mảnh ngang của R là các Ri. Khi đó:

Ri = R(Ei) 1 ≤ i ≤ z.

Ei là công thức chọn được sử dụng để có được mảnh Ri.

n Nếu Ei có dạng chuẩn hội thì nó là một vị từ hội sơ cấp mi

n Ri là các bộ của R thỏa mãn Ei

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 45: Chapter3.Distributed Database.pdf

45

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦYo Ví dụ 7: Phân rã quan hệ DuAn thành các phân mảnh DuAn1

và DuAn2 trong ví dụ 1 được định nghĩa như sau:

n DuAn1 = DuAn(KinhPhi ≤ 200.000)

n DuAn2 = DuAn(KinhPhi > 200.2000)

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 46: Chapter3.Distributed Database.pdf

46

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦYo Ví dụ 8: Xét quan hệ DuAn. Các mảnh ngang dựa vào vị trí dự án:

n DuAn1 = DuAn(ViTri = ‘Monl’)

n DuAn2 = DuAn(ViTri = ‘NY’)

n DuAn3 = DuAn(ViTri = ‘Paris’)

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 47: Chapter3.Distributed Database.pdf

47

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦYo Ví dụ 8: Phân mảnh ngang nguyên thủy cho quan hệ DuAn theo ViTri

DuAn2ViTriKinhPhiTenDAMaDA

ViTriKinhPhiTenDAMaDA

Paris310.000Bảo trìP4

NY250.000CADP3NY135.000CSDLP2

DuAn2Monl150.000Thiết bịP1ViTriKinhPhiTenDAMaDA

DuAn1

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 48: Chapter3.Distributed Database.pdf

48

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦY

ð Một mảnh ngang Ri của quan hệ R có chứa tất cả

các bộ R thỏa mãn vị từ hội sơ cấp mi

ð Các mảnh ngang phụ thuộc vào các vị từ hội sơ

cấp: -> bước đầu tiên phân mảnh là phải xác định

tập các vị từ đơn giản sẽ tạo ra các vị từ hội sơ cấp.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 49: Chapter3.Distributed Database.pdf

49

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦY

Ví dụ 9: Xét phân mảnh quan hệ DuAn. Phân mảnh

ngang theo vị trí và kinh phí dự án

o P = {Vitri=‘Monl’, Vitri = ‘NY’, ViTri = ‘Paris’,

KinhPhi ≤ 200.000, KinhPhi > 200.000 }.

o M = {m1,m2,m3,m4,m5,m6}

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 50: Chapter3.Distributed Database.pdf

50

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦY

o m1: (ViTri = ‘Monl’) ^ (KinhPhi ≤200.000)

o m2: (ViTri = ‘Monl’) ^ (KinhPhi >200.000)

o m3: (ViTri = ‘NY’) ^ (KinhPhi ≤200.000)

o m4: (ViTri = ‘NY’) ^ (KinhPhi >200.000)

o m5: (ViTri = ‘Paris’) ^ (KinhPhi ≤200.000)

o m6: (ViTri = ‘Paris’) ^ (KinhPhi >200.000)

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 51: Chapter3.Distributed Database.pdf

51

Chapter 3. Phân tán dữ liệu

3.1. PHÂN MẢNH NGANG NGUYÊN THỦYo Ví dụ 11: Phân mảnh ngang nguyên thủy cho quan hệ Luong. Trong các

ứng dụng sau:

o Giả sử các mẫu tin được quản lý ở hai nơi,một nơi xử lý các mẫu tin có

lương thấp hơn 30.000 và một nơi khác xử lý mẫu tin có lương cao hơn

30.000.

o Xử lý Mẫu tin được quản lý theo Chức vụ

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 52: Chapter3.Distributed Database.pdf

52

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo ĐỊNH NGHĨAn Phân mảnh ngang dẫn xuất được định nghĩa trên một quan

hệ thành viên của một đường nối dựa theo phép toán chọn trên quan hệ chủ nhân của đường nối đó.

n Nếu cho trước một liên kết L, trong đó owner(L) = S vàmember(L) = R, các mảnh ngang dẫn xuất của R được định nghĩa là:

Ri = R wvSi, 1 ≤ i ≤ kn Trong đó k là số lượng các mảnh được định nghĩa trên R,

và Si = S(Ei), với Ei là công thức chọn (hội sơ cấp) được sử dụng để có được mảnh R

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 53: Chapter3.Distributed Database.pdf

53

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 12: Xét liên kết giữa bảng Luong và NhanVien

n Xét đường nối L1 trong ví dụ 3, trong đó:o owner(L1) = Luongo member(L1) = NhanVien

n Nếu xét truy vấn nhóm các kỹ sư thành 2 nhóm theolương: nhóm có lương từ 30.000 trở xuống và nhómlương trên 30.000.

n Hai mảnh NhanVien1 và NhanVien2 được định nghĩa nhưsau:

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 54: Chapter3.Distributed Database.pdf

54

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 12n NhanVien1 = NhanVien wv Luong1

n NhanVien2 = NhanVien wv Luong2n Trong đó:n Luong1 = Luong(LuongCB≤30.000)n Luong2 = Luong(LuongCB>30.000)

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 55: Chapter3.Distributed Database.pdf

55

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 12

KS MáyHoài NamE7

Lập trình viênDương HàE4

KS MáyMinh TàiE3

ChucVuTenNVMaNV

NhanVien1

Phân tích HTVân DũngE8

KS ĐiệnVăn HiềnE6

Phân tích HTMinh HoaE5

Phân tích HTĐình VượngE2

KS ĐiệnHoàng LanE1

ChucVuTenNVMaNV

NhanVien2

Phân mảnh ngang dẫn xuất của quan hệ NhanVien

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 56: Chapter3.Distributed Database.pdf

56

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo Lưu ý:

Muốn thực hiện phân mảnh ngang dẫn xuất :

n Tập các phân hoạch của quan hệ chủ nhân S

n Quan hệ thành viên,

n Và tập các vị từ nối giữa quan hệ chủ và quan hệ thành

viên (chẳng hạn NhanVien.ChucVu = Luong.ChucVu).

.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 57: Chapter3.Distributed Database.pdf

57

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo Vấn đề phức tạp là trong lược đồ CSDL chúng ta hay gặp

nhiều đường nối đến một quan hệ R. Như thế có thể có nhiều

cách phân mảnh ngang dẫn xuất cho R. Quyết định chọn cách

phân mảnh nào cần dựa trên hai tiêu chuẩn sau:

n Phân mảnh có đặc tính nối tốt hơn;

n Phân mảnh được sử dụng trong nhiều ứng dụng hơn.

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 58: Chapter3.Distributed Database.pdf

58

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 13

n Phân mảnh quan hệ TrachNhiem theo NhanVien vàDuAn. Giả sử có hai ứng dụng sau:

n Ứng dụng thứ nhất: tìm tên các kỹ sư có làm việc tại một nơi nào đó. Ứng dụng này chạy ở cả 3 trạm

n Ứng dụng thứ hai:Tại mỗi trạm quản lý, nơi quản lý các mẫu tin nhân viên, người dùng muốn truy xuất đến các dựán đang được các nhân viên này thực hiện và cần biết xem họ sẽ làm việc với dự án đó trong bao lâu

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 59: Chapter3.Distributed Database.pdf

59

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 13

n Ứng dụng 1: dẫn đến việc phân mảnh TrachNhiem theo các mảnh : DuAn1, DuAn3, DuAn4, DuAn6 của DuAn. Xem Ví dụ 9

o DuAn1 = DuAn(ViTri = ‘Monl’ ^ KinhPhi ≤200.000)

o DuAn3 = DuAn(ViTri = ‘NY’ ^ KinhPhi ≤200.000)

o DuAn4 = DuAn(ViTri = ‘NY’ ^ KinhPhi >200.000)

o DuAn6 = DuAn(ViTri = ‘Paris’ ^ KinhPhi >200.000)

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 60: Chapter3.Distributed Database.pdf

60

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 13n Phân mảnh dẫn xuất của TrachNhiem theo

DuAn1, DuAn3, DuAn4, DuAn6:n TrachNhiem1 =TrachNhiem wvDuAn1

n TrachNhiem2 =TrachNhiem wvDuAn3

n TrachNhiem3 =TrachNhiem wvDuAn4

n TrachNhiem4 =TrachNhiem wvDuAn6

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 61: Chapter3.Distributed Database.pdf

61

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 13

n Các thể hiện của các mảnh

TrachNhiem1

Phân tích

Quản lýTrachNhiem

24P1E2

12P1E1ThoiGianMaDAMaNV

TrachNhiem2

Quản lýLập trình viênPhân tíchTrachNhiem

24P2E518P2E406P2E2ThoiGianMaDAMaNV

40Quản lýP3E7

36Kỹ sưP3E6

TrachNhiem3

Tư vấnTrachNhiem

10P3E3ThoiGianMaDAMaNV TrachNhiem4

Quản lý

Kỹ sưTrachNhiem

48P4E6

48P4E3ThoiGianMaDAMaNV

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 62: Chapter3.Distributed Database.pdf

62

Chapter 3. Phân tán dữ liệu

o VÍ DỤ 13o Câu vấn tin thứ 2 có thể được viết bằng SQL:

SELECT MaNV, MaDA, TrachNhiem,ThoiGianFrom TrachNhiem.MaNV = NhanVieni.MaNV

o Trong đó 1 = 1,i=2 tùy thuộc vào nơi đưa ra câu vấntin

PHÂN MẢNH NGANG DẪN XUẤT

PDF created with pdfFactory Pro trial version www.pdffactory.com

Page 63: Chapter3.Distributed Database.pdf

63

Chapter 3. Phân tán dữ liệu

PHÂN MẢNH NGANG DẪN XUẤTo VÍ DỤ 13

n Các thể hiện của các mảnh

36Kỹ sưP3E7

TrachNhiem1

Lập trình viên

Kỹ sư

Tư vấnTrachNhiem

18P2E4

48P4E3

10P3E3ThoiGianMaDAMaNV

TrachNhiem2

Quản lýQuản lýQuản lýPhân tíchPhân tíchQuản lýTrachNhiem

40P3E648P4E524P2E406P2E224P1E212P1E1ThoiGianMaDAMaNV

PDF created with pdfFactory Pro trial version www.pdffactory.com