Các khái niệm – Tableau – Định nghĩatableau: là một tập set các bộ tuple trên tập thuộc tính U là tập thuộc tính của lược đồ cơ sở dữ liệu R.. Các khái niệm - Phép chiếu toàn phần total
Trang 1(Updating Relational Databases Through Weak Instance Interfaces)
Lớp: Cao học K17 Giảng viên: Đồng Thị Bích Thủy
Lưu Huỳnh Châu Pha Đặng Hải Vân
Nhóm 16:
Cập nhật cơ sở dữ liệu quan hệ
thông qua giao diện thể hiện yếu
Trang 2Tài liệu trích dẫn
Atzeni, P., & Torlone, R (1992) Updating relational
databases through weak instance interfaces ACM.
dependencies
Maier, M D., A., O., & Sagiv, Y (1979) Testing implications
of data dependencies
2 2008
Trang 3Nội dung
Trang 4Cây khái niệm trong bài báo
4 2008
Trang 5Quy ước về ký hiệu (1/2)
scheme)
liệu = a database state = a database)
Trang 6Quy ước về ký hiệu (2/2)
Ri hay Ri(X): Lược đồ quan hệ (relational scheme) (trên tập thuộc tính X)
ri: quan hệ (relation) là một thể hiện của lược đồ quan hệ
Trang 7Quy ước về ký hiệu – Ví dụ (1/2)
R2(ED), R3(DM) [ký hiệu khác: Q1(EP), Q2(ED), Q3(DM))] và các phụ thuộc hàm ED, DM
Các thuộc tính: E (employee), P (project), D (dept), M
(manager)
Tập thuộc tính U = EPDM = Q1+ U Q2+ U Q3+
Q1+ = EP, Q2+ = ED, Q3+ = DM
Trang 8Quy ước về ký hiệu – Ví dụ (2/2)
Quan
hệ riThuộc tính Ai
Bộ t[X]
13 2008
Trang 9Các khái niệm – Y-total tuple – Ví dụ
Giải thích ký hiệu: v1, v2, v3: các biến (giá trị null)
Các bộ trên tập thuộc tính EPDM: t1(John,
A, CS,Smith), t2(John, B, CS, Smith),
t3(Bob, B, EE, v1), t4(Tom, C, v2, v3).
t1, t2: bộ đầy đủ (bộ EPDM-đầy đủ)
Trang 10Các khái niệm – Y-total tuple – Định nghĩa
Xét bộ trên X: t[X]
Y là tập con của X) nếu t[Y] chỉ chứa toàn giá trị khác biến
(đồng nhất với thuật ngữ giá trị null ở trên lớp)
15 2008
Trang 11Các khái niệm – x-belong
Một bộ t trên tập thuộc tính X (X U) gọi là x - thuộc (x-⊆ U) gọi là x - thuộc
(x-belong) một tình trạng cơ sở dữ liệu nhất quán r của một lược
đồ R với tập thuộc tính U nếu t thuộc về chiếu toàn phần theo
X (X-total projection) của thể hiện tiêu biểu của r Ký hiệu: [Ví dụ: select Employee, Manager => thuộc tính liên quan: Employee, Manager]
Trang 12Các khái niệm – Tableau – Ví dụ
Xét R = {R1(EP), R2(ED), R3(DM)},
với F: ED, DM
E(Employee), P (Project), D (Dept), M(Manager)
=> Tập các thuộc tính U = EPDM = {E, P, D, M}
R có tình trạng CSDL r như sau:
17 2008
Trang 13Các khái niệm – Tableau – Ví dụ
Trang 14Các khái niệm – Tableau – Ví dụ
Là 1 (ordinary) tableau
19 2008
Trang 15Các khái niệm – Tableau – Ví dụ
Là 1 (ordinary) tableau
Trang 16Các khái niệm – Tableau – Ví dụ
Là 1 (ordinary) tableau
21 2008
Trang 17Các khái niệm – Tableau – Định nghĩa
tableau): là một tập (set) các bộ (tuple) trên tập thuộc tính U (là tập thuộc tính của lược đồ cơ sở dữ liệu R) Một biến (nếu có) trong tableau T được gọi là duy nhất (unique) trong T nếu
nó chỉ xuất hiện một lần
Trang 18Các khái niệm - Phép chiếu toàn phần (total
mà đầy đủ trên X chính là chiếu toàn phần của tableau T trên tập thuộc tính X Ký hiệu:
23 2008
Trang 19Các khái niệm - Phép chiếu toàn phần – Ví
Trang 20Các khái niệm - Phép chiếu toàn phần (total projection ) – Định nghĩa mở rộng
Phép chiếu toàn phần của tableau T trên một lược đồ cơ sở dữ liệu R (ký hiệu: )
trạng cơ sở dữ liệu (database states)
lên tất cả các lược đồ quan hệ của R
25 2008
Trang 21Các khái niệm – Thể hiện yếu (weak
instance)
ri của tình trạng r, nghĩa là
(khi đó, gọi quan hệ này là một thể hiện
yếu cho tình trạng r)
Trang 22Các khái niệm – Thể hiện yếu – Ví dụ
nào để tìm ra một thể hiện yếu Tuy nhiên, sự tồn tại của một thể hiện yếu có thể được khảo sát thông qua thể hiện tiêu biểu (representative instance)
27 2008
Trang 23Các khái niệm – Tableau tình trạng
Tableau tình trạng (state tableau)
Ký hiệu: Tr (tableau tình trạng T ứng với tình trạng cơ sở dữ liệu r
hội (union) của tất cả các quan hệ ri trong tình trạng cơ sở dữ liệu r nhưng mở rộng theo tập thuộc tính U và các giá trị chưa
có được điền vào tableau này bằng ký hiệu các biến duy nhất
Trang 24Các khái niệm - CHASE
Thủ tục chase
áp dụng thủ tục chase trên tableau T và theo tập phụ thuộc F)
29 2008
Trang 25Các khái niệm - CHASE
thuộc hàm Khi đó, thủ tục chase trên tableau T sẽ giúp thay đổi các giá trị trong tableau bằng cách đồng nhất biến
(equating variables Ví dụ: biến đổi biến v2 thành v1) và thay giá trị hằng số cho biến (promoting variables Ví dụ: thay v2 thành giá trị John (thuộc tính Employee))
thủ tục chase (xảy ra mâu thuẫn khi có hai giá trị cùng được gán vào một giá trị trong một bộ t trên một thuộc tính A), thủ tục bị ngừng lại và trả về một tableau đặc biệt được gọi là
tableau không nhất quán (inconsistent tableau, ký hiệu Tx):
Trang 26Các khái niệm – Thể hiện tiêu biểu
(representative instance)
Ký hiệu: RIr (thể hiện tiêu biểu ứng với một tình trạng r)
tableau tình trạng Tr của tình trạng cơ sở dữ liệu r xét theo tập phụ thuộc của lược đồ cơ sở dữ liệu đang xét (nhắc lại: trong phạm vi ở đây chỉ xét đến tập phụ thuộc là tập phụ thuộc
hàm)
31 2008
Trang 27Các khái niệm – Thể hiện tiêu biểu
(representative instance)
liệu gọi là nhất quán nếu và chỉ nếu thể hiện tiêu biểu tương ứng không phải là một tableau không nhất quán (nghĩa là, thể hiện tiêu biểu được sinh ra mà không gặp phải mâu thuẩn
trong suốt quá trình thực hiện thủ tục chase)
Trang 28Các khái niệm – Sự thỏa mãn phụ thuộc và
tính nhất quán
(property) mà các tình trạng cơ sở dữ liệu hợp lệ phải thỏa
(satisfy) (nếu không thỏa thì không hợp lệ)
buộc (satisfaction): thỏa mãn cục bộ (local satisfaction) (tất cả các ràng buộc của lược đồ cơ sở dữ liệu được thỏa mãn trên từng quan hệ riêng) và thỏa mãn toàn cục (thỏa mãn toàn cục
= global satisfaction, hay còn gọi là nhất quán toàn cục =
global consistency) (tất cả các ràng buộc của lược đồ cơ sở dữ liệu được thỏa mãn trên tình trạng cơ sở dữ liệu)
33 2008
Trang 29Các khái niệm – Sự thỏa mãn phụ thuộc và
tính nhất quán
thuộc hàm (functional dependency) Khi đó, thuật ngữ dùng để chỉ sự thỏa mãn cục bộ là ‘local satisfaction’, tuy nhiên, trong phạm vi trình bày ở đây, ta dùng cụm từ ‘nhất quán cục bộ’ để diễn tả Tương tự, thuật ngữ dùng để chỉ sự thỏa mãn toàn cục
là ‘global satisfaction’ chứ chưa đồng nhất với ‘global
consistent’, tuy nhiên, ta vẫn dùng cụm từ ‘nhất quán toàn cục’
để diễn tả, hiểu ngầm là nhất quán toàn cục xét trên ràng buộc
là phụ thuộc hàm
Trang 30Các khái niệm – Tính nhất quán
F Một tình trạng cơ sở dữ liệu r được gọi là nhất quán toàn
cục xét theo tập phụ thuộc hàm F nếu có một quan hệ w trên tập thuộc tính U:
Trang 31Các khái niệm – Tính nhất quán - Ví dụ
lược đồ cơ sở dữ liệu trong bài giảng trên lớp
Trang 32Các khái niệm - ‘Chứa đựng tableau’
(tableau containment)
‘Chứa đựng tableau’ (tableau containment)
Cho 2 tableau T 1 , T 2 T 1 được chứa đựng trong T 2 (ký hiệu: T 1 ≤T 2 ) nếu
T 2 là tableau không nhất quán Tx
Hay
T 1 và T 2 đều là các tableau bình thường (không phải Tx) và
Có một hàm một phần (partial function) ψ (được gọi là ‘containment mapping’) từ D đến D thỏa:
ψ được định nghĩa trên tất cả các ký hiệu có xuất hiện trong T 1
ψ là thực thể trên các hằng số (nghĩa là không cần xét ψ nếu
t 1 [A] và t 2 [A] đều là giá trị hằng số trên tableau)
nếu ψ mở rộng theo hàng và tableau, ánh xạ T1 vào tập con của
T 2 (nghĩa là mỗi hàng t 1 thuộc T 1 , có một hàng t 2 thuộc T 2 sao cho ψ(t 1 [A]) = t 2 [A] với mọi A thuộc U (nghĩa là, nếu t 1 [A] là biến, cần xét ψ(t 1 [A]) = t 2 [A] )
37 2008
Trang 33Các khái niệm - ‘Chứa đựng tableau’
(tableau containment) – Ví dụ
T1≤T2
ψ: D->D
Hằng số: ψ(John) = John, ψ(CS) = CS,… Biến số: ψ(v1) = John
Với mỗi t1 thuộc T1, đều tồn tại t2 thuộc T2 thỏa ψ(v1) = John
2
Trang 34Các khái niệm - ‘Chứa đựng tableau’
(tableau containment) – Ví dụ
T2≤T1
ψ: D->D
ψ(v1) = John ψ(v2) = CS
2
39 2008
Trang 35Các khái niệm - ‘Tương đương tableau’
(tableau equivalence)
Nếu T1≤T2 và T2≤T1 thì hai tableau T1, T2 tương đương nhau
Ký hiệu: T1 ≡ T2
Trang 36Các khái niệm - ‘Tương đương tableau’
Trang 38Thứ tự một phần trên tập các tình trạng
(partial order)
43 2008
Trang 39Partial order – Sự tương đương tình trạng
(state equivalence)
r1 và r2 tương đương (ký hiệu r1 ~ r2)
chúng có cùng tập hợp các thể hiện yếu
các thể hiện tiêu biểu của chúng tương đương tableau nhau
và r2 là giống nhau (equal)
Trang 40Partial order – Sự tương đương tình trạng
(state equivalence) – Ví dụ
45 2008
Trang 41Partial order – Sự đầy đủ tình trạng (state
completeness)
(complete) nếu tình trạng r đó trùng (coincide) với chiếu toàn phần của thể hiện tiêu biểu trên lược đồ cơ sở dữ liệu, nghĩa là:
Trang 42Định lý 1 – giúp kiểm tra r1≤ r2
47 2008
Trang 43Thứ tự một phần - Cận trên nhỏ nhất, cận
dưới lớn nhất
Cận dưới (lower bound) của r1, r2
Cận dưới lớn nhất (greatest lower bound = glb) của r1, r2
Cận trên (upper bound) của r1, r2
Cận trên nhỏ nhất (least upper bound) của r1, r2
Trang 44ĐẶT VẤN ĐỀ -NỘI DUNG CHÍNH CỦA
BÀI BÁO
49 2008
Trang 45Ví dụ 1 – Vấn đề đối với phép chèn
Yêu cầu đối với phép chèn bộ (insertion)
(tuple) t
trạng S ban đầu
Trang 46Giải pháp xét trong ví dụ này: khi chèn, thực hiện:
Thêm các bộ ti vào trong các quan hệ ri của tình trạng cơ sở dữ liệu S ban đầu
phần (total projection) tương ứng của thể hiện tiêu biểu mới
51 2008
Trang 47Ví dụ 2 – Thực hiện chèn bộ - Trường hợp 1
E=Dan, M=Moore vào trong tình trạng cơ sở dữ liệu S
Trang 48Tình trạng CSDL S2008 53
Trang 49Ví dụ 2 – Thực hiện chèn bộ - Trường hợp 1
Thêm 1 bộ t2(e2,d2) vào r2, 1 bộ t3(d3,m3) (ký hiệu: e, d, m:
ký hiệu cho biến – variable, vì ta chưa xác định giá trị cụ thể) vào r3 sao cho:
d2= d3 Tuy nhiên, không có gợi ý nào về giá trị cụ thể của d2, d3 miễn
là đảm bảo được điều kiện d2 = d3
Khi đó, việc chèn vào sẽ đảm bảo được 2 điều kiện đã nói đến trong Ví dụ 1
Trang 50Ví dụ 3 – Thực hiện chèn 1 bộ - Trường hợp
2
vào trong tình trạng cơ sở dữ liệu S
chèn vào vẫn sẽ đảm bảo được 2 điều kiện đã nói đến trong Ví
dụ 1 Nguyên nhân là do phụ thuộc hàm DM, phép thay thế đuổi (chase) sẽ kết nối bộ t3 với bộ <Jim, MS> đã có trong r2
và phát sinh ra một bộ trong thể hiện tiêu biểu với giá trị Jim cho E và White cho M
55 2008
Trang 51Nội dung chính của bài báo
hình thực thể yếu: đưa ra các định nghĩa giúp phân biệt các trường hợp dễ và trường hợp khó, các đặc trưng hiệu quả
nghĩa trên một tập thuộc tính con của tập thuộc tính U)
Trang 52Nội dung chính của bài báo – phép chèn
phép chèn bộ trong Ví dụ 1
tiềm năng (potential result – là các kết quả của cùng một phép cập nhật, nhưng khác nhau, nghĩa là các kết quả đó ứng với các cách thay đổi khác nhau trên tình trạng cơ sở dữ liệu ban đầu)
57 2008
Trang 53Ví dụ 4 – Ví dụ về kết quả tiềm năng của 1
phép chèn bộ
của bộ t2 chèn vào r2 và t3 chèn vào r3 ngoài điều kiện t2[D] =
t3[D] (ký hiệu t[D]: giá trị của bộ t tại thuộc tính D) Do đó, ta
có thể có hai cách chèn khác nhau tạo ra hai kết quả tiềm năng khác nhau cùng thỏa điều kiện của phép chèn như sau:
Trang 54Ví dụ 4 - Kết quả tiềm năng 1
59 2008
Trang 56Ví dụ 4 - Kết quả tiềm năng 2
61 2008
Trang 58Ví dụ 4 - Kết quả tiềm năng 3
63 2008
Trang 60Nội dung của bài báo
khác nhau, tác giả bài báo đưa ra khái niệm về thứ tự một phần (partial order) trên tập các tình trạng cơ sở dữ liệu
65 2008
Trang 61Nội dung của bài báo – Phép chèn
Phát biểu theo ngôn ngữ về ‘thứ tự một phần’:
Điều kiện của phép chèn:
+ Điều kiện 1: tình trạng cơ sở dữ liệu sau khi chèn có chứa đựng đầy đủ thông tin trong tình trạng S ban đầu
Kết quả tiềm năng của phép chèn nằm sau tình trạng cơ sở
dữ liệu ban đầu theo thư tự một phần
+ Điều kiện 2: tình trạng cơ sở dữ liệu sau khi chèn Có chứa đựng thông tin có trong bộ t
Trang 62Khái niệm - Kết quả tiềm năng tối tiểu
Khái niệm ‘kết quả tiềm năng tối tiểu’: là kết quả tiềm năng nằm trước tất cả các kết quả tiềm năng khác theo thứ tự một phần Kết quả tiềm năng tối tiểu chỉ chứa thông tin cần và đủ, nên là một kết quả lý tưởng muốn đạt đến Tuy nhiên, như
trong Ví dụ 2 và Ví dụ 4, có thể tồn tại đồng thời nhiều kết quả
‘tối tiểu’ tiềm năng không thể so sánh được với nhau theo thứ
tự toàn phần Khi đó ta nói rằng kết quả tối tiểu không tồn tại
=> phân biệt 2 khái niệm: chèn xác định (deterministic
insertion) và chèn không xác định (nondeterministic insertion) phụ thuộc vào sự tồn tại hay không của kết quả tối tiểu
67 2008
Trang 63Ví dụ 5 – TH không tìm thấy kết quả tiềm
năng
và cơ sở dữ liệu với các lược đồ quan hệ R1(PC), R2(SC),
không có ràng buộc (constraint) nào Vì không có ràng buộc nào, thể hiện tiêu biểu của tình trạng cơ sở dữ liệu này được tạo nên chỉ bằng cách ghép các bộ từ mỗi quan hệ đã được mở rộng về thuộc tính (và không thực hiện áp dụng cơ chế thỏa ràng buộc trên thể hiện tiêu biểu), do đó không có bộ nào đầy
đủ (total tuples – là bộ chứa giá trị khác biến (đồng nhất với thuật ngữ giá trị null ở trên lớp) ở tất cả các thuộc tính P, S và C) Vì vậy, phép chèn một bộ t định nghĩa trên các thuộc tính PSC không có kết quả tiềm năng nào (vì không có tình trạng
cơ sở dữ liệu nào mà phép chiếu toàn phần (total projection)
Trang 64Phép chèn
69 2008
Trang 65Phép chèn-Các định nghĩa liên quan
Cho một lược đồ CSDL R={R1, R2, R3…, Rk} với tập thuộc tính phổ quát U=R1R2R3….Rk , với một tình trạng r của lược đồ CSDL R và một bộ t xác định trên tập thuộc tính X U Chúng ⊆ U) gọi là x - thuộc (x-
ta xét bài toán chèn bộ t vào r
Trang 66Phép chèn-Các định nghĩa liên quan
Một trạng thái rp gọi là kết quả tiềm năng cho phép chèn bộ t vào tình trạng CSDL r nếu t p và rﻛ rp
71 2008
Trang 67Phép chèn-Các định nghĩa liên quan
Trang 68Phép chèn-Các định nghĩa liên quan
Trang 71Phép xóa
Trang 72Phép xóa-Các định nghĩa liên quan
Một tình trạng CSDL là kết quả tiềm năng cho phép xóa một
bộ t ra khỏi một tình trạng CSDL r nếu rﻛp r và t p
cùng với phép xóa đó sao cho rﻛm rp
77 2008
Trang 73Phép xóa-Các định nghĩa liên quan
Một phép xóa được xác định nếu lub của các kết quả tiềm
năng là một kết quả tiềm năng
Trang 75Cám ơn cô và các bạn đã
chú ý lắng nghe.