www.wikidata.de-de.nina.az
Funktionale Abhangigkeiten FA sind ein Konzept der relationalen Entwurfstheorie und bilden die Grundlage fur die Normalisierung von Relationenschemata Eine Relation wird durch Attribute definiert Bestimmen einige dieser Attribute eindeutig die Werte anderer Attribute so spricht man von funktionaler Abhangigkeit So konnte man sich etwa eine Kundendatenbank vorstellen in der die Anschrift und die Telefonnummer eines Kunden eindeutig durch seinen Namen zusammen mit seinem Geburtsdatum bestimmt sind Hier waren also Anschrift und Telefonnummer funktional abhangig von Name und Geburtsdatum Mit Hilfe funktionaler Abhangigkeiten lasst sich auch der Begriff Schlussel definieren Bestimmen einige Attribute einer Relation eindeutig die Werte aller Attribute der Relation so spricht man von einem Superschlussel das heisst jedes Tupel dieser Relation ist eindeutig durch die Werte dieser Attribute bestimmt Zum Beispiel konnte man eine Kundennummer einfuhren die jeden Kunden identifiziert Ein Schlusselkandidat ist ein minimaler Superschlussel das heisst keine echte Teilmenge der Attribute dieses Schlussels bestimmt vollstandig die Werte aller anderen Attribute der Relation Unter allen Schlusselkandidaten einer Relation wird ein sogenannter Primarschlussel ausgewahlt Beispiel A B C1 1 31 1 31 2 42 3 53 3 6In diesem Beispiel ist C funktional abhangig von A und B geschrieben A B C Der Pfeil kann somit gelesen werden als bestimmt eindeutig Die ersten beiden Attribute zusammen bestimmen eindeutig welchen Wert Attribut C hat Anders ausgedruckt Ist bekannt welche Werte die ersten beiden Attribute haben ist damit auch der Wert des letzten Attributes bestimmt Aus A oder B alleine lasst sich in diesem Beispiel hingegen nicht jeder Wert von C eindeutig herleiten Inhaltsverzeichnis 1 Formale Definition 2 Axiome von Armstrong 3 Normalisierung mit funktionalen Abhangigkeiten 4 Attributhulle 5 Abgeschlossene Hulle 6 Weiterfuhrende Konzepte 7 Siehe auch 8 Literatur 9 WeblinksFormale Definition BearbeitenSei r R displaystyle r R nbsp eine Relation mit dem Relationenschema R displaystyle R nbsp und seien a displaystyle alpha nbsp und b displaystyle beta nbsp Teilmengen von Attributen von R displaystyle R nbsp Sei t r displaystyle t in r nbsp ein Tupel aus r displaystyle r nbsp Dann ist t a displaystyle t alpha nbsp die Einschrankung von t displaystyle t nbsp auf die Attribute aus a displaystyle alpha nbsp Die funktionale Abhangigkeit a b displaystyle alpha to beta nbsp b displaystyle beta nbsp ist funktional abhangig von a displaystyle alpha nbsp gilt auf R displaystyle R nbsp wenn fur jede zulassige Relation r R displaystyle r R nbsp gilt t 1 t 2 r t 1 a t 2 a t 1 b t 2 b displaystyle forall t 1 t 2 in r colon t 1 alpha t 2 alpha implies t 1 beta t 2 beta nbsp Das heisst fur alle Tupel t 1 t 2 r displaystyle t 1 t 2 in r nbsp mit gleichen a displaystyle alpha nbsp Attributen t 1 a t 2 a displaystyle t 1 alpha t 2 alpha nbsp gilt auch dass ihre b displaystyle beta nbsp Attribute gleich sind t 1 b t 2 b displaystyle t 1 beta t 2 beta nbsp Die Werte der Attribute aus der Attributmenge a displaystyle alpha nbsp bestimmen also eindeutig die Werte der Attribute aus der Attributmenge b displaystyle beta nbsp a displaystyle alpha nbsp wird in der Literatur auch als Determinante fur b displaystyle beta nbsp bezeichnet Fur Attributmengen schreibt man ublicherweise kurz a b displaystyle alpha beta nbsp statt a b displaystyle alpha cup beta nbsp b displaystyle beta nbsp heisst voll funktional abhangig von a displaystyle alpha nbsp wenn aus a displaystyle alpha nbsp kein Attribut entfernt werden kann so dass die Bedingung immer noch gilt Im Beispiel oben spielt das Attribut A displaystyle A nbsp fur die Bestimmung von C displaystyle C nbsp keine Rolle Aus der funktionalen Abhangigkeit A B C displaystyle AB to C nbsp lasst sich die volle funktionale Abhangigkeit B C displaystyle B to C nbsp gewinnen Axiome von Armstrong BearbeitenMit Hilfe der Axiome von Armstrong auch Armstrong Axiome lassen sich aus einer Menge von funktionalen Abhangigkeiten die auf einer Relation gelten weitere funktionale Abhangigkeiten ableiten Die folgenden drei Regeln reichen aus um alle funktionalen Abhangigkeiten herzuleiten 1 Eine Menge von Attributen bestimmt eindeutig die Werte einer Teilmenge dieser Attribute triviale Abhangigkeit das heisst b a a b displaystyle beta subseteq alpha Rightarrow alpha rightarrow beta nbsp Reflexivitat 2 Gilt a b displaystyle alpha rightarrow beta nbsp so gilt auch a g b g displaystyle alpha gamma rightarrow beta gamma nbsp fur jede Menge von Attributen g displaystyle gamma nbsp der Relation Erweiterungsregel Verstarkung 3 Gilt a b displaystyle alpha rightarrow beta nbsp und b g displaystyle beta rightarrow gamma nbsp so gilt auch a g displaystyle alpha rightarrow gamma nbsp Transitivitatsregel Um Herleitungen einfacher zu gestalten konnen zusatzlich die folgenden abgeleiteten Regeln verwendet werden 4 Gelten a b displaystyle alpha rightarrow beta nbsp und a g displaystyle alpha rightarrow gamma nbsp so gilt auch a b g displaystyle alpha rightarrow beta gamma nbsp Vereinigungsregel 5 Gilt a b g displaystyle alpha rightarrow beta gamma nbsp so gelten auch a b displaystyle alpha rightarrow beta nbsp und a g displaystyle alpha rightarrow gamma nbsp Dekompositions Zerlegungsregel 6 Gilt a b displaystyle alpha rightarrow beta nbsp und b g d displaystyle beta gamma rightarrow delta nbsp so gilt auch a g d displaystyle alpha gamma rightarrow delta nbsp Pseudotransitivitatsregel Normalisierung mit funktionalen Abhangigkeiten BearbeitenMit Hilfe von funktionalen Abhangigkeiten lassen sich Relationenschemata normalisieren Ein Relationenschema R displaystyle R nbsp ist zum Beispiel in Boyce Codd Normalform wenn fur alle funktionalen Abhangigkeiten a b displaystyle alpha to beta nbsp die auf R displaystyle R nbsp gelten gilt Die funktionale Abhangigkeit ist trivial oder a displaystyle alpha nbsp ist ein Superschlussel fur R displaystyle R nbsp Die 3 Normalform ist etwas abgeschwacht Fur sie muss eine der oben angegebenen Bedingungen gelten oder dass alle Attribute aus b a displaystyle beta alpha nbsp in mindestens einem der Schlusselkandidaten von R displaystyle R nbsp enthalten sind Es gibt Algorithmen die ein Relationenschema auf der Grundlage funktionaler Abhangigkeiten in normalisierte Schemata zerlegen Ziel einer solchen Zerlegung ist Verlustlosigkeit und Abhangigkeitstreue auch Abhangigkeitsbewahrung der Zerlegung Abhangigkeitstreue bedeutet dass alle funktionalen Abhangigkeiten die auf der ursprunglichen Relation gelten auch auf der Zerlegung noch gelten Ein solcher Algorithmus der in die dritte Normalform transferiert ist der Synthesealgorithmus Die Verlustlosigkeit einer Zerlegung in zwei Teilrelationen lasst sich mit Hilfe des Satzes von Delobel nachweisen Attributhulle BearbeitenDie Attributhulle a displaystyle alpha nbsp eines bestimmten Attributs a displaystyle alpha nbsp ist eine Menge aller Attribute die von a displaystyle alpha nbsp funktional abhangen Im kleinsten Fall ist die Attributhulle nur das Attribut selbst da keine anderen Attribute von ihm abhangen Will man die Attributhulle eines Attributs bei einer gegebenen Anzahl funktionaler Abhangigkeiten F bestimmen kann man einen einfachen Algorithmus anwenden der durch wiederholte Anwendung der Transitivitatsregel die Menge der abhangigen Attribute bestimmt Der Algorithmus ist wie folgt definiert Eingabe eine Menge funktionaler Abhangigkeiten F displaystyle F nbsp eine Menge von Attributen a displaystyle alpha nbsp Ausgabe die vollstandige Menge der Attribute a displaystyle alpha nbsp die sich aus a displaystyle alpha nbsp durch die Abhangigkeiten F displaystyle F nbsp ableiten lasst Es gilt a a displaystyle alpha rightarrow alpha nbsp Hulle F a displaystyle F alpha nbsp a a displaystyle alpha alpha nbsp while Anderung an a displaystyle alpha nbsp do foreach Abhangigkeit b g F displaystyle beta rightarrow gamma in F nbsp do if b a displaystyle beta subseteq alpha nbsp then a a g displaystyle alpha alpha cup gamma nbsp Angewendet auf eine konkrete Menge an funktionalen Abhangigkeiten F F hat die Abhangigkeiten A B C displaystyle A B rightarrow C nbsp D E F displaystyle D rightarrow E F nbsp A G H displaystyle A rightarrow G H nbsp G B displaystyle G rightarrow B nbsp Wir wollen die Attributhulle fur A displaystyle A nbsp bestimmen 1 A A displaystyle A A nbsp 2 Durchlaufen der funktionalen Abhangigkeiten von oben nach unten A B displaystyle A B nbsp ist keine Teilmenge von A displaystyle A nbsp D displaystyle D nbsp ist keine Teilmenge von A displaystyle A nbsp A displaystyle A nbsp ist Teilmenge von A displaystyle A nbsp A A G H displaystyle A A G H nbsp G displaystyle G nbsp ist Teilmenge von A G H displaystyle A G H nbsp A A B displaystyle A A B nbsp Neuer Durchlauf A B displaystyle A B nbsp ist Teilmenge von A G H B displaystyle A G H B nbsp A A C displaystyle A A C nbsp danach andert sich nichts mehr an der Menge A A G H B C displaystyle A A G H B C nbsp Abgeschlossene Hulle BearbeitenIntuitiv gesprochen ist die abgeschlossene Hulle einer Menge von funktionalen Abhangigkeiten die Menge der Attribute die durch die linken Seiten der Abhangigkeiten bestimmt ist Ist F a1 b1 an bn eine Menge von funktionalen Abhangigkeiten so ist die abgeschlossene Hulle oder Attributhulle die Menge a 1 a n g g displaystyle bigcup alpha 1 alpha n to gamma gamma nbsp und wird mit F displaystyle F nbsp bezeichnet Fur die Hulle gilt b R a 1 a n b b F displaystyle forall beta subseteq R alpha 1 alpha n to beta implies beta subseteq F nbsp Weiterfuhrende Konzepte BearbeitenMehrwertige Abhangigkeiten bilden eine Erweiterung der Funktionalen Abhangigkeiten die es ermoglichen zusatzliche Anomalien in einem relationalen Schema aufzudecken Konditionale Abhangigkeiten engl Conditional Functional Dependencies bilden eine Erweiterung der Funktionalen Abhangigkeiten um konkrete Wertetabellen Eine Abhangigkeit wie zum Beispiel PLZ Ort wird um eine zusatzliche Tabelle mit konkreten Werten wie zum Beispiel 80001 Munchen erweitert Der Postleitzahl 80001 wird der Ort Munchen direkt zugeordnet Mit Hilfe dieser konditionalen Abhangigkeiten lasst sich die Qualitat von Daten messen bzw es lassen sich Massnahmen zur Verbesserung der Datenqualitat ableiten Siehe auch BearbeitenMinimale Uberdeckung von Mengen funktionaler Abhangigkeiten Kanonische UberdeckungLiteratur BearbeitenAlfons Kemper Andre Eickler Datenbanksysteme Eine Einfuhrung Oldenbourg Munchen 2004 ISBN 3 486 27392 2 Philip Bohannon Fan Wenfei Floris Geerts Jia Xibei Anastasios Kementsietsidis Conditional Functional Dependencies for Data Cleaning IEEE Service Center Piscataway NJ 2007 Weblinks BearbeitenUniversitat Leipzig Normalisierung von Relationen Prof E Rahm PDF 593 kB Abgerufen von https de wikipedia org w index php title Funktionale Abhangigkeit amp oldid 235593975