Funkcionalna odvisnost v DBMS: kaj je, tipi in primeri

Kazalo:

Anonim

Kaj je funkcionalna odvisnost?

Funkcionalna odvisnost (FD) je omejitev, ki določa razmerje enega atributa do drugega atributa v sistemu za upravljanje baz podatkov (DBMS). Funkcionalna odvisnost pomaga ohranjati kakovost podatkov v bazi podatkov. Bistvenega pomena je najti razliko med dobrim in slabim oblikovanjem baze podatkov.

Funkcionalna odvisnost je označena s puščico "→". Funkcionalno odvisnost X od Y predstavlja X → Y. Razumejmo funkcijsko odvisnost v DBMS s primerom.

Primer:

Številka zaposlenega ime zaposlenega Plača Mesto
1. Dana 50000 San Francisco
2. Frančiška 38000 London
3. Andrew 25000 Tokio

V tem primeru lahko, če poznamo vrednost številke zaposlenega, dobimo ime zaposlenega, mesto, plačo itd. S tem lahko rečemo, da so mesto, ime zaposlenega in plača funkcionalno odvisni od številke zaposlenega.

V tej vadnici boste izvedeli:

  • Ključni pogoji
  • Pravila funkcionalnih odvisnosti
  • Vrste funkcionalnih odvisnosti v DBMS
  • Večvrednostna odvisnost v DBMS
  • Trivialna funkcionalna odvisnost v DBMS
  • Netrivialna funkcionalna odvisnost v DBMS
  • Prehodna odvisnost v DBMS
  • Kaj je normalizacija?
  • Prednosti funkcionalne odvisnosti

Ključni pogoji

Tu je nekaj ključnih izrazov za funkcionalno odvisnost v zbirki podatkov:

Ključni pogoji Opis
Aksiom Aksiomi so nabor pravil sklepanja, ki se uporabljajo za sklepanje o vseh funkcionalnih odvisnostih v relacijski bazi podatkov.
Razgradnja Pravilo pravi, da če imate tabelo, ki vsebuje dve entiteti, ki jih določa isti primarni ključ, jih razmislite o razdelitvi v dve različni tabeli.
Odvisno Prikazana je na desni strani diagrama funkcionalne odvisnosti.
Določilo Prikazana je na levi strani diagrama funkcionalne odvisnosti.
Unije Predlaga, da če sta dve tabeli ločeni in je PK enak, bi jih morali razmisliti. skupaj

Pravila funkcionalnih odvisnosti

Spodaj so navedena tri najpomembnejša pravila za funkcionalno odvisnost v zbirki podatkov:

  • Refleksivno pravilo -. Če je X niz atributov in je Y_subset_of X, potem X vsebuje vrednost Y.
  • Pravilo povečanja: Ko drži x -> y in je c nabor atributov, velja tudi ac -> bc. To je dodajanje atributov, ki ne spreminjajo osnovnih odvisnosti.
  • Prehodno pravilo: To pravilo je zelo podobno prehodnemu pravilu v algebri, če drži x -> y in y -> z, potem velja tudi x -> z. X -> y se imenuje funkcijsko, ki določa y.

Vrste funkcionalnih odvisnosti v DBMS

V DBMS obstajajo predvsem štiri vrste funkcionalne odvisnosti. Sledijo tipi funkcionalnih odvisnosti v DBMS:

  • Večvrednostna odvisnost
  • Trivialna funkcionalna odvisnost
  • Netrivialna funkcionalna odvisnost
  • Prehodna odvisnost

Večvrednostna odvisnost v DBMS

Večvrednostna odvisnost se pojavi v primeru, ko je v eni tabeli več neodvisnih večvrednostnih atributov. Večvrednostna odvisnost je popolna omejitev med dvema nizoma atributov v relaciji. Zahteva, da so v razmerju prisotni določeni nabori. Za razumevanje si oglejte naslednji primer večvrednosti odvisnosti.

Primer:

Car_model Maf_ leto Barva
H001 2017 Kovinski
H001 2017 Zelena
H005 2018 Kovinski
H005 2018 Modra
H010 2015 Kovinski
H033 2012 siva

V tem primeru sta maf_year in barva neodvisni drug od drugega, vendar odvisni od car_model. V tem primeru naj bi bila ta dva stolpca večvredna, odvisno od car_model.

To odvisnost lahko predstavimo tako:

car_model -> maf_year

car_model-> barva

Trivialna funkcionalna odvisnost v DBMS

Trivialna odvisnost je niz atributov, ki se imenujejo trivial, če je nabor atributov vključen v ta atribut.

Torej, X -> Y je trivialna funkcionalna odvisnost, če je Y podskupina X. Razumejmo s primerom trivialne funkcionalne odvisnosti.

Na primer:

Emp_id Emp_name
AS555 Harry
AS811 George
AS999 Kevin

Upoštevajte to tabelo z dvema stolpcema Emp_id in Emp_name.

{Emp_id, Emp_name} -> Emp_id je trivialna funkcionalna odvisnost, saj je Emp_id podmnožica {Emp_id, Emp_name}.

Netrivialna funkcionalna odvisnost v DBMS

Funkcionalna odvisnost, ki je znana tudi kot netrivialna odvisnost, se pojavi, ko velja A-> B, kadar B ni podmnožica A. V razmerju, če atribut B ni podmnožica atributa A, se šteje za netrivialno odvisnost.

Podjetje direktor Starost
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Apple Tim Cook 57

Primer:

(Podjetje} -> {CEO} (če poznamo podjetje, poznamo ime izvršnega direktorja)

Toda izvršni direktor ni podmnožica podjetja in zato ni nepomembna funkcionalna odvisnost.

Prehodna odvisnost v DBMS

Prehodna odvisnost je vrsta funkcionalne odvisnosti, ki se zgodi, kadar t posredno tvorita dve funkcionalni odvisnosti. Razumejmo z naslednjim primerom prehodne odvisnosti.

Primer:

Podjetje direktor Starost
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Podjetje} -> {CEO} (če poznamo podjetje, poznamo ime njegovega izvršnega direktorja)

{CEO} -> {Age} Če izvršnega direktorja poznamo, poznamo starost

V skladu s pravilom pravila o prehodni odvisnosti:

{Podjetje} -> {Starost} bi moralo držati, to je smiselno, ker če poznamo ime podjetja, lahko vemo njegovo starost.

Opomba: Ne pozabite, da se prehodna odvisnost lahko pojavi le v razmerju treh ali več atributov.

Kaj je normalizacija?

Normalizacija je metoda organiziranja podatkov v zbirki podatkov, ki vam pomaga, da se izognete odvečnosti podatkov, vstavljanju, posodabljanju in brisanju. Gre za postopek analize shem relacij na podlagi njihovih različnih funkcionalnih odvisnosti in primarnega ključa.

Normalizacija je neločljivo značilna za teorijo relacijskih baz podatkov. Lahko povzroči podvajanje istih podatkov v zbirki podatkov, kar lahko povzroči ustvarjanje dodatnih tabel.

Prednosti funkcionalne odvisnosti

  • Funkcionalna odvisnost se izogne ​​odvečnosti podatkov. Zato se isti podatki ne ponavljajo na več lokacijah v tej bazi podatkov
  • Pomaga vam pri ohranjanju kakovosti podatkov v zbirki podatkov
  • Pomaga vam pri določanju pomenov in omejitev baz podatkov
  • Pomaga vam prepoznati slabe modele
  • Pomaga vam najti dejstva v zvezi z zasnovo baze podatkov

Povzetek

  • Funkcionalna odvisnost je, ko en atribut določi drugega atributa v sistemu DBMS.
  • Axiom, Decomposition, Dependent, Determinant, Union so ključni izrazi za funkcionalno odvisnost
  • Štiri vrste funkcionalne odvisnosti so 1) večvrednostna 2) trivialna 3) netrivialna 4) tranzitivna
  • Večvrednostna odvisnost se pojavi v situaciji, ko je v eni tabeli več neodvisnih večvrednostnih atributov
  • Trivialna odvisnost se pojavi, ko nabor atributov, ki se imenuje trivial, če je niz atributov vključen v ta atribut
  • Netrivialna odvisnost se pojavi, ko velja A-> B, kadar B ni podskupina A
  • Tranzitiv je vrsta funkcionalne odvisnosti, ki se zgodi, kadar je posredno tvorjena iz dveh funkcionalnih odvisnosti
  • Normalizacija je metoda organiziranja podatkov v zbirki podatkov, ki vam pomaga, da se izognete odvečnosti podatkov