UHCL 30a Graduate Database Course - Bernsteins Synthesis Algorithm
Вставка
- Опубліковано 9 лис 2024
- This video corresponds to the unit 6 notes for a graduate database (dbms) course taught by Dr. Gary D. Boetticher at the University of Houston - Clear Lake (UHCL). The theme is relational database theory. This video focuses on how to convert a relation schema to third normal form using Bernstein's synthesis.
Thanks finally getting ready for final, school don’t teach properly
EXCELLENT SIR. THANKS A LOT. YOUR STUDENTS ARE VERY LUCKY. MY BEST WISHES FOR YOUR EXCELLENT SERVICE. MAY GOD GIVE YOU ALL SUPPORT.
3NF Snythesis algorithm: 5:00
1) make sure relation FDs are a minimal cover
2) take each FD and make it its own subschema
3) try to combine subschemas
These videos teach me better than my own lecturers
Gary you are a god
thank you for all the DB tutorials Mr. Gary.
5.53 "I lost the D"
Awesome videos though
Thank you sir
You also need to talk about its applicability only to universal relations and the impact of the algorithm on dependency preservation and losslessnes.
+jonesrz You actually did the latter part on preservation in this video which is the first feature that you should have talked about that is guaranteed in the synthesis algorithm. You don't really need to create the schemas first and then try to combine them. Doesn't make sense. You combine them beforehand instead of having 5 3NF schemas and then trying to combine.
Really good video, thanks!
excellent explanation!
thank you
Why is C->D preserved? We clearly lost the information that D is depending on C, by making D the key.
So why aren't C D and E the keys in relation T?
In 3NF we can't have non-key attributes determining other attributes, but C, in your example, is not a key and it still determines D, which violates 3NF. But if C were a key too, it would be perfectly fine.
C -> D is preserved because DE -> C, meaning that if you've got a unique identifier for any C, then the C doesn't need to be explicitly uniquely identified. What Dr Boetticher doesn't show in the video are the relations of the sub-schemas, being:
R1(*A*B, {A -> B})
R2(*A*C, {A -> C})
R3(*DE*C, {DE -> C})
R4(*DE*B, {DE -> B})
R5(*C*D, {C -> D})
These are simple enough, so we collapse them as Dr Boetticher mentions (combining FDs with the same LHSes):
S(*A*BC, {A -> B, A -> C})
T(*DE*BC, {DE -> C, DE -> B})
R5(*C*D, {C -> D}).
Now the implicit step not shown in the video - collapsing transitive sub-schemas. Since for R5's C -> D there exists a transitive (Armstrong's axioms) relation in another sub-schema (S, {DE -> C}, dismiss R5. (Intuitively, since DE determines C and C determines D, then we can establish the transitive FD DE -> D, ergo DE uniquely determines D. That also happens to be a trivial dependency.)
Finally, if a candidate key for the whole schema (in this case the minimum (and only possible?) one is *AE*) isn't present as a set of attributes for a sub-schema, we need to add another sub-schema with the empty set of FDs:
U(*AE*, ∅)
(This final step was covered, albeit in a rather confusing manner, in Dr Boetticher's next video of this series - part 31a.)
Ergo, the final output of our synthesis is:
{ (ABC, {A -> B, A -> C}),
(DEBC, {DE -> C, DE -> B}),
(AE, ∅) }
Which NF has this relation at first before the 3NF Synthesis algorithm?
Sir in video
for violating II normal form A+/ABCD ( BCD is non prime attribute so agree this is not the second form)
But for III normal form ( A->BC , DE-->BC) in this case ADE is key and A+/ABC still violating II normal Form.. so we count it in III normal forms)
Please clear that my point
Thank you
thanks!
The point is this **** relation :D hhhhhhhh
4:56 this ****** relation hhhhhhhhhhh