Funkcionālā atkarība DBVS: kas ir, veidi un piemēri

Satura rādītājs:

Anonim

Kas ir funkcionālā atkarība?

Funkcionālā atkarība (FD) ir ierobežojums, kas nosaka viena atribūta saistību ar citu atribūtu datu bāzes pārvaldības sistēmā (DBVS). Funkcionālā atkarība palīdz uzturēt datu kvalitāti datu bāzē. Tam ir būtiska loma, lai atrastu atšķirību starp labu un sliktu datu bāzes dizainu.

Funkcionālo atkarību apzīmē ar bultiņu "→". X funkcionālo atkarību no Y attēlo X → Y. Ar piemēru sapratīsim funkcionālo atkarību DBVS.

Piemērs:

Darbinieka numurs darbinieka vārds Alga Pilsēta
1 Dana 50000 Sanfrancisko
2 Francisks 38000 Londona
3 Endrjū 25000 Tokija

Šajā piemērā, ja mēs zinām darbinieka numura vērtību, mēs varam iegūt darbinieka vārdu, pilsētu, algu utt. Ar to mēs varam teikt, ka pilsēta, darbinieka vārds un alga ir funkcionāli atkarīga no darbinieka numura.

Šajā apmācībā jūs uzzināsiet:

  • Pamatjēdzieni
  • Funkcionālo atkarību noteikumi
  • Funkcionālo atkarību veidi DBVS
  • Daudzvērtību atkarība DBVS
  • Triviālā funkcionālā atkarība DBVS
  • Nav triviāla Funkcionālā atkarība DBVS
  • Transitīvā atkarība DBVS
  • Kas ir normalizācija?
  • Funkcionālās atkarības priekšrocības

Pamatjēdzieni

Šeit ir daži galvenie funkcionālās atkarības datu bāzē termini:

Pamatjēdzieni Apraksts
Aksioma Aksiomas ir secinājumu noteikumu kopums, ko izmanto, lai secinātu visas relāciju datu bāzes funkcionālās atkarības.
Sadalīšanās Tas ir noteikums, kas iesaka, ja jums ir tabula, kurā, šķiet, ir divas entītijas, kuras nosaka viena un tā pati primārā atslēga, tad apsveriet iespēju tās sadalīt divās dažādās tabulās.
Atkarīgais Tas tiek parādīts funkcionālās atkarības diagrammas labajā pusē.
Noteicošais Tas tiek parādīts funkcionālās atkarības diagrammas kreisajā pusē.
Savienība Tas liek domāt, ka, ja divas tabulas ir atsevišķas un PK ir vienādas, jums jāapsver to ievietošana. kopā

Funkcionālo atkarību noteikumi

Zemāk ir trīs vissvarīgākie noteikumi par funkcionālo atkarību datu bāzē:

  • Refleksīvs noteikums -. Ja X ir atribūtu kopa un Y ir X apakškopa_, tad X pieder Y vērtība.
  • Palielināšanas noteikums: kad x -> y ir spēkā un c ir atribūtu kopa, tad ir spēkā arī ac -> bc. Tas ir atribūtu pievienošana, kas nemaina pamata atkarības.
  • Transitivitātes noteikums: Šis noteikums ir ļoti līdzīgs algebras transitīvajam likumam, ja x -> y ir un y -> z, tad arī x -> z ir spēkā. X -> y tiek saukts kā funkcionāli, kas nosaka y.

Funkcionālo atkarību veidi DBVS

DBVS galvenokārt ir četri funkcionālās atkarības veidi. Tālāk ir norādīti DBVS funkcionālo atkarību veidi:

  • Daudzvērtīga atkarība
  • Trivial funkcionālā atkarība
  • Netrivāla funkcionālā atkarība
  • Transitīvā atkarība

Daudzvērtīga atkarība DBVS

Daudzvērtību atkarība rodas situācijā, kad vienā tabulā ir vairāki neatkarīgi daudzvērtīgi atribūti. Daudzvērtīga atkarība ir pilnīgs ierobežojums starp diviem attiecībās esošo atribūtu kopumiem. Tas prasa, lai attiecībās būtu noteiktas kopas. Apsveriet šo daudzvērtīgo atkarības piemēru, lai saprastu.

Piemērs:

Automašīnas_modelis Mafs_gads Krāsa
H001 2017. gads Metālisks
H001 2017. gads Zaļš
H005 2018. gads Metālisks
H005 2018. gads Zils
H010 2015. gads Metālisks
H033 2012. gads Pelēks

Šajā piemērā maf_gads un krāsa ir neatkarīgi viens no otra, bet ir atkarīgi no car_model. Šajā piemērā šīs divas kolonnas tiek uzskatītas par daudzvērtīgām, kas atkarīgas no car_model.

Šo atkarību var attēlot šādi:

car_model -> maf_gads

car_model-> krāsa

Triviālā funkcionālā atkarība DBVS

Triviālā atkarība ir atribūtu kopums, ko sauc par triviālu, ja atribūtu kopa ir iekļauta šajā atribūtā.

Tātad, X -> Y ir niecīga funkcionāla atkarība, ja Y ir X apakškopa. Sapratīsim ar Trivial funkcionālās atkarības piemēru.

Piemēram:

Emp_id Emp_name
AS555 Harijs
AS811 Džordžs
AS999 Kevins

Apsveriet šo tabulu ar divām kolonnām Emp_id un Emp_name.

{Emp_id, Emp_name} -> Emp_id ir niecīga funkcionāla atkarība, jo Emp_id ir {Emp_id, Emp_name} apakškopa.

Netrivāla funkcionālā atkarība DBVS

Funkcionālā atkarība, kas pazīstama arī kā neaktīva atkarība, rodas, ja A-> B ir taisnība, kur B nav A apakškopa. Attiecībās, ja atribūts B nav atribūta A apakškopa, tad tas tiek uzskatīts par nebūtisku atkarība.

Uzņēmums Izpilddirektors Vecums
Microsoft Satja Nadella 51
Google Sundars Pičai 46
Apple Tims Kuks 57

Piemērs:

(Uzņēmums} -> {CEO} (ja mēs zinām uzņēmumu, mēs zinām izpilddirektora vārdu)

Bet izpilddirektors nav uzņēmuma apakškopa, un tāpēc tā ir nebūtiska funkcionālā atkarība.

Transitīvā atkarība DBVS

Transitīvā atkarība ir funkcionālās atkarības veids, kas notiek, kad t netieši veido divas funkcionālās atkarības. Sapratīsim, izmantojot šādu piemēru Transitīvās atkarības.

Piemērs:

Uzņēmums Izpilddirektors Vecums
Microsoft Satja Nadella 51
Google Sundars Pičai 46
Alibaba Džeks Ma 54. lpp

{Uzņēmums} -> {CEO} (ja mēs zinām kompāniju, mēs zinām tās izpilddirektora vārdu)

{CEO} -> {Age} Ja mēs zinām izpilddirektoru, mēs zinām Age

Tāpēc saskaņā ar tranzītiskās atkarības noteikuma noteikumu:

Uzņēmumam {Company} -> {Age} ir jābūt, tas ir jēga, jo, ja mēs zinām uzņēmuma nosaukumu, mēs varam uzzināt viņa vecumu.

Piezīme. Jums jāatceras, ka transitīvā atkarība var notikt tikai trīs vai vairāk atribūtu attiecībās.

Kas ir normalizācija?

Normalizācija ir datu sakārtošanas metode datu bāzē, kas palīdz izvairīties no datu dublēšanas, ievietošanas, atjaunināšanas un dzēšanas anomālijām. Tas ir attiecību shēmu analīzes process, pamatojoties uz to atšķirīgajām funkcionālajām atkarībām un primāro atslēgu.

Normalizācija ir raksturīga relāciju datu bāzes teorijai. Tas var radīt tādu pašu datu dublēšanu datu bāzē, kā rezultātā var tikt izveidotas papildu tabulas.

Funkcionālās atkarības priekšrocības

  • Funkcionālā atkarība ļauj izvairīties no datu dublēšanas. Tāpēc tie paši dati neatkārtojas vairākās vietās šajā datubāzē
  • Tas palīdz uzturēt datu kvalitāti datu bāzē
  • Tas palīdz noteikt definētas datubāzu nozīmes un ierobežojumus
  • Tas palīdz jums noteikt sliktu dizainu
  • Tas palīdz jums atrast faktus par datu bāzes noformējumu

Kopsavilkums

  • Funkcionālā atkarība ir tad, kad viens atribūts nosaka citu atribūtu DBVS sistēmā.
  • Aksioma, sadalīšanās, atkarīgais, noteicošais, savienība ir galvenie funkcionālās atkarības termini
  • Četri funkcionālās atkarības veidi ir 1) daudzvērtīgs 2) triviāls 3) triviāls 4) transitīvs
  • Daudzvērtību atkarība rodas situācijā, kad vienā tabulā ir vairāki neatkarīgi daudzvērtīgi atribūti
  • Triviālā atkarība rodas, ja atribūtu kopa, ko sauc par triviālu, ja atribūtu kopa ir iekļauta šajā atribūtā
  • Netrīviskā atkarība rodas, ja A-> B ir taisnība, kur B nav A apakškopa
  • Transitīvs ir funkcionālās atkarības veids, kas notiek, ja to netieši veido divas funkcionālās atkarības
  • Normalizācija ir datu sakārtošanas metode datu bāzē, kas palīdz izvairīties no datu dublēšanas