2.9 Kiến trỳc tổng quan của một hệ quản trị phức hệ CSDL phõn tỏn
2.9.2 Phõn loại cỏc phức hệ dựa vào cấu trỳc
Hệ quản trị phức hệ CSDL phõn tỏn khỏc với hệ quản trị CSDL phõn tỏn được phản ỏnh trong định nghĩa lược đồ khỏi niệm toàn cục. Trong cỏc hệ quản trị CSDL phõn tỏn tớch hợp logic, lược đồ khỏi niệm toàn cục là hợp của cỏc CSDL cục bộ, trong khi đú ở hệ quản trị
phức hệ CSDL phõn tỏn chỉ định nghĩa một tập con gồm một số CSDL cục bộ mà cỏc hệ quản trị CSDL cục bộ chia sẻ. Vỡ vậy định nghĩa CSDL toàn cục đa CSDL cú khỏc với định nghĩa CSDL toàn cục trong hệ quản trị CSDL phõn tỏn.
user user Multi Database Management System Multi Database Management System Database Management System Database Management System Database Management System Database Management System
Request Repond Request Repond
Site 1 Site n
Hỡnh 2.20 Mơ hỡnh kiến truc tổng quan của một phức hệ phõn tỏn
a) Cỏc mơ hỡnh sử dụng lược đồ khỏi niệm toàn cục: Trong một hệ đa CSDL, lược đồ
khỏi niệm toàn cục GCS được định nghĩa bằng cỏch tớch hợp cỏc lược đồ ngoài của cỏc CSDL tự vận hành cục bộ hoặc cỏc thành phần của lược đồ khỏi niệm cục bộ của chỳng. Mặt khỏc, Vỡ hệ thống là tự trị, người sử dụng của một DBMS cục bộ sẽ định nghĩa khung nhỡn riờng của họ trờn CSDL cục bộ và khụng cần phải thay đổi cỏc ứng dụng khi truy xuất vào cỏc CSDL cục bộ khỏc.
Việc thiết kế lược đồ khỏi niệm toàn cục GCS trong phức hệ CSDL thường được thực hiện từ dưới lờn (Bottom-Up), ỏnh xạ đi từ lược đồ khỏi niệm cục bộ đến lược đồ toàn cục (trong khi quản trị CSDL phõn tỏn, việc thiết kế lược đồ khỏi niệm toàn cục GCS
thường được thiết kế từ trờn xuống (Top-Down), ỏnh xạ lại theo hướng ngược lại). Khung nhỡn của người sử dụng trờn lược đồ quan hệ toàn cục được định nghĩa theo yờu cầu truy nhập toàn cục. Cỏc lược đồ ngoài toàn cục GES (Global External Schema) và lược đồ khỏi niện toàn cục GCS khụng nhất thiết phải sử dụng theo cựng một mụ hỡnh và ngơn ngữ dữ liệu, khụng cần xỏc định hệ thống là thuần nhất hay hỗn hợp.
Nếu hệ thống là hỗn hợp, thỡ cú hai lựa chọn cài đặt: đơn ngữ (Unilingual) và đa ngữ (Multilingual).
• Hệ quản trị phức hệ CSDL đơn ngữ cho phộp sử dụng cỏc mơ hỡnh và ngơn ngữ dữ liệu khỏc nhau khi truy xuất CSDL cục bộ và CSDL toàn cục. Bất kỳ ứng dụng nào truy xuất dữ liệu từ cỏc phức hệ CSDL đều phải thực hiện qua một khung nhỡn đó được định nghĩa trong lược đồ khỏi niệm toàn cục, nghĩa là truy xuất CSDL toàn cục khỏc với truy xuất CSDL cục bộ. Vỡ vậy, phải định nghĩa lược đồ ngoài cục bộ LES (Local External Schema) trờn lược đồ khỏi niệm cục bộ và lược đồ ngoài toàn cục GES trờn lược đồ khỏi niệm toàn cục. Khung nhỡn ngồi khỏc nhau cũng cú thể sử dụng cỏc ngụn ngữ truy nhập khỏc nhaụ Hỡnh 2.21 mụ tả mơ hỡnh logic của hệ CSDL đơn ngữ tớch hợp với lược đồ khỏi niệm cục bộ trong lược đồ khỏi niệm tồn cục.
• Kiến trỳc đa ngữ (Multilingual) cho phộp người sử dụng truy nhập tới CSDL toàn cục bằng lược đồ ngoài được định nghĩa bởi ngụn ngữ của hệ quản trị CSDL cục bộ. Định nghĩa GCS trong kiến trỳc đơn ngữ và đa ngữ giống nhaụ Tuy nhiờn định nghĩa cỏc lược đồ ngồỡ trong kiến trỳc đa ngữ được mụ tả bằng ngụn ngữ của lược đồ ngoài của CSDL cục bộ. Truy vấn được xử lý một cỏch chớnh xỏc như truy vấn trong cỏc hệ quản trị CSDL tập trung. Truy vấn CSDL toàn cục được sử dụng ngụn ngữ của hệ quản trị CSDL.Người sử dụng truy vấn CSDL dễ dàng hơn với cỏch tiếp cận đa ngữ .
Hỡnh 2.21 kiến trỳc phức hệ CSDL với một lược đồ khỏi niệm toàn cục.
2.9.3 Cỏc mơ hỡnh khơng sử dụng lược đồ khỏi niệm toàn cục
Một hệ thống cú nhiều CSDL nhưng khơng cú lược đồ toàn cục cú nhiều ưu điểm hơn, so với hệ thống cú lược đồ khỏi niệm toàn cục. Hỡnh 2.22. mơ tả kiến trỳc của một mơ hỡnh gồm hai tầng: tầng hệ thống cục bộ và tầng phức hệ CSDL. Tầng hệ thống cục bộ gồm một số hệ quản trị CSDL với chức năng là trỡnh bày cho tầng phức hệ CSDL cỏc phần của CSDL cục bộ dựng chung bởi nhiều người sử dụng cỏc CSDL khỏc. Dữ liệu dựng chung được trỡnh bày bởi lược đồ khỏi niệm cục bộ hoặc qua một định nghĩa lược đồ ngoài cục bộ. Tầng này được trỡnh bày bằng một tập cỏc lược đồ khỏi niệm cục bộ LCS. Nếu hỗn hợp, mỗi lược đồ LCS cú thể sử dụng mỗi mơ hỡnh dữ liệu khỏc nhaụ
GES1 GES2 GES3
GCS
LES11 LES12 LES13
GES1
LESn1 LESn2 LESn3
GESn
Trờn tầng hệ thống cục bộ là tầng hệ đa CSDL, bao gồm cỏc khung nhỡn được định nghĩa trờn một hay nhiều lược đồ khỏi niệm cục bộ. Vỡ vậy cú thể cấp quyền truy xuất vào nhiều CSDL bởi ỏnh xạ giữa khung nhỡn và lược đồ khỏi niệm cục bộ
Hỡnh 2.22. Kiến trỳc phức hệ CSDL khụng sử dụng GCS
Mơ hỡnh kiến trỳc dựa trờn cỏc thành phần của hệ đa CSDL khỏc biệt nhiều so với một hệ quản trị CSDL phõn tỏn. Khỏc biệt cơ bản là sự tồn tại của cỏc DBMS hoàn chỉnh quản lý từng CSDL khỏc nhaụ Đa CSDL cung cấp một tầng phần mềm chạy trờn những DBMS riờng biệt này và cung cấp cho người dựng những tiện ớch để truy xuất nhiều CSDL khỏc nhaụ Tuỳ thuộc vào vấn đề cú lược đồ khỏi niệm toàn cục hoặc là cú vấn đề đa chủng hay khụng, nội dung của tầng phần mềm sẽ thay đổị hinh 4.10 trỡnh bày một hệ quản trị đa CSDL phi phõn tỏn. nếu là hệ phõn tỏn, chỳng ta cần phải sao chộp tầng đa CSDL hco mỗi vị trớ cú hệ quản trị CSDL cục bộ tham gia vào hệ thống. cũng cần chỳ ý rằng nếu xem xột từng DBMS riờng biệt, tầng phức hệ CSDL chỉ đơn giản là một ứng dụng cú nhiệm vụ “đệ trỡnh” cỏc yờu cầu và nhận kết quả trả lờị
ES1 ES2 ESn
LCS1 LIS1 LCSn LISn LCS2 LIS2 Multidatabase Layer Local System Layer
Hỡnh 2.24 Cỏc thành phần của một phức hệ CSDL Cõu hỏi và bài tập
1. Ưu điểm cỏch tiếp cận mơ hỡnh cơ sở dữ liệu quan hệ
Ạ Tớnh đơn giản, tớnh độc lập dữ liệu, đối xứng, cơ sở lý thuyết vững chắc. B. Tớnh đơn giản, tớnh độc lập dữ liệu và toàn vẹn dữ liệụ
C. Tớnh độc lập dữ liệu và toàn vẹn dữ liệụ 2. Quan hệ là: Ạ R(Ω) = {(d1, d2,.., dn )⏐di ∈ D(Ai) , Ai ∈ Ω , i =1ữ n }. B. R(Ω) = {(A1, A2,.., An ) C. R(Ω) = A1 ∪ A2 ∪ ...∪ An 3. Thuộc tớnh quan hệ: Ạ Ω = {A1, A2,.., An ) B. Ω = A1 ∪ A2 ∪ ...∪ An C. Ω = A1 ∩ A2 ∩ ...∩ An
4. Bộ của quan hệ là:
Ạ Một chuỗi n giỏ trị, mỗi giỏ trị thuộc miền xỏc định tương ứng B. Một chuỗi n giỏ trị của cỏc thuộc tớnh.
C. Một bảng 2 chiều
5. Phụ thuộc hàm X → Y khi và chỉ khi,
Ạ Nếu 2 bộ bất kỳ trựng nhau trờn X thỡ cũng trựng nhau trờn Ỵ B. 2 bộ bất kỳ trựng nhau trờn X và trựng nhau trờn Ỵ
C. Nếu cú 2 bộ trựng nhau trờn X thỡ cũng trựng nhau trờn Ỵ 6. Phụ thuộc hàm X → Y khi và chỉ khi,
Ạ Một giỏ trị của Y được xỏc định bởi một giỏ trị của X. B. Một giỏ trị của X được xỏc định bởi một giỏ trị của Ỵ C. Một giỏ trị của X xỏc định một tập giỏ trị của Ỵ 7. Phụ thuộc đa trị X→→ Y khi và chỉ khi
Ạ Mỗi một giỏ trị của X xỏc định một tập giỏ trị của Y mà khụng liờn quan gỡ đến cỏc thuộc tớnh cịn lại Ω – X – Ỵ
B. Mỗi một giỏ trị của X xỏc định một tập giỏ trị của Y mà cúl iờn quan gỡ đến cỏc thuộc tớnh cịn lại Ω – X – Ỵ
C. Mỗi một giỏ trị của X xỏc định một tập giỏ trị của Y Ω – X – Ỵ 8. X là khoỏ lược đồ quan hệ
Ạ ( X → Ω) ∈ F + và khụng tồn tại Z ⊂ X sao cho (Z → Ω ) ∈ F + B. ( X → Ω) ∈ F + và tồn tại Z ⊂ X sao cho (Z → Ω ) ∈ F +
C. ( X → Ω) ∈ F + hoặc khụng tồn tại Z ⊂ X sao cho (Z → Ω ) ∈ F + 9. X là khoỏ lược đồ quan hệ
Ạ X+ ⊂ Ω và (X – A)+ ≠ Ω, ∀A∈ X. B. X+ = Ω và (X – A)+ ≠ Ω, ∀A∈ X. C. X+ = Ω và (X – A)+ = Ω, ∀A∈ X. 10. Dị thường thụng tin xuất hiện do:
Ạ Dữ liệu lặp, khi cập nhập, chốn thờm và khi thực hiện phộp xoỏ B. Khi truy vấn thụng tin
C. Chuẩn hoỏ dữ liệu 11. Quỏ trỡnh chuẩn hoỏ là:
Ạ Quỏ trỡnh tỏch lược đồ quan hệ về cỏc lược đồ quan hệ cú chuẩn cao và khụng làm tổn thất thụng tin.
B. Quỏ trỡnh tỏch lược đồ quan hệ về cỏc lược đồ quan hệ cỏc quan hệ 3NF C. Quỏ trỡnh tỏch lược đồ quan hệ về cỏc lược đồ quan hệ
12. Quy tắc toàn vẹn dữ liệu (Integrity Rule) là cỏc quy tắc: Ạ Ràng buộc cỏc trạng thỏi nhất quỏn của dữ liệụ B. Ràng buộc cấu trỳc và cỏc ràng buộc về hành vị
13. Cỏc phộp toỏn quan hệ cơ bản bao gồm:
Ạ Phộp chọn, chiếu, hợp, trừ và tớch Đề cỏc
B. Phộp giao, nối, phộp nối tự nhiờn, nối nửa và phộp chiạ C. Cỏc phộp gộp nhúm hay sắp xếp, cỏc phộp tớnh số học... 14. Kiến trỳc tổng quỏt của một hệ quản trị cơ sở dữ liệu quan hệ là:
Ạ Một hệ thống phần mềm
B. Cỏc hệ thống truyền thụng và hệ điều hành C. Cỏc hệ thống cỏc ứng dụng.
15. Cỏc tầng chức năng kiến trỳc của một hệ QTCSDL quan hệ gồm:
Ạ Tầng giao diện, điều khiển, xử lý vấn tin, thực thi, truy xuất dữ liệu và tầng duy trỡ nhất quỏn.
B. Tầng ứng dụng, trỡnh bày, giao vận, mạng, liờn kết dữ liệu và tầng vật lý. C. Tầng điều khiển, xử lý vấn tin, và tầng truy xuất dữ liệụ
16. Hệ quản trị CSDL phõn tỏn thuần nhất, nghĩa là
Ạ CSDL phõn mảnh thành cỏc CSDL cục bộ (Local) và được quản lý bởi cựng một hệ QTCSDL.
B. CSDL toàn cục bộ được quản lý bởi một hệ QTCSDL.
C. CSDL phõn tỏn trờn cỏc vị trớ khỏc nhau được quản lý bởi nhiều hệ QTCSDL.khỏc nhau
17. Hệ quản trị CSDL phõn tỏn khụng thuần nhất:
Ạ CSDL cục bộ được quản lý bởi cỏc hệ QTCSDL khỏc nhaụ B. CSDL toàn cục bộ được quản lý bởi một hệ QTCSDL. C. CSDL phõn mảnh thành cỏc CSDL cục bộ (Local) 18. Đặc tớnh hệ quản trị cơ sở dữ liệu phõn tỏn
Ạ Client Server, ngang hàng và hệ đa CSDL. B. Tự trị, phõn tỏn, hỗn hợp.
Trong chương này sẽ trỡnh bày những khỏi niệm cơ bản về cỏc phương phỏp phõn mảnh dữ liệu và bài toỏn cấp phỏt dữ liệu trờn cỏc vị trớ của mạng mỏy tớnh. Nội dung của chương bao gồm cỏc phần:
• Cỏc vấn đề về phõn mảnh dữ liệu
• Phương phỏp phõn mảnh ngang
• Phõn mảnh ngang dẫn xuất
• Phõn mảnh dọc
• Phương phỏp phõn mảnh hỗn hợp( Hybrid Fragmentation)
• Cấp phỏt và mơ hỡnh cấp phỏt 3.1 Cỏc vấn đề về phõn mảnh dữ liệu
Phần lớn cỏc hệ cơ sở dữ liệu phõn tỏn được thiết kế theo hướng từ trờn xuống (Top- Down). Thiết kế phõn mảnh dữ liệu là cụng việc đầu tiờn phải thực hiện. Mục đớch của việc phõn mảnh dữ liệu là tạo ra cỏc đơn vị cấp phỏt logic, sao cho chi phớ để thực hiện truy vấn thụng tin là thấp nhất. Cỏc bộ hoặc cỏc thuộc tớnh của quan hệ khụng thể được xem như một đơn vị cấp phỏt, vỡ sẽ làm cho việc cấp phỏt trở lờn phức tạp hơn. Thiết kế phõn mảnh bằng cỏch nhúm một số bộ trong trường hợp phõn mảnh ngang hay nhúm cỏc thuộc tớnh trong trường hợp phõn mảnh dọc cú cựng đặc tớnh theo quan điểm cấp phỏt. Cỏc mảnh hỡnh thành bằng cỏc phương phỏp phõn mảnh tạo ra cỏc đơn vị cấp phỏt dữ liệu khỏc nhaụ
3.1.1 Lý do phõn mảnh
Trong thiết kế CSDL phõn tỏn , 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ềụ Cỏc thao tỏc đố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ỉ yờu cầu thao tỏc trờn cỏc tập con của cỏc quan hệ, là khung nhỡn dữ liệu của người sử dụng. 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ờị Đồng thời 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 vấn tin bằng cỏch chia nú thành một tập cỏc 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à tăng lưu lượng hoạt động của hệ thống. Tuy nhiờn khụng phải việc phõn mảnh chỉ cú ưu điểm hồn tồn, mà nú cũng thể hiện những hạn chế nhất định như:
• Nếu ứng dụng cú những yờu cầu “xung đột” ngăn cản phõn ró thành cỏc mảnh được sử dụng độc quyền.
• Những ứng dụng cú cỏc khung nhỡn được định nghĩa trờn nhiều mảnh khỏc nhau sẽ làm giảm hiệu suất 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 và tăng chi phớ kết nối cỏc mảnh
• Việc kiểm soỏt ngữ nghĩa, đặc biệt là vấn đề kiểm tra tớnh tồn vẹn sẽ khú khăn hơn
3.1.2 Cỏc kiểu phõn mảnh
Cỏc quan hệ cơ sở dữ liệu thường được biểu diễn dưới dạng bảng. Việc phõn mảnh một quan hệ thành nhiều quan hệ con khỏc nhau theo cỏc cỏch khỏc nhau, sẽ cú cỏc cỏch phõn mảnh tương ứng. Cú hai kiểu phõn mảnh tương ứng với việc chia quan hệ theo chiều dọc và chia quan hệ theo chiều ngang .
Phõn mảnh theo chiều dọc: Cỏc quan hệ được chia theo chiều dọc. Nghĩa là thiết lập một quan hệ mới chỉ cú một số thuộc tớnh từ quan hệ gốc. Thực chất đõy là phộp chiếu trờn tập con cỏc thuộc tớnh của quan hệ.
Vớ dụ 3.1 Tỏch dọc quan hệ PROJ thành 2 quan hệ PROJ1 và PROJ2 như sau:
π PNO,BUDGET (PROJ) và π PNO,PNAME,LOG (PROJ) và
Phõn mảnh ngang: Quan hệ được chia theo chiều ngang. Thực chất đõy là phộp chọn trong quan hệ. Chọn những bộ của quan hệ thỏa món một biểu thức điều kiờn cho trước.
Vớ dụ 3.2 Tỏch ngang quan hệ PROJ thành 2 quan hệ PROJ1 và PROJ2 thoả theo điều
kiện: BUDGET ≤ 200000 và BUDGET > 200000 như sau: σ BUDGET ≤ 200000 (PROJ) σ BUDGET > 200000 (PROJ) Hỡnh 3.1. Phõn mảnh dọc PNO BUDGET P1 150000 P2 135000 P3 250000 P4 310000 PROJ
PNO PNAME LOG
P1 Instrumentation Montreal P2 Database Develop New York
P3 CAD/CAM New York
P4 Maintenance Paris
PROJ
PNO PNAME BUDGET P1 Instrumentation 150000
P2 Database Develop 135000
3.1.3 Mức độ phõn mảnh
Phõn mảnh cơ sở dữ liệu đến mức độ nào là đủ, khụng làm ảnh hưởng đến hiệu năng của 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 được phõn mảnh, cú thể phõn mản cỏc quan hệ đó được phõn mảnh. Cú thể phõn mảnh theo chiều dọc (theo từng thuộc tớnh) hoặc theo chiều ngang (theo từng bộ trong quan hệ).
Một mức độ ứng phõn mảnh thớch hợp sao cho trỏnh được cỏc hạn chế khi phõn mảnh chỉ được định nghĩa ứng với cỏc ứng dụng sẽ chạy trờn cơ sở dữ liệụ
3.1.4 Cỏc quy tắc phõn mảnh
Cỏc nguyờn tắc để đảm bảo cơ sở dữ liệu khi phõn mảnh sẽ đảm bảo tớnh khơng thay đổi về ngữ nghĩạ Dưới đõy là ba qui tắc phải tuõn thủ khi phõn mảnh cơ sở dữ liệu quan hệ.
1. Tớnh đầy đủ: Quan hệ R được phõn ró thành cỏc mảnh R1, R2…Rn, thỡ mỗi mục dữ
liệu cú trong quan hệ R sẽ được chứa trong ớt nhất một mảnh Ri (i=1,..,n). Quy tắc này đảm bảo cho cỏc mục dữ liệu trong R được ỏnh xạ hoàn toàn vào cỏc mảnh và khụng bị mất. Mục dữ liệu cú thể hiểu là bộ trong phõn mảnh ngang và thuộc tớnh trong phõn mảnh dọc.
2. Tớnh phục hồi: Nếu một quan hệ R được phõn ró thành cỏc mảnh R1, R2,…,Rn khi
đú: R =∇Ri, ∀Ri∈FR . Toỏn tử ∇ thay đổi tựy theo từng loại phõn mảnh.. Khả