THIẾT KẾ CƠ SỞ DỮ LIỆU
QUAN HỆ (Relational Database Designing)
Phần V – PHỦ (Cover) CỦA TẬP PHỤ THUỘC HÀM
Một số định nghĩa
Χηο Φ, Γ λ◊ 2 τ π πη τηυ χ η◊µ,ậ ụ ộ
Φ ϖ◊ Γ γ ι λ◊ τ νγ νγọ ươ đươ ν υ ϖ◊ χη ν υ ế ỉ ế
Φ
+
=Γ
+
Κ ηι υ : Φ ệ ≡ Γ
Φ γ ι λ◊ πη Γọ ủ ν υ ϖ◊ χη ν υ
Φ
+
⊇ Γ
+
2 tập Phụ thuộc hàm tương đương
Thuật toán kiểm tra F ≡ G
Β χ 1 : ướ Τνη Φ
+
, Γ
+
Β χ 2 : Ν υ Φ
+
= Γ
+
, => Φ ≡ Γ
Thuật toán kiểm tra F ≡ G
Phủ tối thiểu (minimal cover) –Tập Phụ
thuộc hàm không đầy đủ
Χηο λ χ Θ, τ π ΠΤΗ Φ, Ζượ đồ ậ Ψ ∈ Φ.
ΖΨ γ ι λ◊ ọ χ⌠ ϖ τρ〈ι δ τη αế ư ừ ηαψ Ψ πη τηυ χ ụ ộ
κηνγ ψ đầ đủ ϖ◊ο Ζ ηαψ ΖΨ λ◊ πη τηυ χ η◊µ
κηνγ ψ ν υ ϖ◊ χη ν υ :ế ỉ ế
∃Α ⊂ Ζ: Φ ≡ (Φ ∴ {ΖΨ}) ∪ {(Ζ−Α)Ψ}
Νγ χ λ ι, Ζượ ạ Ψ γ ι λ◊ πη τηυ χ η◊µ ψ ηαψ
κηνγ χ⌠ ϖ τρ〈ι δ τη α.
Φ χ γ ι (τ τ) λ◊ χ⌠ ϖ τρ〈ι κηνγ δ τη αđượ ọ ắ ế ư ừ ,
ν υ Φ κηνγ χη α ΠΤΗ χ⌠ ϖ τρ〈ι δ τη α.ế ứ ế ư ừ
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.1)
Phụ thuộc hàm không đầy đủ - Ví dụ
Χηο Θ(ΑΒΧ), Φ={ΑΒΧ, ΒΧ}
Ξτ ΑΒΧ :
Φ = Φ {ΑΒ’ – Χ} = {ΒΧ}
(ΑΒ−Α)Χ = {ΒΧ}
=> Φ = ’ (Φ {ΑΒ– Χ}) ∪ {(ΑΒ−Α)Χ} = {ΒΧ}
Τνη (Φ )’
+
, τα χ⌠ (Φ )’
+
= {ΑΒΧ,ΒΧ}
Τνη Φ
+
= Φ = {ΑΒΧ, ΒΧ}
=> Φ
+
= (Φ )’
+
=> ΑΒΧ λ◊ πη τηυ χ η◊µ χ⌠ ϖ τρ〈ι δ τη αụ ộ ế ư ừ
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.2)
Thuật toán loại khỏi F các
PTH không đầy đủ
Β χ 1 : Τνη Φ
+
Β χ 2 : ∆υψ τ τ π Φ, ϖ ι µ ι δ = Ξướ ệ ậ ớ ọ Ψ∈ Φ :
Β χ 2.1 : ∆υψ τ χ〈χ τ π χον Ξ’ướ ệ ậ ≠∅ χ α Ξ :ủ
Ν υ Ξ’Ψ ∈ Φ
+
: τηαψ Ξ = Ξ , λ π λ ι 2.1’ ặ ạ
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.3)
Tập phụ thuộc hàm có vế phải
1 thuộc tính
•
νη νγη α : Φ χ γ ι λ◊ Đị ĩ đượ ọ τ π πη τηυ χ η◊µ ậ ụ ộ
χ⌠ ϖ πη ι 1 τηυ χ τνηế ả ộ ν υ ϖ◊ χη ν υ µ ι
πη τηυ χ η◊µ τρονγ Φ υ χ⌠ ϖ πη ι χη 1 ụ ộ đề ế ả ỉ
τηυ χ τνη.
•
ς δ : Φ = {ΑΒΧ,ΒΧ,ΑΒ∆}, τα τ〈χη χ〈χ πη
τηυ χ η◊µ τρονγ Φ Φ τη α τιυ χηυ ν λ◊ τ π ộ để ỏ ẩ ậ
πη τηυ χ η◊µ χ⌠ ϖ πη ι 1 τηυ χ τνη :
Φ = {ΑΒ, ΑΧ, ΒΧ, ΑΒ∆}
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.4)
Tập phụ thuộc hàm không dư thừa
•
νη νγη α : Φ χ γ ι λ◊ τ π πη τηυ χ
η◊µ κηνγ δ τη α ư ừ
Κηνγ ∃ Φ ’ ⊂ Φ, Φ’≡ Φ
Νγ χ λ ι, Φ χ γ ι λ◊ τ π πη τηυ χ η◊µ
δ τη α.
•
ς δ : Φ = {ΑΒΧ, Β∆, ΑΒ∆}
Φ δ τη α ϖ Φ ≡ Φ = {Α’ ΒΧ, Β∆}
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.5)
Thuật toán loại khỏi F các
PTH dư thừa
∆υψ τ τ νγ ΠΤΗ Ξệ ừ Ψ τηυ χ Φ :ộ
Ν υ (Φ−{Ξế Ψ}) |= ΞΨ τη Φ = Φ−{ΞΨ}
ς δụ : Φ = {ΑΒΧ, Β∆, ΑΒ∆}
Ξτ ΑΒΧ : {Β∆, ΑΒ∆} κηνγ τη |= Αể ΒΧ
Ξτ Β∆ : {ΑΒΧ, ΑΒ∆} κηνγ τη |= Β∆
Ξτ ΑΒ∆ : {ΑΒΧ,Β∆} |= ΑΒ∆ ϖ :
ΑΒΧ => Α Β, δο Β∆ => Α∆ => ΑΒ∆
ς ψ ΑΒậ ∆ λ◊ δ τη α τρονγ Φ, => Φ = {Αư ừ ΒΧ,Β∆}
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.6)
Tập PTH tối thiểu
νη νγη α : Φ χ γ ι λ◊ µ τ τ π ΠΤΗ τ ι ậ ố
τηι υể (ηαψ Φ λ◊ 1 πη τ ι τηι υ) ν υ ϖ◊
χη ν υ Φ τη α 3 ι υ κι ν σαυ :
1. Φ λ◊ τ π ΠΤΗ χ⌠ ϖ τρ〈ι κηνγ δ τη α.
2. Φ λ◊ τ π ΠΤΗ χ⌠ ϖ πη ι 1 τηυ χ τνη.
3. Φ λ◊ τ π ΠΤΗ κηνγ δ τη α.
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.7)
Thuật toán tìm Phủ tối thiểu
Β χ 1ướ :
Λο ι κη ι Φ χ〈χ ΠΤΗ χ⌠ ϖ τρ〈ι δ τη α.ạ ỏ ế ư ừ
Β χ 2 :
Τ〈χη χ〈χ ΠΤΗ χ⌠ ϖ πη ι νηι υ η ν 1 τηυ χ τνη τη◊νη χ〈χ ế ả ề ơ ộ
ΠΤΗ χ⌠ ϖ πη ι 1 τηυ χ τνη.
Β χ 3 :
Λο ι κη ι Φ χ〈χ ΠΤΗ δ τη α.
⇒
Λυν τµ χ τ νη τ 1 ΠΤΗ τ ι τηι υ χ α 1 τ π ΠΤΗ β τ đượ ấ ố ể ủ ậ ấ
κ .ỳ
⇒
Χ⌠ τη τµ χ νηι υ ΠΤΗ τ ι τηι υ χ α 1 τ π ΠΤΗ β τ
κ .
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.8)
Thuật toán tìm PTT – Ví dụ
Ινπυτ : Θ(ΑΒΧ∆), Φ = {ΑΒΧ∆, ΒΧ, Χ∆}
Ουτπυτ : Φ
µ
= ΠΤΤ χ α Φủ
Β χ 1ướ :
ΑΒΧ∆ λ◊ ΠΤΗ κηνγ ψ , ϖ Α λ◊ δ τη α τρονγ đầ đủ ư ừ
ϖ τρ〈ι: Βế Χ, Χ∆ => ΒΧ∆.
=> Φ = {ΒΧ∆, ΒΧ, Χ∆}
Β χ 2 :
Φ = {ΒΧ, Β∆, ΒΧ, Χ∆}
Β χ 3 :
Φ = {ΒΧ, Χ∆}
Phủ tối thiểu của 1 tập phụ thuộc hàm (p.9)
Khóa(Key) của lược đồ quan hệ
Χηο Θ(Α
1
,Α
2
,…,Α
ν
), τ π ΠΤΗ Φ, Κ λ◊ 1 τ π χον χ α
Θ
+
νη νγη α : Κ λ◊ 1 σιυ κη⌠α χ α Θ ν υ
K
F
+
= Q
+
νη νγη αĐị ĩ : Κ λ◊ 1 κη⌠α χ α Θ ν υủ ế
•
K
F
+
= Q
+
•
Không tồn tại K’ ⊂ K , K’
F
+
= Q
+
Khóa của lược đồ quan hệ (p.1)
Thuật toán tìm khóa của LDQH
Ινπυτ : Λ χ θυαν η Θ, τ π ΠΤΗ Φượ đồ ệ ậ
Ουτπυτ : Κ λ◊ 1 κη⌠α χ α Θ
Β χ 1ướ : γ〈ν Κ = Θ
+
Β χ 2 : ∆υψ τ χ〈χ τηυ χ τνη Α τρονγ Κ,ệ ộ
_ Τνη Κ’
+
ϖ ι Κ = Κ−Α’
_ Ν υ Κ’
+
= Θ
+
, γ〈ν Κ = Κ’
Κη⌠α Κ τµ χ χ⌠ τη κηνγ λ◊ κη⌠α δυψ đượ ể
νη τ χ α Θấ ủ
Khóa của lược đồ quan hệ (p.2)
Tính chất của khóa
Κ ηι υ :
•
Τ π νγυ νậ ồ (ΤΝ) : χη α τ τ χ χ〈χ τηυ χ τνη χη ứ ấ ả ộ ỉ
ξυ τ ηι ν ϖ τρ〈ι χ α χ〈χ ΠΤΗ τρονγ Φ.ấ ệ ở ế ủ
•
Τ π χηậ đ (Τ∆) : χη α τ τ χ χ〈χ τηυ χ τνη χη
ξυ τ ηι ν ϖ πη ι χ α χ〈χ ΠΤΗ τρονγ Φ.
•
Τ π τρυνγ γιαν (ΤΓ) = Θ
+
− ΤΝ Τ∆–
Τνη χη τ : Ν υ Κ λ◊ 1 κη⌠α χ α Θ, τη
ΤΝ ⊆ Κ ϖ◊ Τ∆ ∩ Κ = ∅
Khóa của lược đồ quan hệ (p.3)
Tính chất của khóa – Chứng minh
Χη νγ µινη ΤΝ ⊆ Κ :
Γι σ ΤΝ κηνγ ả ử ⊆ Κ, => τ ν τ ι 1 ΠΤΗ Ξồ ạ Ψ∈Φ ϖ◊
Ξ κηνγ ⊆ Κ ϖ◊ κηνγ τ ν τ ι 1 ΠΤΗ Ζς ∈Φ
σαο χηο Ξ ⊆ ς
∆ α τρν τηυ τ το〈ν τµ βαο ⌠νγ χ α τ π τηυ χ ự ậ đ ủ ậ ộ
τνη Κ => Ξ κηνγ ξυ τ ηι ν τρονγ Κ
ι
ν◊ο =>
Ξ⊄Κ
+
Φ
=> τρ〈ι ϖ ι γι τηι τ (Κ λ◊ κη⌠α, νν
Ξ⊂Κ
+
Φ
)
Khóa của lược đồ quan hệ (p.4)
Tính chất của khóa – Chứng minh (t.t)
Χη νγ µινη Τ∆ ∩ Κ = ∅ :
Γι σ Τ∆ ∩ Κ ≠ ∅ => ∃Α: Α ∈ Τ∆ ∧ Α ∈ Κ
Α ∈ Τ∆ => τ ν τ ι 1 ΠΤΗ ΞΑ∈Φ (1)
Α∈Κ => Κ
+
=(Κ−Α)
+
∪Α ;
Ξ ⊆Κ
+
Ξ⊆(Κ−Α)
+
∪Α ;
Α∉Ξ ϖ ΞΑ κηνγ λ◊ ΠΤΗ ηι ν νηιν (ξεµ σλιδε 4
χη νγ 4) => Ξươ ⊆(Κ−Α)
+
=> Κ−ΑΞ (2)
(1) ϖ◊ (2) => Κ−ΑΑ => (Κ−Α)
+
= [(Κ−Α)∪Α]
+
=Κ
+
=>
ϖ λ ϖ Κ λ◊ κη⌠α.
Khóa của lược đồ quan hệ (p.5)
Thuật toán tìm tất cả các khóa
Β χ 1ướ : Τ ο τ π ΤΝ, ΤΓạ ậ
Β χ 2 : Ν υ ΤΓ=ế ∅ => Θ χη χ⌠ 1 κη⌠α Κ = ΤΝ, κ τ ỉ ế
τηχ τηυ τ το〈ν.
Β χ 3 : Τµ τ τ χ τ π χον Ξấ ả ậ
ι
χ α ΤΓ, τ Σủ đặ
ι
=ΤΝ∪Ξ
ι
,
τνη Σ
ι
+
. Γ ι Λ λ◊ τ π τ τ χ χ〈χ Σọ ậ ấ ả
ι
Β χ 4 : ∆υψ τ τ π Σệ ậ
ι
, ν υ Σ
ι
+
<>Θ
+
τη β Σỏ
ι
κη ι Λ.
Β χ 5 : ς ι µ ι Σ
κ
,Σ
λ
∈ Λ, ν υ Σ
κ
⊆Σ
λ
τη β Σ
κ
κη ι Λ.
Τ π Λ χ∫ν λ ι χηνη λ◊ τ π τ τ χ χ〈χ κη⌠α χ α Θ.
Khóa của lược đồ quan hệ (p.6)