Toiminnallinen riippuvuus DBMS:ssä: mikä on, tyypit ja esimerkit
Mikä on toiminnallinen riippuvuus?
Toiminnallinen riippuvuus (FD) on rajoite, joka määrittää yhden attribuutin suhteen toiseen määritteeseen tietokannan hallintajärjestelmässä (DBMS). Funktionaalinen riippuvuus auttaa ylläpitämään tietokannan tietojen laatua. Sillä on tärkeä rooli hyvän ja huonon tietokantasuunnittelun välisen eron löytämisessä.
Toiminnallinen riippuvuus on merkitty nuolella “→”. X:n toiminnallista riippuvuutta Y:stä edustaa X → Y. Ymmärretään DBMS:n toiminnallinen riippuvuus esimerkin avulla.
Esimerkiksi:
| Työntekijän numero | työntekijän nimi | Palkkaus | Kaupunki |
|---|---|---|---|
| 1 | Dana | 50000 | San Francisco |
| 2 | Francis | 38000 | Lontoo |
| 3 | Andrew | 25000 | Tokio |
Tässä esimerkissä, jos tiedämme Työntekijän numeron arvon, voimme saada työntekijän nimen, kaupungin, palkan jne. Tällä voidaan sanoa, että kaupunki, työntekijän nimi ja palkka ovat toiminnallisesti riippuvaisia työntekijän numerosta.
Keskeisiä termejä
Tässä on joitain avaintermejä toiminnallisesta riippuvuudesta tietokannassa:
| Keskeiset ehdot | Tuotetiedot |
|---|---|
| Axiom | Aksioomit ovat päättelysääntöjä, joita käytetään päättelemään kaikki relaatiotietokannan toiminnalliset riippuvuudet. |
| hajoaminen | Se on sääntö, joka ehdottaa, että jos sinulla on taulukko, joka näyttää sisältävän kaksi entiteettiä, jotka määritetään samalla ensisijaisella avaimella, sinun tulee harkita niiden jakamista kahteen eri taulukkoon. |
| riippuvainen | Se näkyy näytössä toiminnallisen riippuvuuden kaavion oikea puoli. |
| määräävä tekijä | Se näkyy toiminnallisen riippuvuuden kaavion vasemmalla puolella. |
| Liitto | Se ehdottaa, että jos kaksi taulukkoa ovat erillisiä ja PK on sama, sinun tulee harkita niiden sijoittamista. yhdessä |
Toiminnallisten riippuvuuksien säännöt
Alla on kolme tärkeintä sääntöä tietokannan toiminnallisesta riippuvuudesta:
- Refleksiivinen sääntö -. Jos X on attribuuttijoukko ja Y on X:n_osajoukko, X:llä on Y:n arvo.
- Lisäyssääntö: Kun x -> y pätee ja c on attribuutti asetettu, niin ac -> bc myös pätee. Tämä tarkoittaa attribuuttien lisäämistä, jotka eivät muuta perusriippuvuuksia.
- Transitiivisuussääntö: Tämä sääntö on hyvin samanlainen kuin algebran transitiivisääntö, jos x -> y pätee ja y -> z pätee, niin myös x -> z pätee. X -> y:tä kutsutaan funktionaaliseksi, joka määrittää y:n.
Toiminnallisten riippuvuuksien tyypit DBMS:ssä
DBMS:ssä on pääasiassa neljän tyyppistä toiminnallista riippuvuutta. Seuraavat ovat toiminnallisten riippuvuuksien tyypit DBMS:ssä:
- Moniarvoinen riippuvuus
- Triviaali toiminnallinen riippuvuus
- Ei-triviaali toiminnallinen riippuvuus
- Transitiivinen riippuvuus
Moniarvoinen riippuvuus DBMS:ssä
Moniarvoinen riippuvuus ilmenee tilanteessa, jossa yhdessä taulukossa on useita riippumattomia moniarvoisia attribuutteja. Moniarvoinen riippuvuus on täydellinen rajoitus suhteen kahden attribuuttijoukon välillä. Se edellyttää, että tietyt monikot ovat läsnä suhteessa. Harkitse seuraavaa moniarvoisen riippuvuuden esimerkkiä ymmärtääksesi.
Esimerkiksi:
| Automalli | Maf_year | Väri |
|---|---|---|
| H001 | 2017 | Metallinen |
| H001 | 2017 | Vihreä |
| H005 | 2018 | Metallinen |
| H005 | 2018 | Sininen |
| H010 | 2015 | Metallinen |
| H033 | 2012 | Harmaa |
Tässä esimerkissä maf_year ja color ovat toisistaan riippumattomia, mutta riippuvat automallista. Tässä esimerkissä näiden kahden sarakkeen sanotaan olevan moniarvoisia, jotka riippuvat parametrista car_model.
Tämä riippuvuus voidaan esittää näin:
auton_malli -> maf_year
auto_malli-> väri
Triviaali toiminnallinen riippuvuus DBMS:ssä
Triviaaliriippuvuus on joukko attribuutteja, joita kutsutaan triviaaliksi, jos attribuuttijoukko sisältyy kyseiseen attribuuttiin.
Joten X -> Y on triviaali funktionaalinen riippuvuus, jos Y on X:n osajoukko. Ymmärrämme asiaa triviaalisen funktionaalisen riippuvuuden esimerkin avulla.
Esimerkiksi:
| Emp_id | Emp_name |
|---|---|
| AS555 | Ahdistaa |
| AS811 | Yrjö |
| AS999 | Kevin |
Harkitse tätä taulukkoa, jossa on kaksi saraketta Emp_id ja Emp_name.
{Emp_id, Emp_name} -> Emp_id on triviaali toiminnallinen riippuvuus, koska Emp_id on {Emp_id,Emp_name}:n osajoukko.
Ei-triviaali toiminnallinen riippuvuus DBMS:ssä
Toiminnallinen riippuvuus, joka tunnetaan myös ei-triviaalina riippuvuutena, esiintyy, kun A->B pätee, kun B ei ole A:n osajoukko. Suhteessa, jos attribuutti B ei ole attribuutin A osajoukko, sitä pidetään ei-triviaalina riippuvuus.
| Yritys | CEO | Ikä |
|---|---|---|
| Microsoft | Satya Nadella | 51 |
| Sundar Pichai | 46 | |
| omena | Tim Cook | 57 |
Esimerkiksi:
(Yritys} -> {CEO} (jos tiedämme yrityksen, tiedämme toimitusjohtajan nimen)
Mutta toimitusjohtaja ei ole yrityksen osajoukko, ja siksi se on ei-triviaali toiminnallinen riippuvuus.
Transitiivinen riippuvuus DBMS:ssä
Transitiivinen riippuvuus on eräänlainen toiminnallinen riippuvuus, joka tapahtuu, kun "t" muodostuu epäsuorasti kahdesta toiminnallisesta riippuvuudesta. Ymmärrämme seuraavan transitiivisen riippuvuuden esimerkin avulla.
Esimerkiksi:
| Yritys | CEO | Ikä |
|---|---|---|
| Microsoft | Satya Nadella | 51 |
| Sundar Pichai | 46 | |
| Alibaba | Jack Ma | 54 |
{Company} -> {CEO} (jos tiedämme yrityksen, tiedämme sen toimitusjohtajan nimen)
{CEO } -> {Ikä} Jos tunnemme toimitusjohtajan, tiedämme myös iän
Siksi transitiivisen riippuvuuden säännön mukaan:
{Yritys} -> {Ikä} pitäisi olla, se on järkevää, koska jos tiedämme yrityksen nimen, voimme tietää hänen ikänsä.
Huomautus: Sinun on muistettava, että transitiivinen riippuvuus voi esiintyä vain kolmen tai useamman attribuutin suhteen.
Mitä on normalisointi?
Normalisointi on menetelmä tietojen järjestämiseksi tietokannassa, jonka avulla voit välttää tietojen redundanssin, lisäys-, päivitys- ja poistohäiriön. Se on prosessi, jossa analysoidaan relaatioskeemoja niiden erilaisten toiminnallisten riippuvuuksien ja ensisijaisen avaimen perusteella.
Normalisointi on luontaista relaatiotietokantateorialle. Se voi johtaa siihen, että samat tiedot kopioidaan tietokannassa, mikä voi johtaa lisätaulukoiden luomiseen.
Toiminnallisen riippuvuuden edut
- Toiminnallinen riippuvuus välttää tietojen redundanssin. Siksi samat tiedot eivät toistu useissa paikoissa siinä tietokanta
- Se auttaa ylläpitämään tietokannan tietojen laatua
- Se auttaa sinua määrittämään tietokantojen merkitykset ja rajoitteet
- Se auttaa sinua tunnistamaan huonot mallit
- Se auttaa sinua löytämään tietokannan suunnittelua koskevat tosiasiat
Yhteenveto
- Toiminnallinen riippuvuus on, kun yksi attribuutti määrittää toisen attribuutin kohdassa a DBMS-järjestelmä.
- Aksiooma, hajoaminen, riippuvainen, determinantti, liitto ovat toiminnallisen riippuvuuden avaintermejä
- Neljä toiminnallista riippuvuutta ovat 1) moniarvoinen 2) triviaali 3) ei-triviaali 4) transitiivinen
- Moniarvoinen riippuvuus ilmenee tilanteessa, jossa yhdessä taulukossa on useita riippumattomia moniarvoisia attribuutteja
- Triviaaliriippuvuus ilmenee, kun joukko attribuutteja, joita kutsutaan triviaaleiksi, jos attribuuttijoukko sisältyy kyseiseen attribuuttiin
- Ei-triviaali riippuvuus tapahtuu, kun A->B on totta, kun B ei ole A:n osajoukko
- Transitiivinen on eräänlainen toiminnallinen riippuvuus, joka tapahtuu, kun se muodostuu epäsuorasti kahdesta toiminnallisesta riippuvuudesta
- Normalisointi on menetelmä tietokannan tietojen järjestämiseksi, mikä auttaa välttämään tietojen redundanssia
