Što je funkcionalna ovisnost?
Funkcionalna ovisnost (FD) je ograničenje koje određuje odnos jednog atributa s drugim atributom u sustavu upravljanja bazom podataka (DBMS). Funkcionalna ovisnost pomaže u održavanju kvalitete podataka u bazi podataka. Ona igra vitalnu ulogu u pronalaženju razlike između dobrog i lošeg dizajna baze podataka.
Funkcionalna ovisnost označena je strelicom "→". Funkcionalnu ovisnost X o Y predstavlja X → Y. Shvatimo na primjeru Funkcionalnu ovisnost u DBMS-u.
Primjer:
Broj zaposlenika | ime zaposlenika | Plaća | Grad |
1 | Dana | 50000 | San Francisco |
2 | Franjo | 38000 | London |
3 | Andrija | 25000 | Tokio |
U ovom primjeru, ako znamo vrijednost broja zaposlenika, možemo dobiti ime zaposlenika, grad, plaću itd. Ovime možemo reći da grad, ime zaposlenika i plaća funkcionalno ovise o broju zaposlenika.
U ovom vodiču naučit ćete:
- Ključni pojmovi
- Pravila funkcionalnih ovisnosti
- Vrste funkcionalnih ovisnosti u DBMS-u
- Višeznačna ovisnost u DBMS-u
- Trivijalna funkcionalna ovisnost u DBMS-u
- Netrivijalna funkcionalna ovisnost u DBMS-u
- Prijelazna ovisnost u DBMS-u
- Što je normalizacija?
- Prednosti funkcionalne ovisnosti
Ključni pojmovi
Evo nekoliko ključnih pojmova za funkcionalnu ovisnost u bazi podataka:
Ključni pojmovi | Opis |
Aksiom | Aksiomi su skup pravila zaključivanja koji se koriste za zaključivanje svih funkcionalnih ovisnosti o relacijskoj bazi podataka. |
Raspad | Pravilo je koje sugerira ako imate tablicu koja, čini se, sadrži dva entiteta koja su određena istim primarnim ključem, trebali biste razmotriti njihovo razdvajanje u dvije različite tablice. |
Ovisno | Prikazuje se s desne strane dijagrama funkcionalne ovisnosti. |
Determinanta | Prikazuje se na lijevoj strani Dijagrama funkcionalne ovisnosti. |
Unija | Sugerira da ako su dvije tablice odvojene, a PK je isti, trebali biste razmisliti o njihovom postavljanju. zajedno |
Pravila funkcionalnih ovisnosti
Ispod su tri najvažnija pravila za funkcionalnu ovisnost u bazi podataka:
- Refleksivno pravilo -. Ako je X skup atributa, a Y is_subset_of X, tada X ima vrijednost Y.
- Pravilo povećanja: Kada vrijedi x -> y, a c je skup atributa, tada vrijedi i ac -> bc. To je dodavanje atributa koji ne mijenjaju osnovne ovisnosti.
- Pravilo prijelaznosti: Ovo je pravilo vrlo slično prijelaznom pravilu u algebri ako vrijedi x -> y i y -> z, tada vrijedi i x -> z. X -> y naziva se funkcionalno koji određuje y.
Vrste funkcionalnih ovisnosti u DBMS-u
U DBMS-u postoje uglavnom četiri vrste funkcionalne ovisnosti. Slijede vrste funkcionalnih ovisnosti u DBMS-u:
- Višeznačna ovisnost
- Trivijalna funkcionalna ovisnost
- Netrivijalna funkcionalna ovisnost
- Prijelazna ovisnost
Višeznačna ovisnost u DBMS-u
Višeznačna ovisnost pojavljuje se u situaciji kada u jednoj tablici postoji više neovisnih viševrijednih atributa. Višeznačna ovisnost potpuno je ograničenje između dva skupa atributa u relaciji. To zahtijeva da određene korijene budu prisutne u relaciji. Razmotrite sljedeći Primjer višeznačne ovisnosti da biste razumjeli.
Primjer:
Car_model | Maf_godina | Boja |
H001 | 2017. godine | Metalik |
H001 | 2017. godine | Zelena |
H005 | 2018. godine | Metalik |
H005 | 2018. godine | Plava |
H010 | 2015 | Metalik |
H033 | 2012. godine | Siva |
U ovom su primjeru maf_year i boja neovisni jedni o drugima, ali ovise o car_model. U ovom se primjeru kaže da su ova dva stupca višeznačna ovisno o car_model.
Ova ovisnost može se predstaviti ovako:
car_model -> maf_godina
automobil_model-> boja
Trivijalna funkcionalna ovisnost u DBMS-u
Trivijalna ovisnost je skup atributa koji se nazivaju trivijalnim ako je skup atributa uključen u taj atribut.
Dakle, X -> Y je trivijalna funkcionalna ovisnost ako je Y podskup X. Razumijemo na primjeru trivijalne funkcionalne ovisnosti.
Na primjer:
Emp_id | Emp_name |
AS555 | Harry |
AS811 | George |
AS999 | Kevine |
Razmotrite ovu tablicu s dva stupca Emp_id i Emp_name.
{Emp_id, Emp_name} -> Emp_id je trivijalna funkcionalna ovisnost jer je Emp_id podskup {Emp_id, Emp_name}.
Netrivijalna funkcionalna ovisnost u DBMS-u
Funkcionalna ovisnost koja se također naziva i netrivijalna ovisnost događa se kada vrijedi A-> B gdje B nije podskup A. U vezi, ako atribut B nije podskup atributa A, tada se smatra ne-trivijalnim ovisnost.
Društvo | direktor tvrtke | Dob |
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
Jabuka | Tim Cook | 57 |
Primjer:
(Tvrtka} -> {CEO} (ako poznajemo tvrtku, znamo i ime izvršnog direktora)
No, izvršni direktor nije podskup tvrtke, a time je i netrivijalna funkcionalna ovisnost.
Prijelazna ovisnost u DBMS-u
Prijelazna ovisnost je vrsta funkcionalne ovisnosti koja se događa kada t neizravno tvore dvije funkcionalne ovisnosti. Razumijemo sa sljedećim Primjerom prijelazne ovisnosti.
Primjer:
Društvo | direktor tvrtke | Dob |
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
Alibaba | Jack Ma | 54 |
{Tvrtka} -> {CEO} (ako znamo tvrtku, znamo ime njezina izvršnog direktora)
{CEO} -> {Age} Ako poznajemo izvršnog direktora, znamo i dob
Prema tome, prema pravilu pravila o prijelaznoj ovisnosti:
{Tvrtka} -> {Dob} bi trebalo držati, to ima smisla, jer ako znamo naziv tvrtke, možemo znati njegovu dob.
Napomena: Morate imati na umu da se prijelazna ovisnost može pojaviti samo u odnosu tri ili više atributa.
Što je normalizacija?
Normalizacija je metoda organiziranja podataka u bazi podataka koja vam pomaže da izbjegnete anomaliju podataka, suvišnost, umetanje, ažuriranje i brisanje. To je postupak analize shema relacija na temelju njihovih različitih funkcionalnih ovisnosti i primarnog ključa.
Normalizacija je svojstvena relacijskoj teoriji baza podataka. To može imati učinak dupliciranja istih podataka unutar baze podataka što može rezultirati stvaranjem dodatnih tablica.
Prednosti funkcionalne ovisnosti
- Funkcionalna ovisnost izbjegava suvišnost podataka. Stoga se isti podaci ne ponavljaju na više mjesta u toj bazi podataka
- Pomaže vam u održavanju kvalitete podataka u bazi podataka
- Pomaže vam u definiranju značenja i ograničenja baza podataka
- Pomaže vam u prepoznavanju loših dizajna
- Pomaže vam u pronalaženju činjenica u vezi s dizajnom baze podataka
Sažetak
- Funkcionalna ovisnost je kada jedan atribut određuje drugi atribut u DBMS sustavu.
- Aksiom, razgradnja, ovisnost, odrednica, unija ključni su pojmovi za funkcionalnu ovisnost
- Četiri vrste funkcionalne ovisnosti su 1) Multivalued 2) Trivial 3) Netrivial 4) Transitive
- Višeznačna ovisnost pojavljuje se u situaciji kada u jednoj tablici postoji više neovisnih viševrijednih atributa
- Trivijalna ovisnost događa se kada skup atributa koji se nazivaju trivijalnim ako je skup atributa uključen u taj atribut
- Netrivijalna ovisnost javlja se kada vrijedi A-> B tamo gdje B nije podskup A
- Tranzitivna je vrsta funkcionalne ovisnosti koja se događa kada je neizravno formirana od dvije funkcionalne ovisnosti
- Normalizacija je metoda organiziranja podataka u bazi podataka koja vam pomaže da izbjegnete suvišnost podataka