Tải bản đầy đủ (.doc) (41 trang)

TÌM HIỂU VỀ PHÂN MẢNH NGANG 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 (380.43 KB, 41 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
PHÒNG ĐÀO TẠO SAU ĐẠI HỌC
Bài thu hoạch môn học
CƠ SỞ DỮ LIỆU NÂNG CAO
Đề tài
TÌM HIỂU VỀ
PHÂN MẢNH NGANG
TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN
GIÁO VIÊN HƯỚNG DẪN: PGS.TS. ĐỖ PHÚC
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA
LỚP: CAO HỌC CNTTQM KHÓA 6.
MÃ SỐ HỌC VIÊN: CH1101016.
TPHCM tháng 08/2012
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
LỜI NÓI ĐẦU
Cơ sở dữ liệu phân tán là một khái niệm quan trọng trong thiết kế cơ sở dữ
liệu hiện nay. Với ưu thế rất rõ ràng so với cơ sở dữ liệu tập trung, nhất là những
lợi ích trong vấn đề tốc độ truy cập, tốc độ tìm kiếm và chi phí triển khai, duy trì,
cơ sở dữ liệu phân tán là một chọn lựa tối ưu của các công ty lớn có cơ sỡ dữ liệu
được lưu ở nhiều nơi.
Trong thiết kế cơ sở dữ liệu phân tán thì phân mảnh là một biện pháp thường
được chọn, trong đó phân mảnh ngang là một phương pháp hay được sử dụng.
Trong khuôn khổ bài thu hoạch nhỏ này, tôi xin trình về những kiến thức về
cơ sở dữ liệu phân tán nói chung, các cách thiết kế cơ sở dữ liệu phân tán, sau đó
tôi sẽ triển khai chi tiết về kỹ thuật phân mảnh. Cuối cùng, tôi xin trình bày cụ
thể về phân mảnh ngang, những yêu cầu, hướng thiết kế, ứng dụng và giải thuật
cũng như cách đánh giá lại việc thiết kế dựa vào kỹ thuật phân mảnh ngang.
Qua đây, tôi xin được gửi lời cảm ơn đến PGS – TS Đỗ Phúc, người đã tận
tâm truyền đạt những kiến thức nền tảng cơ bản về môn học “Cơ sở dự liệu nâng
cao”, để tôi có cơ sở kiến thức để có thể viết được bài thu hoạch này.


Do kiến thức còn hạn hẹp, bài thu hoạch có thể có những sai sót nhất định,
mong thầy và các bạn góp ý để bài thu hoạch ngày càng hoàn thiện hơn.
Tôi xin tỏ lòng biết ơn sâu xa!
Học viên thực hiện đề tài
Nguyễn Văn Khoa
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 2
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
MỤC LỤC
LỜI NÓI ĐẦU 2
MỤC LỤC 3
1. CƠ SỞ DỮ LIỆU PHÂN TÁN 4
Tìm hiều về cơ sở dữ liệu phân tán 4
Thiết kế cơ sở dữ liệu phân tán 12
Phân mảnh trong cơ sở dữ liệu phân toán 17
2. PHÂN MẢNH NGANG 24
Tìm hiểu về phân mảnh ngang 24
Yêu cầu thông tin trong phân mảnh ngang 24
Phân mảnh ngang nguyên thủy 28
Phân mảnh ngang dẫn xuất 35
Cách kiểm định tính đúng đắn của phân mảnh ngang 38
3. KẾT LUẬN 40
4. TÀI LIỆU THAM KHẢO 41
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 3
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
1. CƠ SỞ DỮ LIỆU PHÂN TÁN
Tìm hiều về cơ sở dữ liệu phân tán
Khái niệm
Một CSDL phân tán (Distributed Database) là một tập hợp dữ liệu, mà về mặt
logic tập hợp này thuộc cùng một hệ thống, nhưng về mặt vật lý dữ liệu đó được
trải trên các vị trí khác nhau của một mạng máy tính.

CSDL phân tán là một tập hợp nhiều CSDL có liên hệ logic và được phân bổ
trên một mạng máy tính. Mỗi trạm của mạng có khả năng xử lý tự quản và có thể
thực hiện các ứng dụng cục bộ, mỗi một trạm cũng có thể tham gia vào ít nhất 1
ứng dụng toàn cục, có yêu cầu truy xuất dữ liệu tại nhiều trạm.
Có 2 điểm quan trọng nêu ra trong định nghĩa là phân tán và tương quan logic.
Phân tán
Dữ liệu không cư trú trên một vị trí mà được phân bố rộng khắp trên nhiều
máy tính đặt tại nhiều vị trí khác nhau, đây là điểm phân biệt CSDL phân tán với
CSDL tập trung.
Tương quan logic:
• Dữ liệu trong hệ phân tán có một số thuộc tính ràng buộc chúng với nhau.
• Các file dữ liệu được lưu trữ tại nhiều vị trí khác nhau, điều này thường thấy
trong các ứng dụng mà hệ thống sẽ phân quyền truy nhập dữ liệu trong môi
trường mạng. Hệ thống mạng thông tin cho phép người dùng chia sẻ dữ liệu, vì
vậy người dùng hoặc ứg dụng ở vị trí A đều có thể truy cập hay cập nhật dữ liệu
tại vị trí B nào đó.
• Các vị trí của một CSDL phân tán có thể trải rộng trên một khu vực lớn (toàn thế
giới) hoặc một phạm vi hẹp (toà nhà)
• Cũng như vậy, máy tính ở các vị trí phân tán có thể là bất cứ loại nào, từ máy vi
tính đến các máy tính lớn
Ví dụ
Với một ngân hàng có ba chi nhánh đặt tại các vị trí khác nhau. Tại mỗi chi
nhánh có một máy tính điều khiển một số máy tính khác và CSDL thống kê của
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 4
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
chi nhánh đó. Mỗi máy tính với CSDL thống kê của mỗi nhánh được đặt ở một
vị trí của CSDL phân tán. Các máy tính được nối với nhau bởi một mạng truyền
thông. Các nút trong một mạng phân tán một mặt xử lý thông tin tại vị trí mà nó
quản lý, mặt khác nó cũng tham gia vào xử lý các yêu cầu về thông tin cần truy
cập qua nhiều địa điểm. Ví dụ việc lên danh sách tất cả các nhân viên của công

ty. Yêu cầu này đòi hỏi tất cả các máy tính ở các chi nhánh của công ty đều phải
hoạt động để cung cấp thông tin.
Đặc điểm
Những đặc tính chính của cơ sở dữ liệu phân bán là chia sẻ tài nguyên, tính
mở, khả năng song song, khả năng mở rộng, khả năng thứ lỗi, đảm bảo tính tin
cậy và nhất quán và tính trong suốt.
Chia sẻ tài nguyên
• Được thực hiện qua mạng truyền thông.
• Mỗi tài nguyên cần phải được quản lý bởi một chương trình có giao diện truyền
thông
• Các tài nguyên có thể được truy nhập, cập nhật một cách tin cậy và nhất quán.
Quản lý tài nguyên bao gồm:
• Lập kế hoạch dự phòng
• Đặt tên cho các lớp tài nguyên
• Cho phép tài nguyên được truy nhập từ nơi này đến nơi khác
• Ánh xạ tên tài nguyên vào địa chỉ truyền thông.
Tính mở
Tính mở của hệ thống phân tán là tính dễ dàng mở rộng phần cứng của nó.
Một hệ thống được gọi là có tính mở thì phải có các điều kiện sau:
• Hệ thống có thể tạo nên bởi nhiều loại phần cứng và phần mềm của nhiều nhà
cung cấp khác nhau.
• Có thể bổ sung vào các dịch vụ dùng chung tài nguyên mà không phá hỏng hay
nhân đôi các dịch vụ đang tồn tại.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 5
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
• Tính mở được hoàn thiện bằng cách xác định hay phân định rõ các giao diện
chính của một hệ và làm cho nó tương thích với các nhà phát triển phần mềm.
• Tính mở của hệ phân tán dựa trên việc cung cấp cơ chế truyền thông giữa các
tiến trình và công khai các giao diện dùng để truy nhập các tài nguyên chung.
Khả năng song song

• Hệ phân tán hoạt động trên một mạng truyền thông có nhiều máy tính, mỗi máy
có thể có một hay nhiều CPU.
• Có thể thực hiện nhiều tiến trình trong cùng một thời điểm. Việc thực hiện tiến
trình theo cơ chế phân chia thời gian (một CPU) hay (nhiều CPU).
• Khả năng làm việc song song trong hệ phân tán được thể hiện qua hai tình huống
sau:
• Nhiều người sử dụng đồng thời đưa ra các lệnh hay các tương tác với các chương
trình ứng dụng.
• Nhiều tiến trình Server chạy đồng thời, mỗi tiến trình phải đáp ứng yêu cầu từ
các Clients.
Khả năng mở rộng
Khả năng mở rộng của một hệ phân tán được đặc trưng bởi tính không thay
đổi phần mềm hệ thống và phần mềm ứng dụng khi hệ được mở rộng.
Yêu cầu cho việc mở rộng không chỉ là mở rộng phần cứng, về mạng mà nó
trải trên các khía cạnh khi thiết kế hệ phân tán.
Ví dụ: tần suất sử dụng trên mạng đột ngột. Để tránh tình trạng tắc nghẽn xảy
ra khi chỉ có một Server và phải đáp ứng các yêu cầu truy nhập các file đó.
Người ta nhân bản các file trên một Server khác và hệ thống được thiết kế sao
cho việc thêm Server được dễ dàng. Một số giải pháp khác là sử dụng Cache và
các bảng sao dữ liệu.
Khả năng thứ lỗi
Việc thiết kế khả năng thứ lỗi các hệ thống máy tính dựa trên hai giải pháp
sau:
• Dùng khả năng thay thế để đảm bảo sự hoạt động liên tục và hiệu quả.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 6
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
• Dùng các chương trình hồi phục dữ liệu khi xảy ra sự cố.
Đảm bảo tin cậy và nhất quán
Hệ thống yêu cầu độ tin cậy như:
• Bí mật của dữ liệu

• Các chức năng khôi phục hư hỏng phải đảm bảo
• Ngoài ra các yêu cầu của hệ thống về tính nhất quán cũng thể hiện ở chổ: không
có mâu thuẩn trong nội dung cơ sở dữ liệu
Tính trong suốt
Tính trong suốt của một hệ phân tán được hiểu như là việc che khuất đi các
thành phần riêng biệt của hệ đối với người sử dụng và những người lập trình ứng
dụng.
Các loại trong suốt trong hệ phân tán:
• Trong suốt phân đoạn (fragmentation transparency): Khi dữ liệu đã được phân
đoạn thì việc truy cập vào CSDL được thực hiện bình thường như là chưa bị
phân tán và không ảnh hưởng tới người sử dụng.
• Trong suốt về vị trí (location transparency)
o Người sử dụng không cần biết về vị trí vật lý của dữ liệu mà có quyền
truy cập đến cơ sở dữ liệu tại bất cứ vị trí nào.
o Các thao tác để lấy hoặc cập nhật một dữ liệu từ xa được tự động thực
hiện bởi hệ thống tại điểm đưa ra yêu cầu.
o Tính trong suốt về vị trí rất hữu ích, nó cho phép người sử dụng bỏ qua
các bản sao dữ liệu đã tồn tại ở mỗi vị trí. Do đó có thể di chuyển một
bản sao dữ liệu từ một vị trí này đến một vị trí khác và cho phép tạo
các bản sao mới mà không ảnh hưởng đến các ứng dụng.
So sánh với CSDL tập trung
Cơ sở dữ liệu phân tán được thiết kế khác cơ sở dữ liệu tập trung. Do đó cần
đối sánh các đặc trưng của cơ sở dữ liêu phân tán với cơ sở dữ liệu tập trung để
thấy được lợi ích của cơ sở dữ liệu phân tán. Đặc trưng mô tả cơ sở dữ liệu tập
trung là điều khiển tập trung, độc lập dữ liệu, giảm bớt dư thừa, cơ cấu vật lý
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 7
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
phức tạp đối với khả năng truy cập, toàn vẹn, hồi phục, điều khiển tương tranh,
biệt lập và an toàn dữ liệu. Sau đây là vài so sánh giữa cơ sở dữ liệu phân tán và
tập trung:

Về điều khiển tập trung
Đ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. Trong cơ sở dữ liệu phân tán, ta 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.
Về độc lập dữ liệu
Đây 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 cho chương trình ứng dụng. Tiện lợi chính của độc lập dữ liệu là
các chương trình ứng dụng không bị ảnh hưởng khi thay đổi cấu trúc vật lý của
dữ liệu. Trong cơ sở dữ liệu phân tán, độc lập dữ liệu có tầm quan trọng cũng
như trong cơ sở dữ liệu truyền thống. Khái niệm cơ sở dữ liệu trong suốt mô tả
hoạt động chương trình trên cơ sở dữ liệu phân tán được viết như làm việc trên
cơ sở dữ liệu tập trung. Hay nói cách khác tính đúng đắn của chương trình không
bị ảnh hưởng bởi việc di chuyển dữ liệu từ nơi này sang nơi khác trong mạng
máy tính. Tuy nhiên tốc độ làm việc bị ảnh hưởng do có thời gian di chuyển dữ
liệu.
Về giảm dư thừa dữ liệu
Trong cơ sở dữ liệu tập trung, tính dư thừa hạn chế được càng nhiều càng tốt
vì:
• 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; để
tránh được nhược điểm này giải pháp là chỉ có một bản sao duy nhất.
• Giảm không gian lưu trữ. Giảm dư thừa có nghĩa là cho phép nhiều ứng dụng
cùng truy cập đến một cơ sở dữ liệu mà không cần đến nhiều bản sao ở những
nơi chương trình ứng dụng cần .
Trong cơ sở dữ liệu truyền thống tính dư thừa dữ liệu cũng cần quan tâm vì:
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 8
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
• Tính cục bộ của chương trình ứng dụng sẽ tăng nếu dữ liệu đặt ở mọi nơi mà
chương trình ứng dụng cần.
• Khả năng sẵn sàng của hệ thống cao bởi vì khi có lỗi ở một nơi nào đó trong hệ

thống thì không cản trở hoạt động của chương trình ứng dụng.
Nói chung, nguyên nhân đối lập với tính dư thừa đưa ra trong môi trường
truyền thống vẫn còn đúng cho hệ thống phân tán và vì vậy công việc định giá
mức độ tốt của tính dư thừa đòi hỏi định giá lại công việc lựa chọn mức độ dư
thừa dữ liệu.
Cơ sở dữ liệu phân tán khắc phục được hai nhược điểm này vì 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.
Về cấu trúc vật lý và khả năng truy cập
Người sử dụng truy cập đến cơ sở dữ liệu tập trung phải thông qua cấu trúc
truy cập phức tạp: định vị cơ sở dữ liệu, thiết lập đường truyền
Trong cơ sở dữ liệu phân tán, cấu trúc truy cập phức tạp không phải là công cụ
chính để truy cập hiệu quả đến cơ sở dữ liệu. Hiệu quả có nghĩa là thời gian tìm
kiếm và chuyển dữ liệu nhỏ nhất, chi phí truyền thông thấp nhất.
Mỗi cách thức truy cập cơ sở dữ liệu phân tán viết bởi người lập trình hoặc tạo
ra bởi một bộ tối ưu. Công việc viết ra một cách thức truy cập cơ sở dữ liệu phân
tán cũng giống như viết chương trình duyệt trong cơ sở dữ liệu tập trung. Công
việc mà chương trình duyệt này làm là xác định xem có thể truy cập đến được
bao nhiêu cơ sở dữ liệu.
Về tính toàn vẹn, hồi phục và điều khiển tương tranh
Mặc dù trong cơ sở dữ liệu, tính toàn vẹn, hồi phục và điều khiển đồng thời
liên quan nhiều vấn đề liên quan lẫn nhau. Mở rộng hơn vấn đề này là việc cung
cấp các giao tác. Giao tác là đơn vị cơ bản của việc thực hiện: giao tác cụ thể là
bó công việc được thực hiện toàn bộ hoặc không được thực hiện.
Trong cơ sở dữ liệu phân tán, vấn đề điều khiển giao tác tự trị có ý nghĩa quan
trọng: hệ thống điều phối phải chuyển đổi các quỹ thời gian cho các giao tác liên
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 9
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
tiếp. Như vậy giao tác tự trị là phương tiện đạt được sự toàn vẹn trong cơ sở dữ
liệu Có hai mối nguy hiểm của giao tác tự trị là lỗi và tương tranh.

Về tính biệt lập và an toàn
Trong cơ sở dữ liệu truyền thống, 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 truy cập vào được
dữ liệu. Điểm quan trọng là trong cách tiếp cận cơ sở dữ liệu tập trung, không
cần thủ tục điều khiển chuyên biệt.
Trong cơ sở dữ liệu phân tán, những người quản trị địa phương cũng phải giải
quyết vấn đề tương tự như người quản trị cơ sở dữ liệu truyền thống.
Tuy nhiên, hai vấn đề đặc biệt sau đây của cơ sở dữ liệu phân tán có ý nghĩa
quan trọng khi đề cập đến:
• Thứ nhất trong cơ sở dữ liệu phân tán với cấp độ tự trị cao ở mỗi điểm, người có
dữ liệu địa phương sẽ cảm thấy an toàn hơn vì họ có thể tự bảo vệ dữ liệu của
mình thay vì phụ thuộc vào người quản trị hệ thống tập trung.
• Thứ hai, vấn đề an toàn thực chất với hệ thống phân tán không giống như các hệ
thống thông thường khác mà còn liên quan đến mạng truyền thông.
Như vậy 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ệ. 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.
Lợi ích của cơ sở dữ liệu phân tán
Có nhiều nguyên nhân để phát triển cơ sở dữ liệu phân tán nhưng tựu trung lại
chỉ gồm những điểm sau đây:
• 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
cơ sở dữ liệu 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.
• Tận dụng những cơ sở dữ liệu sẵn có: Hình thành cơ sở dữ liệu phân tán từ các
cơ sở dữ liệu tập trung có sẵn ở các vị trí địa phương.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 10
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
• Thuận lợi cho nhu cầu phát triển: Xu hướng dùng cơ sở dữ liệu 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.
• Giảm chi phí truyền thông: Trong cơ sở dữ liệu 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 cơ sở dữ liệu tại chỗ.
• Tăng số công việc thực hiện: Hệ cơ sở dữ liệu phân tán có thể tăng số lượng
công việc thực hiện qua áp dụng nguyên lý xử lý song song với hệ thống xử lý đa
nhiệm. Tuy nhiên cơ sở dữ liệu phân tán cũng có tiện lợi trong việc phân tán dữ
liệu như tạo ra các chương trình ứng dụng phụ thuộc vào tiêu chuẩn mở rộng vị
trí làm cho các nơi xử lý có thể hỗ trợ lẫn nhau. Do đó tránh được hiện tượng tắc
nghẽn cổ chai trong mạng truyền thông hoặc trong các dịch vụ thông thường
của toàn bộ hệ thống.
• Tính dễ hiểu và sẵn sàng: Hướng phát triển cơ sở dữ liệu 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.
Còn sau đây là 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:
• 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.
• Kỹ thuật thiết kế hệ cơ sở dữ liệu 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.
Kỹ thuật thiết kế cơ sở dữ liệu phân tán phức tạp nhưng hệ cơ sở dữ liệu phân
tán cũng cần thiết cho xu hướng phát triển kinh tế hiện nay.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 11
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Một số nhược điểm
Đối tượng chủ yếu của hệ phân tán là cung cấp các dịch vụ truy cập dữ liệu và
trình diễn dữ liệu cho người sử dụng ở mọi nơi khác nhau. Để đáp ứng được điều

này, hệ thống phân tán phải được thiết kế về phần cứng lẫn phần mềm thích hợp
với vị trí địa lý và yêu cầu của người sử dụng. Cũng từ đó, chúng ta có thể thấy
những nhược điểm của hệ thống phân tán như sau:
• Phần mềm đắt và phức tạp
• Phải xử lý mọi thay đổi thông báo trong mọi địa điểm
• Khó kiểm soát tính toàn vẹn dữ liệu với nhiều bản sao dữ liệu được phân bố khắp
mọi nơi.
• Đáp ứng chậm nhu cầu của các trạm trong trường hợp các phần mềm ứng dụng
không được phân bố phù hợp với việc sử dụng chung.
Thiết kế cơ sở dữ liệu phân tán
Thiết kế của một hệ thống máy tính phân tán bao gồm việc ra quyết định về
việc đặt dữ liệu và chương trình ở các trạm trên một mạng máy tính, cũng như là
khả năng thiết kế chính mạng máy tính đó. Trong trường hợp hệ thống quản lý
CSDL phân tán, việc phân tán các ứng dụng gồm 2 điều: sự phân tán của phần
mềm hệ thống quản lý CSDL phân tán và sự phân tán của các chương trình ứng
dụng chạy trên phần mềm hệ thống đó. Sự phân tán của các phần mềm hệ thống
quản lý CSDL phân tán tồn tại trong từng trạm lưu trữ dữ liệu. Ở chương này,
chúng ta không quan tâm về vị trí của các chương trình ứng dụng. Hơn nữa,
chúng ta giả sử rằng mạng đã được thiết kế, hoặc sẽ được thiết kế ở bước tiếp
theo, tuỳ theo quyết định liên quan tới việc thiết kế CSDL phân tán.
Chúng ta tập trung vào việc phân tán dữ liệu
Yêu cầu
Thiết kế một hệ thống máy tính phân tán cần phải chọn vị trí đặt dữ liệu và
chương trình trên một mạng máy tính, rất có thể phải kể luôn cả việc thiết kế
mạng. Đối với hệ quản trị CSDL phân tán cần phải thực hiện hai điều: phân tán
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 12
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
hệ quản trị CSDL và phân tán các chương trình ứng dụng chạy trên hệ đó. ở đây
chúng ta chỉ tập trung vào việc phân tán dữ liệu.
Việc tổ chức các hệ phân tán có thể được nghiên cứu dựa theo ba trục không

gian
• Mức độ chia sẻ dữ liệu (level of sharing)
• Kiểu mẫu truy xuất (behavior of access pattern)
• Mức độ hiểu biết về kiểu mẫu truy xuất
Trong đó, theo mức độ chia sẻ thì có ba khả năng xảy ra như sau:
• Không chia sẻ dữ liệu: mỗi ứng dụng và dữ liệu của nó thực thi tại một vị trí,
không có trao đổi hoặc giao tiếp với những chương trình khác hoặc truy xuất dữ
liệu ở những vị trí khác. Hình thức này đặc trưng cho các kết nối mạng ở thời kỳ
sơ khai.
• Chia sẻ dữ liệu: tất cả chương trình đều được nhân bản cho mỗi vị trí, nhưng
không nhân bản dữ liệu. Theo đấy các yêu cầu của người dùng được xử lý tại
mỗi vị trí và dữ liệu cần thiết được chuyển đi trên mạng.
• Chia sẻ dữ liệu - chương trình: cả chương trình và dữ liệu được dùng chung.
Nghĩa là chương trình nằm tại một vị trí có thể yêu cầu dịch vụ từ một chương
trình nằm ở vị trí thứ hai, và đến lượt nó chương trình này có thể truy xuất dữ
liệu nằm tại vị trí thứ ba.
Hai chiến lược chính trong việc thiết kế CSDL phân tán là tiếp cận từ trên
xuống và tiếp cận từ dưới lên. Trong thực tế rất hiếm các ứng dụng đơn giản để
chỉ sử dụng 1 cách tiếp cận, vì vậy trong phần lớn thiết kế cả hai cách tiếp cần
đều được áp dụng bổ sung nhau.
Các bước thiết kế
Hiện nay chưa có một kỹ thuật cụ thể nào nói một cách chi tiết cách thiết kế
một CSDL phân tán. Tuy nhiên, một cách tổng quát chúng ta có thể thiết kế
CSDL phân tán theo các bước sau:
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 13
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 1. Sơ đồ thiết kế tổng thể
Theo hình trên thì Thiết kế lược đồ quan hệ tổng thể là:
• Thiết kế các quan hệ tổng thể
• Mô tả toàn bộ dữ liệu sẽ được dùng trong hệ thống

Trong khi đó, thiết kế phân đoạn là thực hiện chia nhỏ dữ liệu thành các phần.
Thiết kế định vị các đoạn bao gồm:
• Là quá trình thực hiện ánh xạ các đoạn vào các trạm khác nhau
• Tạo các ảnh vật lý tại các trạm.
• Các đoạn dữ liệu được đưa vào các vị trí lưu trữ thích hợp với yêu cầu hoạt động
thực tế của hệ thống.
Thiết kế cơ sở dữ liệu vật lý là thiết kế dữ liệu vật lý cho các quan hệ tại các
trạm .
Các phương pháp thiết kế
Thiết kế từ trên xuống
Các định nghĩa: định nghĩa môi trường hệ thống, dữ liệu và các tiến trình cho
tất cả những khả năng về dữ liệu của NSD
• Thiết kế view: Xây dựng khung nhìn dữ liệu cho NSD
• Thiết kế mức quan niệm: Là một tiến trình kiểm tra và xác định rõ hai nhóm
quan hệ: phân tích thực thể và phân tích chức năng.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 14
Thiết kế lược đồ quan hệ tổng thể
Thiết kế phân đoạn
Thiết kế định vị các đoạn
(Tạo các ảnh vật lý)
Thiết kế CSDL vật lý
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
o Phân tích thực thể: Xác định các tập thực thể, các thuộc tính và các
mối quan hệ giữa chúng.
o Phân tích chức năng: Xác định các chức năng của hệ thống và đưa ra
các chức năng cơ sở.
• Thiết kế phân tán: bao gồm hai phần:
o Thiết kế phân đoạn
o Thiết kế định vị
• Lược đồ quan niệm địa phương: Tạo ra các lược đồ mức quan niệm tại các địa

phương
• Thiết kế vật lý: Thực hiện ánh xạ lược đồ mức quan niệm tại các địa phương ra
các đơn vị lưu trữ vật lý
• Quan sát và kiểm tra: Kiểm tra các giai đoạn của quá trình thiết kế cơ sở dữ liệu.
Sơ đồ quá trình thiết kế từ trên xuống biểu diễn trong hình sau:
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 15
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 2. Sơ đồ thiết kế từ trên xuống
Thiết kế từ trên xuống bao gồm:
• Thiết kế khái niệm: xác định các loại thực thể và liên hệ giữa các thực thể.
• Thiết kế phân tán: chia quan hệ thành nhiều quan hệ nhỏ hơn gọi là phân mảnh
và cấp phát chúng cho các vị trí (ta sẽ xem xét cụ thể ở phần sau).
• Thiết kế vật lý: ánh xạ lược đồ khái niệm sang các thiết bị lưu trữ vật lý tại các vị
trí tương ứng.
Thiết kế từ dưới lên
Thiết kế từ trên xuống thích hợp cho những CSDL được thiết kế từ đầu. Tuy
nhiên trong thực tế cũng có khi đã có sẵn một số CSDL, và chúng ta phải tích
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 16
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
hợp chúng thành 1 CSDL chung. Tiếp cận từ dưới lên sẽ thích hợp cho tình
huống này. Khởi điểm của thiết kế từ dưới lên là các lược đồ khái niệm cục bộ,
sẽ phải được tích hợp thành lược đồ khái niệm toàn cục.
Thiết kế từ dưới lên thích hợp khi liên kết CSDL đã có sẵn. Khi CSDL có sẵn
liên kết thành CSDL phân tán, các CSDL này có thể dùng HQTCSDL địa
phương ở vị trí đó. Để hệ thống đồng bộ cần thêm mộ số việc phức tạp như: đồng
bộ dữ liệu cần phải giải thích giữa các mẫu CSDL khác nhau. Trong thực tế hầu
hết các hệ thống đồng bộ đều sử dụng hướng thiết kế này.
Các yêu cầu của thiêt kế từ dưới lên:
• Chọn mô hình CSDL thông thường để thiết kế lược đồ toàn bộ của dữ liệu.
• Dịch chuyển mỗi lược đồ địa phương sang mô hình dữ liệu thông thường.

• Tích hợp sơ đồ địa phương sang sơ đồ toàn bộ thông thường.
Nhận xét
• Phương pháp thiết kế trên xuống thực sự có hiệu quả khi xây dựng một hệ thống
mới.
• Trong thực tế, một số CSDL đã tồn tại trước được tổ chức trong môi trường tập
trung và CSDL phân tán được phát triển bằng cách liên kết chúng lại thành một
CSDL mới thống nhất (Các DBMS địa phương khác nhau đã được sử dụng)
Cách thiết kế:
• Chọn một mô hình dữ liệu chung để mô tả lược đồ tổng thể
• Chuyển mỗi lược đồ địa phương theo mô hình dữ liệu chung đã chọn
• Tích hợp các lược đồ địa phương vào lược đồ tổng thể
Phân mảnh trong cơ sở dữ liệu phân toán
Phân mảnh quan hệ
Việc chia một quan hệ thành nhiều quan hệ nhỏ hơn được gọi là phân mảnh
quan hệ.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 17
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Các lý do phải phân mảnh
Trước tiên, khung nhìn của các ứng dụng thường chỉ là tập con của quan hệ.
Vì thế đơn vị truy xuất không phải toàn bộ quan hệ mà chỉ là tập con của quan
hệ. Kết quả là xem tập con của quan hệ là đơn vị phân tán là thích hợp.
Thứ hai là, nếu các ứng dụng có các khung nhìn được định nghĩa trên một
quan hệ cho trước lại nằm tại những vị trí khác nhau thì chỉ có hai cách chọn lựa
với đơn vị phân tán là toàn bộ quan hệ, khi không có phân mảnh. Hoặc quan hệ
không được nhân bản mà được lưu ở một vị trí, hoặc quan hệ được nhân bản cho
tất cả hoặc một số vị trí có chạy ứng dụng. Chọn lựa đầu gây ra một số lượng lớn
truy xuất không cần thiết đến dữ liệu ở xa. Còn chọn lựa sau có thể dẫn đến nhân
bản không cần thiết, gây khó khăn khi cập nhật và lãng phí không gian lưu trữ.
Cuối cùng việc phân rã quan hệ thành nhiều mảnh, mỗi mảnh xử lý như một
đơn vị, sẽ cho phép thực hiện nhiều giao dịch đồng thời. Việc phân mảnh quan

hệ cho phép thực hiện song song câu vấn tin, bằng cách chia nó thành một tập
câu vấn tin con hoạt tác trên các mảnh. Vì thế việc phân mảnh sẽ làm tăng mức
độ hoạt động đồng thời và kéo theo tăng lưu lượng hoạt động của hệ thống. Kiểu
hoạt động này gọi là đồng thời nội vấn tin (intraquerry concurency), sẽ được
phân tích trong các phần sau.
Nếu các ứng dụng có các khung nhìn được định nghĩa trên một quan hệ cho
trước nằm tại những vị trí khác thì có hai cách chọn lựa đơn vị phân tán:
• hoặc là toàn bộ quan hệ
• hoặc quan hệ được lưu ở một vị trí có chạy ứng dụng.
Trong đó, chọn lựa thứ nhất gây ra một số lượng lớn các truy xuất không cần
thiết đến dữ liệu ở xa. Chọn lựa sau sẽ gây ra nhiều vấn đề khi cập nhật và lãng
phí không gian lưu trữ.
Các kiểu phân mảnh
Có ba kiểu phân mảnh:
• Phân mảnh ngang (horizontal fragmentation)
• Phân mảnh dọc (vertical fragmentation).
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 18
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
• Phân mảnh hỗn hợp (hibrid fragmentation)
Chú ý là quá trình phân mảnh phải được gắn liền với vấn đề cấp phát dữ liệu
và bài toán cụ thể như thế nào.
Phân mảnh ngang
Phân mảnh ngang chia quan hệ theo các bộ. Mỗi mảnh là một tập con của
quan hệ. Có hai loại phân mảnh ngang: phân mảnh nguyên thuỷ (primary
horizontal fragmentation), thực hiện dựa trên các vị từ định nghĩa trên chính quan
hệ đó, và phân mảnh dẫn xuất (derived horizontal fragmentation), dựa trên các vị
từ định nghĩa trên quan hệ khác.
Phân mảnh dọc
Phân mảnh dọc là phân hoạch một quan hệ thành tập các quan hệ nhỏ hơn sao
cho mỗi mảnh chứa tập con thuộc tính và khóa.

Một phân mảnh dọc cho một quan hệ R sinh ra các mảnh R
1
, R
2
, ,R
r
, mỗi
mảnh chứa một tập con thuộc tính của R và cả khoá của R. Mục đích của phân
mảnh dọc là phân hoạch một quan hệ thành một tập các quan hệ nhỏ hơn để
nhiều ứng dụng chỉ cần chạy trên một mảnh. Một phân mảnh “tối ưu”là phân
mảnh sinh ra một lược đồ phân mảnh cho phép giảm tối đa thời gian thực thi các
ứng dụng chạy trên mảnh đó.
Phân mảnh hỗn hợp
Trong đa số các trường hợp, phân mảnh ngang hoặc phân mảnh dọc đơn giản
cho một lược đồ CSDL không đủ đáp ứng các yêu cầu từ ứng dụng. Trong
trường hợp đó phân mảnh dọc có thể thực hiện sau một số mảnh ngang hoặc
ngược lại, sinh ra một lối phân hoạch có cấu trúc cây. Bởi vì hai chiến lược này
được áp dụng lần lượt, chọn lựa này được gọi là phân mảnh hỗn hợp.
Ví dụ chung về phân mảnh
Chúng ta sử dụng lược đồ CSDL đã phát triển trong chương trước. Ta thêm
vào lược đồ PROJ thuộc tính LOC (vị trí) để chỉ nơi thực hiện dự án. Sau đây là
1 thể hiện CSDL sẽ được dùng:
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 19
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 3. Một mô tả cho cơ sở dữ liệu
Trong hình sau trình bày quan hệ PROJ được tách ngang thành 2 quan hệ
PROJ1 chứa các thông tin về dự án có kinh phí dưới 200000 USD, và PROJ2
chứa các thông tin về dự án có kinh phí lớn hơn 200000 USD.
Hình 4. Phân mảnh ngang
Còn trong hình sau trình bày quan hệ PROJ được tách dọc thành 2 quan hệ

PROJ1 chứa các thông tin về kinh phí dự án, và PROJ2 chứa các thông tin về tên
và vị trí dự án.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 20
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 6. Phân mảnh dọc
Việc phân mảnh có thể lồng ghép, vừa phân mảnh ngang vừa phân mảnh dọc,
thành phân mảnh hỗn hợp (hybrid fragmentation).
Các qui tắc phân mảnh đúng đắn
Có ba qui tắc trong khi phân mảnh đảm bảo CSDL sẽ không thay đổi ngữ
nghĩa khi phân mảnh.
Tính đầy đủ (completeness):
Cho quan hệ r bất kỳ. Giả sử r được phân rã thành các mảnh. Khi đó tính đầy
đủ yêu cầu mỗi mục dữ liệu trong r cũng phải được lưu trữ trong 1 hoặc vài
mảnh nào đó.
Tức là: Nếu một quan hệ R được phân rã thành các mảnh R1, R2, , Rk thì
mỗi mục dữ liệu có trong R phải có trong ít nhất một mảnh Ri nào đó.
Tính tái thiết (reconstruction)
Cho quan hệ r bất kỳ. Giả sử r được phân rã thành các mảnh r1 , , rn. Khi
đó tính đầy đủ yêu cầu “hợp” các phân mảnh của quan hệ r trả lại đầy đủ dữ liệu
ban đầu của quan hệ r. Khái niệm “hợp” ở đây là toán tử quan hệ ∆ sao cho
r = ∆ r
i
∀r
i
Toán tử ∆ thay đổi tuỳ theo từng loại phân mảnh. Khả năng tái thiết một quan
hệ từ các mảnh của nó đảm bảo rằng các ràng buộc định nghĩa theo phụ thuộc dữ
liệu sẽ được bảo toàn.
• Nếu một quan hệ R được phân rã thành các mảnh R
1
, R

2
, , R
k
thì phải tồn tại
một toán tử θ sao cho R = θ(R
i
), ∀i.
• Toán tử θ thay đổi tùy theo từng loại phân mảnh.
• Trong thực tế khi các mảnh được phân mảnh ngang thì θ là phép hợp, phân mảnh
dọc thì θ là phép nối và phân mảnh hỗn hợp thì θ là phép nửa nối .
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 21
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
Tính tách biệt (disjointness)
Cho quan hệ r bất kỳ. Giả sử r được phân rã thành các mảnh r1 , , rn . Khi
đó tính tách biệt yêu cầu một mục dữ liệu d nào đó một khi đã xuất hiện trong
mảnh ri thì sẽ không xuất hiện trong mảnh rk khác. Tiêu chuẩn này đảm bảo các
mảnh ngang sẽ tách biệt nhau. Còn trong phân mảnh dọc thì các thuộc tính khoá
chính phải được lặp lại trong mỗi mảnh, vì vậy tính tách biệt chỉ áp dụng với các
thuộc tính không khoá.
• Nếu một quan hệ R được phân mảnh ngang thành các quan hệ R
1
, R
2
, , R
k

mục dữ liệu t
i
nằm trong mảnh R
i

thì nó sẽ không nằm trong một mảnh R
k
, k≠i.
• Tiêu chuẩn này bảo đảm các mảnh ngang phải được tách rời nhau.
• Nếu quan hệ được phân mảnh dọc thì thuộc tính chung phải được lặp lại trong
mỗi mảnh. Do đó, 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à thuộc tính chung của quan hệ.
Các kiểu cấp phát
Giả sử CSDL đã được phân mảnh thích hợp và cần phải quyết định cấp phát
các mảnh cho các vị trí trên mạng. Khi dữ liệu được cấp phát, nó có thể được
nhân bản hoặc chỉ duy trì một bản duy nhất.
Một CSDL không nhân bản, gọi là CSDL phân hoạch, có chứa các mảnh
được cấp phát cho các vị trí, trong đó chỉ tồn tại một bản duy nhất cho mỗi mảnh
trên mạng.
Kiểu CSDL nhân bản có hai dạng:
• CSDL nhân bản hoàn toàn, trong đó toàn bộ CSDL đều có bản sao ở mỗi vị trí.
• CSDL nhân bản một phần, trong đó các mảnh được phân tán đến các vị trí, mỗi
mảnh có thể có nhiều bản sao nằm ở các vị trí khác nhau. Số lượng các bản sao
của các mảnh có thể là tham số (input) cho các thuật toán cấp phát (allocation
algorithm) hoặc là biến quyết định (dicision variable) mà giá trị của nó được xác
định bằng thuật toán này.
Lý do nhân bản là nhằm đảm bảo được độ tin cậy và hiệu quả cho các câu vấn
tin chỉ đọc. Nếu có nhiều bản sao của một mục dữ liệu thì chúng ta vẫn có cơ hội
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 22
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
truy xuất được dữ liệu đó ngay cả khi hệ thống có sự cố. Hơn nữa các câu vấn
tin chỉ đọc truy xuất đến cùng một mục dữ liệu có thể cho thực hiện song song vì
các bản sao có mặt tại nhiều vị trí.
Ngược lại, trong CSDL nhân bản các câu vấn tin cập nhật có thể gây nhiều rắc
rối vì phải đảm bảo các bản sao phải được cập nhật chính xác.

Vì vậy quyết định nhân bản cần được cân nhắc và phụ thuộc vào tỉ lệ giữa các
câu vấn tin chỉ đọc và câu vấn tin cập nhật. Quyết định này hầu như ảnh hưởng
đến tất cả các thuật toán của hệ QTCSDL phân tán và các chức năng kiểm soát
khác.
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 23
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
2. PHÂN MẢNH NGANG
Tìm hiểu về phân mảnh ngang
Định nghĩa
Phân mảnh ngang một quan hệ tổng thể n-bộ R là tách R thành các quan hệ
con n-bộ R1, R2, , Rk sao cho quan hệ R có thể được khôi phục lại từ các quan
hệ con này bằng phép hợp:
R = R1 ∪ R2 ∪ ∪ Rk
Phân mảnh ngang chia quan hệ theo các bộ. Mỗi mảnh là một tập con của
quan hệ. Có hai loại phân mảnh ngang: phân mảnh nguyên thuỷ (primary
horizontal fragmentation), thực hiện dựa trên các vị từ định nghĩa trên chính
quan hệ đó, và phân mảnh dẫn xuất (derived horizontal fragmentation), dựa trên
các vị từ định nghĩa trên quan hệ khác.
Chú ý là trước khi thực hiện phân mảnh, chúng ta cần thu thập thông tin cần
thiết.
Phân loại
Có hai loại phân mảnh ngang:
• Phân mảnh ngang chính (primary horizontal fragmentation): phân mảnh ngang
chính của một quan hệ được thực hiện dựa trên các vị từ được định nghĩa trên
quan hệ đó.
• Phân mảnh ngang dẫn xuất (derived horizontal fragmentation): phân mảnh ngang
dẫn xuất của một quan hệ được thực hiện dựa trên các vị từ được định nghĩa trên
quan hệ khác.
Yêu cầu thông tin trong phân mảnh ngang
Thông tin về cơ cở dữ liệu

Thông tin này bao gồm lược đồ khái niệm toàn cục, các liên kết giữa các quan
hệ, đặc biệt là phép nối. Thông tin về CSDL muốn nói đến là lược đồ toàn cục và
quan hệ gốc, các quan hệ con. Trong ngữ cảnh này, chúng ta cần biết được các
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 24
BÀI THU HOẠCH MÔN HỌC: CƠ SỞ DỮ LIỆU NÂNG CAO
quan hệ sẽ kết lại với nhau bằng phép nối hay bằng phép tính khác. với mục đích
phân mảnh dẫn xuất, các vị từ được định nghĩa trên quan hệ khác, ta thường dùng
mô hình thực thể - liên hệ (entity-relatiónhip model), vì trong mô hình này các
mối liên hệ được biểu diễn bằng các đường nối có hướng (các cung) giữa các
quan hệ có liên hệ với nhau qua một nối.
Trong mô hình quan hệ, các mối liên hệ được biểu thị bằng các quan hệ. Tuy
nhiên trong các mô hình khác, như mô hình thực thể-quan hệ, các mối liên hệ
được biểu diễn tường minh. Với mục đích thiết kế phân tán, các mối liên hệ cũng
được mô hình hoá trong bộ khung quan hệ. Theo cách này chúng ta sẽ vẽ các
đường nối (L) có hướng giữa các quan hệ (R, S) ràng buộc nhau qua phép đẳng
nối dạng trong đó R gọi là quan hệ chủ, S gọi là quan hệ thành
viên. Người ta dùng hàm owner và member để phân biệt các quan hệ này:
owner(L) = R và member(L) = S
Ví dụ: Hình sau trình bày một cách biểu diễn các đường nối giữa các quan hệ
PAY, EMP, PROJ và ASG.
Hình 7. Một cách biểu diễn các đường nối giữa các quan hệ
ở đây có ba đường nối L1, L2, L3, bao gồm;
• owner(L1) = PAY và member(L1) = EMP
• owner(L2) = EMP và member(L2) = ASG
• owner(L3) = PROJ và member(L3) = ASG
HỌC VIÊN THỰC HIỆN: NGUYỄN VĂN KHOA – MSHV: CH1101016 Page 25

×