Taková je jejich funkční závislost. Funkční závislosti a relační databáze. a databáze

Relační databáze obsahuje jak strukturální, tak i sémantické informace. Struktura databáze je určena počtem a typem vztahů, které obsahuje, a vztahy jedna k mnoha, které existují mezi n-ticemi těchto vztahů. Sémantická část popisuje množinu funkčních závislostí, které existují mezi atributy těchto vztahů. Definujme funkční závislost.

Definice: Jsou-li dány dva atributy X a Y nějakého vztahu, pak se říká, že Y funkčně závisí na X, pokud v kterémkoli okamžiku každá hodnota X odpovídá právě jedné hodnotě Y. Funkční závislost se označí X -> Y. Všimněte si, že X a Y mohou představovat nejen jednotlivé atributy, ale také skupiny složené z několika atributů jednoho vztahu. Můžeme říci, že funkční závislosti jsou vztahy jedna k mnoha, které existují v rámci vztahu.

    Vztah 2. normální formy (2NF). Stanovení kompletní funkční závislosti a 2NF.

Charakteristika vztahů v 2NF. Algoritmus pro redukci na 2NF. Heathova věta. Příklady.Pojem

úplná funkční závislost. Definice: neklíčový atribut plně funkčně závislý

Definice: ze složeného klíče, pokud je funkčně závislý na celém klíči jako celku, ale není funkčně závislý na žádném z jeho základních atributů. nadměrná funkční závislost

- závislost, která obsahuje informace, které lze získat na základě jiných závislostí dostupných v databázi.

2NF - druhá normální forma. Definice druhé normální formy: relace je v 2NF

Databázové schéma, které nemá redundantní funkční závislosti, je považováno za správné. V opačném případě se musíte uchýlit k postupu dekompozice (dekompozice) existující množiny vztahů. V tomto případě vygenerovaná množina obsahuje větší počet relací, které jsou projekcí relací původní množiny. (Operace projekce je popsána v části o relační algebře.) Reverzibilní postupný proces nahrazování dané sady vztahů jiným schématem, eliminující nadbytečné funkční závislosti, se nazývá normalizace.

Podmínka vratnosti vyžaduje, aby rozklad zachoval ekvivalenci obvodů při výměně jednoho obvodu za jiný, tzn. ve výsledných vztazích:

1) dříve chybějící n-tice by se neměly objevit;

2) o vztazích nové schéma Musí být splněna původní sada funkčních závislostí.

Heathova věta

Vztah budiž dán.

Li r splňuje funkční závislost, pak se rovná sjednocení její projekce a

    Vztah 3. normální formy (3NF).


Definice tranzitivní závislosti a 3NF Algoritmus pro redukci na 3NF (BCNF). Charakteristika vztahů v 3NF a v NFBC. Příklady.

Zavedení

Dialektický přístup ke studiu přírody a společnosti vyžaduje zvažování jevů v jejich vzájemném vztahu a neustálé změny. Koncepty korelace a regrese se objevily v polovině 19. století. díky práci anglických statistiků F. Galtona a K. Pearsona. První termín pochází z latinského „correlatio“ - poměr, vztah. Druhý termín (z latinského „regrese“ - zpětný pohyb) zavedl F. Galton, který při studiu vztahu mezi výškou rodičů a jejich dětí objevil fenomén „regrese k průměru“ – u dětí nar. u velmi vysokých rodičů se výška spíše blížila průměrné hodnotě. V praxi ekonomického výzkumu velmi často nelze dostupná data považovat za vzorek z vícerozměrné normální populace, například když jedna z uvažovaných proměnných není náhodná nebo když regresní přímka zjevně není přímá atd. V těchto případech se pokusíme určit křivku (povrch), která dává nejlepší (ve smyslu nejmenších čtverců) aproximaci původním datům. Jsou volány odpovídající aproximační metody, odhad neznámých hodnot (predikce hodnot) závislé proměnné.

Výše uvedené určuje relevanci výběru tématu práce v kurzu. Cílem této práce je studium funkční závislosti mezi náhodnými veličinami pomocí metod korelační a regresní analýzy.



Kapitola 1 Korelační analýza

1.1 Funkční, statistické a korelační závislosti

V přírodních vědách je to často mluvíme o o funkční závislost (spojení), kdy každá hodnota jedné proměnné zcela odpovídá konkrétní hodnotu další. Funkční závislost může nastat jak mezi deterministickými (nenáhodnými) proměnnými (například závislost rychlosti pádu ve vakuu na čase apod.), tak mezi náhodnými proměnnými (například závislost ceny prodávaných výrobků na jejich počet atd.) .V ekonomii ve většině případů existují závislosti mezi hodnotami proměnných, kdy každé hodnotě jedné proměnné odpovídá nikoli konkrétní, ale množina. možné hodnoty další proměnná.

Jinými slovy, každá hodnota jedné proměnné odpovídá určitému (podmíněnému) rozdělení jiné proměnné. Tato závislost (spojení) se nazývá statistická (nebo stochastická, pravděpodobnostní).

Vznik konceptu statistického vztahu je způsoben tím, že závislá proměnná je ovlivňována řadou nekontrolovaných nebo nezapočítávaných faktorů, a také tím, že měření proměnných hodnot je nevyhnutelně doprovázeno některými náhodnými chybami. Příkladem statistického vztahu je závislost výnosu na množství aplikovaného hnojiva, produktivitě práce v podniku na jeho zásobování energií atd.

Vzhledem k nejednoznačnosti statistického vztahu mezi Y a X je pro výzkumníka zajímavý zejména vzorec závislosti zprůměrovaný na x, tzn.: Statistický vztah mezi dvěma proměnnými, ve kterém každá hodnota jedné proměnné odpovídá určité průměrné hodnotě, tzn. podmíněné matematické očekávání je jiné, nazývá se korelace. Jinak je korelační závislost mezi dvěma proměnnými veličinami funkční závislostí mezi hodnotami jedné z nich a podmíněným matematickým očekáváním druhé.

Korelační závislost lze prezentovat jako:

Předpokládá se, že φ(x)≠const a ψ(x)≠const, tzn. pokud se při změně x nebo y nezmění podmíněná matematická očekávání (Y), pak říkají, že mezi proměnnými X a Y neexistuje žádná korelace. Porovnávání různé typy

závislost mezi X a Y, můžeme říci, že se změnou hodnot proměnné X, s funkční závislostí, se jednoznačně změní určitá hodnota proměnné y, s korelací - určitou průměrnou hodnotou (podmíněné matematické očekávání ) Y, a se statistickým - určité (podmíněné) rozdělení proměnné Y (obr. .1.1) Z uvažovaných závislostí je tedy nejobecnější statistická závislost. Každá korelace je statistická, ale ne každý statistický vztah je korelací. Funkční závislost představuje

speciální případ

korelace. Rovnice (1.1) a (1.2) se nazývají modelové regresní rovnice (nebo jednoduše regresní rovnice), Y v X a X v Y, funkce ψ(x) a φ(y) jsou modelové regresní funkce (nebo regresní funkce) , a jejich grafy - modelové regresní čáry (neboli regresní čáry). Chcete-li najít model regresní rovnice, obecně řečeno, je nutné znát distribuční zákon dvourozměrné náhodné veličiny (X,Y).

V praxi má výzkumník zpravidla pouze omezený vzorek párů hodnot (,). V tomto případě můžeme mluvit o odhadu (přibližném vyjádření) na základě vzorku regresní funkce. Takové nejlepší (ve smyslu metody

nejmenších čtverců

) odhad je vzorová regresní přímka (křivka) Y na X

Rovnice (1.3), (1.4) se také nazývají vzorové regresní rovnice, Y x X a X x Y.

Při správně definovaných aproximačních funkcích) a s rostoucí velikostí vzorku (n) budou v pravděpodobnosti konvergovat k regresním funkcím ψ(x) a φ(y).

Statistické vztahy mezi proměnnými lze studovat pomocí metod korelační a regresní analýzy. Hlavním cílem regresní analýzy je stanovit formu a studovat vztah mezi proměnnými. Hlavním úkolem korelační analýzy je identifikovat vztah mezi náhodnými proměnnými a posoudit jeho blízkost.

1.2 Lineární párová regrese

Údaje o statistické závislosti je vhodné nastavit ve formě korelační tabulky.

Uvažujme jako příklad vztah mezi denní produkcí Y (t) a hodnotou stálých výrobních aktiv X (miliony rublů) pro soubor 50 podobných podniků (tabulka 1).
(V tabulce a označují středy odpovídajících intervalů a a a označují jejich frekvence.)

Pro každou hodnotu, tzn. pro každý řádek korelační tabulky vypočítáme skupinové průměry

kde jsou četnosti dvojic () a; m – počet intervalů pro proměnnou Y.

Vypočtené skupinové průměry umístíme do posledního sloupce korelační tabulky a graficky je zobrazíme ve formě přerušované čáry, nazývané empirická regresní přímka Y na X.

Podobně pro každou hodnotu podle vzorce

Vypočítejme skupinové průměry, kde l je počet intervalů pro proměnnou X.

Podle tvaru přerušované čáry lze určit přítomnost lineární korelační závislosti Y na X mezi dvěma uvažovanými proměnnými, která je vyjádřena přesněji, čím větší je velikost vzorku n:

Proto budeme hledat regresní rovnici (1.3) ve tvaru:

Odpočineme si na chvíli od uvažovaného příkladu a najdeme vzorce pro výpočet neznámých parametrů rovnice lineární regrese.

Pro tento účel používáme metodu nejmenších čtverců, podle které se neznámé parametry vybírají tak, že součet čtverců odchylek průměrů empirických skupin vypočítaných pomocí vzorce (1.5) z hodnot zjištěných pomocí regrese rovnice (1.8) je minimální:

Na základě nutná podmínka extrému funkce dvou proměnných S=S() její parciální derivace srovnáme s nulou, tzn.

Odkud po transformaci získáme soustavu normálních rovnic pro určení parametrů lineární regrese:

Vezmeme-li v úvahu (1.5), transformujeme výraz a vezmeme-li v úvahu (1.7), dělíme obě strany rovnic (1.10) n, získáme soustavu normálních rovnic ve tvaru:

kde odpovídající průměry jsou určeny vzorcem:

Dosazením hodnoty z první rovnice systému (1.11) do regresní rovnice (1.8) získáme

Koeficient b 1 v regresní rovnici, nazývaný výběrový regresní koeficient (nebo jednoduše regresní koeficient) Y na X, bude označen symbolem. Nyní bude regresní rovnice Y na X napsána takto:

Regresní koeficient Y na X ukazuje, o kolik jednotek se v průměru změní proměnná Y, když se proměnná X zvýší o jednu jednotku.

Systém řešení (1.11), najdeme

kde je výběrový rozptyl proměnné X

µ - korelační moment vzorku:

Podobně a za předpokladu, že regresní rovnice (1.4) je lineární, ji můžeme zredukovat do tvaru:

výběrový regresní koeficient (nebo jednoduše regresní koeficient) X na Y, který ukazuje, o kolik jednotek se průměrně změní proměnná X, když se proměnná Y zvýší o jednu jednotku = – (–výběrový rozptyl proměnné Y. závislost. V tomto případě jsou všechna pozorování umístěna... Trendová čára (obr. 2); 3) vyberte typ závislosti regrese. Pro náš příklad typ trendu...

  • Parní místnost regrese (3)

    Test >> Matematika

    Smyslem regresní analýzy je konstruovat funkční závislosti mezi dvěma skupinami proměnné...lineární a nelineární regrese. Lineární regrese:. Nelineární regrese jsou rozděleny do dvou tříd: regrese, nelineární s ohledem na...

  • Funkční závislosti. Základní definice.

    V relačních databázích vede datalogický nebo logický návrh k vývoji databázového schématu, tj. sady vztahových diagramů, které adekvátně modelují abstraktní objekty. předmětová oblast a sémantické souvislosti mezi těmito objekty. Základem pro analýzu správnosti schématu jsou tzv. funkční závislosti mezi databázovými atributy. Některé závislosti mezi atributy vztahu jsou nežádoucí kvůli vedlejším účinkům a anomáliím, které způsobují při úpravě databáze. Procesem úpravy databáze v tomto případě rozumíme zavedení nových dat do databáze nebo odstranění některých dat z databáze a také aktualizaci hodnot některých atributů.

    Fáze logického nebo datalogického návrhu však nekončí návrhem diagramu vztahů. V obecný případ V důsledku této fáze by měly být získány následující výsledné dokumenty:

    • Popis konceptuálního schématu databáze z hlediska zvoleného DBMS.
    • Popis externí modely z hlediska zvoleného DBMS.
    • Popis deklarativních pravidel pro zachování integrity databáze.
    • Popis procedur pro zachování sémantické integrity databáze.

    Než však popíšeme konstruovaný obvod z hlediska zvoleného DBMS, musíme tento obvod postavit. Tento proces je věnován tento oddíl. Musíme vytvořit správné schéma databáze založené na relační model data.

    DEFINICE

    Nazvěme databázové schéma správné, pokud mezi atributy vztahu nejsou žádné nežádoucí závislosti.

    Proces vývoje správného schématu pro relační databázi se nazývá logický návrh databáze.

    Návrh databázového schématu lze provést dvěma způsoby:

    • dekompozicí (partitioning), kdy původní množina relací obsažená ve schématu databáze je nahrazena jinou množinou relací (zvyšuje se jejich počet), které jsou projekcemi původních relací;
    • syntézou, tedy sestavením z daných počátečních elementárních závislostí mezi objekty předmětové oblasti databázového diagramu.

    Klasická technologie navrhování relačních databází je spojena s teorií normalizace, založenou na analýze funkčních závislostí mezi atributy relací. Koncept funkční závislosti je zásadní v teorii normalizace relačních databází. Budeme to definovat dále, ale nyní se dotkneme významu tohoto pojmu. Funkční závislosti definují stabilní vztahy mezi objekty a jejich vlastnostmi v uvažované oblasti. To je důvod, proč je proces podpory doménově specifických funkčních závislostí zásadní pro proces návrhu.

    Proces dekompozičního návrhu je proces sekvenční normalizace vzorců vztahů, přičemž každá následující iterace odpovídá normální formě více vysoká úroveň a má lepší vlastnosti ve srovnání s předchozím.

    Každá normální forma odpovídá určité množině omezení a vztah je v určité normální formě, pokud splňuje svou vlastní množinu omezení.

    V teorii relačních databází se obvykle rozlišuje následující posloupnost: normální formy:

    • první normální forma (1NF);
    • druhá normální forma (2NF);
    • třetí normální forma (3NF);
    • normální Boyce-Coddova forma (NBFC);
    • čtvrtá normální forma (4NF);
    • pátá normální forma, nebo projekčně-konjunkční forma (5NF).

    Základní vlastnosti normálních forem:

    • každá následující normální forma v určitém smyslu zlepšuje vlastnosti předchozí;
    • Při přechodu na další normální formu se zachovají vlastnosti předchozích normálních forem.

    Klasický proces návrhu je založen na posloupnosti přechodů z předchozí normální formy do následující normální formy. V procesu rozkladu však narážíme na problém reverzibility, tedy možnosti obnovení původního obvodu. Dekompozice tedy musí zachovat ekvivalenci databázových schémat při nahrazení jednoho schématu jiným.

    Databázová schémata se nazývají ekvivalent, pokud lze obsah zdrojové databáze získat přirozeným propojením vztahů obsažených ve výsledném schématu a ve zdrojové databázi se neobjeví žádné nové n-tice.

    Při provádění ekvivalentních transformací se zachová mnoho původních základních funkčních závislostí mezi atributy vztahů.

    Funkční závislosti neurčují aktuální stav databáze, ale všechny její možné stavy, to znamená, že odrážejí ta spojení mezi atributy, které jsou vlastní reálnému objektu, který je modelován pomocí databáze.

    Proto je možné určit funkční závislosti na základě aktuálního stavu databáze pouze v případě, že instance databáze obsahuje absolutně úplné informace(to znamená, že se neočekávají žádné doplňky nebo úpravy databáze). V skutečný život tento požadavek nelze splnit, takže sadu funkčních závislostí specifikuje vývojář, systémový analytik, na základě hloubkové systémové analýzy předmětné oblasti.

    Uveďme několik základních definic.

    Funkční závislost (FD) je vztah mnoho ku jedné mezi sadami atributů v rámci daného vztahu.

    Nechť R je relace a A a B jsou libovolné podmnožiny množiny atributů relace R. Potom B funkčně závisí na A (A B), jestliže každá hodnota množiny A relace R určuje jednu hodnotu množiny B relace R. Jinými slovy, pokud se dvě n-tice relace R shodují v hodnotě A, shodují se i v hodnotě B.

    Levá a pravá část federálního zákona se nazývají determinant a závislá část.

    Pokud je FL splněna pro všechny možné hodnoty vztahu, pak je to omezení integrity pro vztah, protože v tomto případě platí určitá omezení na všechny přípustné hodnoty.

    Pokud je A potenciální klíč relace R, např. A je primární klíč, pak všechny atributy relace R musí být funkčně závislé na A (vyplývá to z definice kandidátního klíče).

    Sada federálních zákonů může být velká, a protože federální zákony omezují integritu, je nutné je kontrolovat při každé aktualizaci databáze. Proto je naléhavý úkol zredukovat soubor federálních zákonů na kompaktní velikost.

    Zjevným způsobem, jak omezit soubor federálních zákonů, je vyloučit triviální Federální zákon.

    Funkční závislost triviální, pokud je jeho pravá strana podmnožinou levé strany. Například pro databázi dodavatelů a dílů triviální federální zákon:



    (PNUM, DNUM)®PNUM

    Triviální závislosti nemohou být uspokojeny, a proto nejsou praktického zájmu, na rozdíl od netriviálních závislostí, které jsou omezeními integrity. Triviální závislosti lze z mnoha federálních zákonů vyloučit.

    Neklíčový atribut je jakýkoli atribut vztahu, který není součástí žádného klíče vztahu.

    Vzájemně nezávislé atributy jsou atributy, které na sobě funkčně nezávisí.

    Omezení jedinečnosti uložené deklarací primárního a kandidátského klíče vztahu jsou zvláštním případem omezení spojených s konceptem. funkčních závislostí.

    Pro vysvětlení pojmu funkční závislost zvažte následující příklad.

    Nechť dostaneme vztah obsahující data o výsledcích jedné konkrétní relace. Diagram tohoto vztahu vypadá takto:

    Relace ( Známková kniha č. , Příjmení, Jméno, Patronyma, Položka , stupeň);

    Atributy „Číslo hodnotící knihy“ a „Předmět“ tvoří souhrn (protože dva atributy jsou deklarovány jako klíč) primární klíč tento vztah. Z těchto dvou atributů lze skutečně jednoznačně určit hodnoty všech ostatních atributů.

    Kromě omezení jedinečnosti spojeného s tímto klíčem však vztah nutně musí podléhat podmínce, že jednomu musí být vydána jedna třídní kniha. na konkrétní osobu a proto v tomto ohledu musí n-tice se stejným číslem klasifikace obsahovat stejné hodnoty atributy „Příjmení“, „Jméno“ a „Patronym“.


    Pokud máme následující fragment nějaké konkrétní studentské databáze vzdělávací instituce po nějakém sezení se pak v n-ticích s třídní knihou číslo 100 shodují atributy „Příjmení“, „Jméno“ a „Patronym“, ale neshodují se atributy „Předmět“ a „Známka“ (což je pochopitelné, protože obsahují totéž různé předměty a výkon na nich). To znamená, že atributy „Příjmení“, „Jméno“ a „Patronymní“ funkčně závislý z atributu „Číslo ročníkové knihy“ a atributy „Předmět“ a „Známka“ jsou funkčně nezávislé.

    Tedy, funkční závislost je jednoznačná závislost tabelovaná v systémech správy databází.

    Nyní uveďme striktní definici funkční závislosti.

    Vzhledem k nejednoznačnosti statistického vztahu mezi Y a X je pro výzkumníka zajímavý zejména vzorec závislosti zprůměrovaný na x, tzn.: nechť X, Y jsou podschéma relací schématu S, které definují přes schéma S diagram funkčních závislostí X > Y(přečtěte si „X šipka Y“). Pojďme definovat omezení funkční závislosti inv > Y> jako prohlášení, že ve vztahu ke schématu S se jakékoli dvě n-tice, které se shodují v projekci do podschéma X, musí shodovat také v projekci do podschématu Y.

    Napišme stejnou definici ve formální podobě:

    Inv > Y> r(S) = t 1 , t 2 ? r(t 1 [X] = t 2 [X] ? t 1 [Y] = t 2 [Y]), X, Y? S;

    Je zajímavé, že tato definice používá koncept unární projekční operace, se kterým jsme se setkali dříve. Jak jinak, když nepoužijete tuto operaci, můžete ukázat, že dva sloupce relační tabulky, nikoli řádky, jsou si navzájem rovny? Proto jsme v rámci této operace napsali, že koincidence n-tic v projekci na nějaký atribut nebo několik atributů (podschéma X) s sebou jistě nese shodu stejných sloupců n-tice na podschématu Y, pokud Y funkčně závisí na X .

    Je zajímavé, že v případě funkční závislosti Y na X také říkají, že X funkčně definuje Y nebo co Y funkčně závislý z X. Ve funkčním diagramu závislosti X > Y se podobvod X nazývá levá strana a podobvod Y se nazývá pravá strana.

    V praxi návrhu databáze je funkční diagram závislostí obvykle pro stručnost označován jako funkční diagram závislostí.

    Konec definice.


    Ve speciálním případě, kdy se pravá strana funkční závislosti, tj. podschéma Y, shoduje s celým relačním schématem, se omezení funkční závislosti stane omezením jedinečnosti pro primární nebo kandidátský klíč. Opravdu:

    Inv<K > S> r(S) = ? t 1 , t 2 ? r(t 1 [K] = t 2 [K] > t 1 (S) = t 2 (S)), K ? S;

    Jde jen o to, že při definování funkční závislosti místo podobvodu X musíte vzít klíčové označení K a místo pravé strany funkční závislosti, podobvodu Y, musíte vzít celý vztahový diagram S, tj. skutečně, omezení jedinečnosti relačních klíčů je speciálním případem omezení funkční závislosti, kdy pravá strana je stejná jako schémata funkční závislosti k celému relačnímu schématu.

    Zde jsou příklady obrázků funkčních závislostí:

    (číslo ročníkové knihy) > (Příjmení, Jméno, Patronyma);

    (ročník č., Předmět) > (Známka);

    2. Armstrongova pravidla odvození

    Pokud nějaké základní vztah splňuje vektorově definované funkční závislosti, pak pomocí různých speciálních inferenčních pravidel lze získat další funkční závislosti, které tento základní vztah zjevně splní.

    Dobrým příkladem takových speciálních pravidel jsou Armstrongova pravidla odvození.

    Než však začneme analyzovat samotná Armstrongova pravidla vyvozování, uveďme v úvahu nový metalingvistický symbol „+“, který se nazývá symbol metavýroku o odvoditelnosti. Při formulování pravidel se tento symbol zapisuje mezi dva syntaktické výrazy a označuje, že vzorec napravo od něj je odvozen od vzorce nalevo od něj.

    Zformulujme nyní samotná Armstrongova inferenční pravidla ve formě následující věty.

    Teorém. Následující pravidla, nazývaná Armstrongova pravidla vyvozování, jsou platná.

    Odvozovací pravidlo 1.+ X > X;

    Odvozovací pravidlo 2. X > Y + X? Z > Y;

    Odvozovací pravidlo 3. X > Y, Y? W > Z + X? W > Z;

    X, Y, Z, W jsou zde libovolná podschémata relačního schématu S. Symbol metavýroku o odvoditelnosti odděluje seznamy premis a seznamy výroků (závěrů).

    1. První odvozovací pravidlo se nazývá „ reflexivita“ a zní následovně: „pravidlo je odvozeno: „X funkčně znamená X“. Toto je nejjednodušší z Armstrongových pravidel vyvozování. Přichází doslova ze vzduchu.

    Je zajímavé poznamenat, že se nazývá funkční závislost, která má levou i pravou stranu reflexní. Podle pravidla reflexivity je omezení reflexní závislosti splněno automaticky.

    2. Druhé odvozovací pravidlo se nazývá „ doplňování“ a zní takto: „pokud X funkčně určuje Y, pak je odvozeno pravidlo: „spojení podobvodů X a Z funkčně znamená Y“. Pravidlo doplňování umožňuje rozšíření levá strana omezení funkčních závislostí.

    3. Třetí pravidlo vyvozování se nazývá „ pseudotranzitivita“ a zní následovně: „pokud podobvod X funkčně zahrnuje podobvod Y a spojení podobvodů Y a W funkčně zahrnuje Z, pak je odvozeno pravidlo: „spojení podobvodů X a W funkčně určuje podobvod Z“.

    Pravidlo pseudotransitivity zobecňuje pravidlo tranzitivity odpovídající speciálnímu případu W: = 0. Uveďme formální reprezentaci tohoto pravidla:

    Je třeba poznamenat, že výše uvedené premisy a závěry byly prezentovány ve zkrácené formě s použitím označení funkčních závislostních schémat. V rozšířené podobě odpovídají následující omezení funkčních závislostí.

    Odvozovací pravidlo 1. inv X > r(S);

    Odvozovací pravidlo 2. inv Y> r(S) ? inv Y>r(S);

    Odvozovací pravidlo 3. inv Y> r(S) & inv Z> r(S) ? inv Z>r(S);

    Pojďme provést důkaz tato pravidla odvození.

    1. Důkaz pravidla reflexivita vyplývá přímo z definice omezení funkční závislosti při dosazení podobvodu X místo podobvodu Y.

    Vezměme si skutečně omezení funkční závislosti:

    Inv Y> r(S) a dosadíme do něj X místo Y, dostaneme:

    Inv X> r(S), a to je pravidlo reflexivity.

    Osvědčilo se pravidlo reflexivity.

    2. Důkaz pravidla doplňování Ukažme si to na funkčních závislostních diagramech.

    První diagram je premisní diagram:

    Balení: X>Y


    Druhý diagram:

    závěr: X? Z>Y


    Nechť jsou n-tice stejné na X? Z. Pak jsou si rovni na X. Podle premisy se budou rovnat na Y.

    Pravidlo doplňování bylo prokázáno.

    3. Důkaz pravidla pseudotranzitivita Uvedeme také diagramy, které budou v tomto konkrétním případě tři.

    První diagram je prvním předpokladem:

    předpoklad 1: X > Y


    předpoklad 2: Y ? W>Z


    A konečně třetí diagram je diagram závěrů:

    závěr: X? W>Z


    Nechť jsou n-tice stejné na X? W. Pak jsou stejné na X i W. Podle předpokladu 1 se budou rovnat na Y. Podle předpokladu 2 se tedy budou rovnat na Z.

    Pravidlo pseudotransitivity bylo prokázáno.

    Všechna pravidla byla ověřena.

    3. Odvozená pravidla odvození

    Dalším příkladem pravidel, s jejichž pomocí lze v případě potřeby odvodit nová pravidla funkční závislosti, jsou tzv. odvozená pravidla odvození.

    Jaká jsou tato pravidla, jak se získávají?

    Je známo, že pokud z některých pravidel, které již existují, legální logické metody odvodit další, pak tato nová pravidla, tzv deriváty, lze použít spolu s původními pravidly.

    Je třeba zvláště poznamenat, že tato velmi svévolná pravidla jsou „odvozena“ přesně z pravidel Armstrong inference, kterými jsme prošli dříve.

    Zformulujme odvozená pravidla pro vyvozování funkčních závislostí ve formě následující věty.

    Teorém.

    Následující pravidla jsou odvozena z Armstrongových inferenčních pravidel.

    Odvozovací pravidlo 1.+ X? Z > X;

    Odvozovací pravidlo 2. X > Y, X > Z + X? Y > Z;

    Odvozovací pravidlo 3. X > Y? Z + X > Y, X > Z;

    Zde X, Y, Z, W, stejně jako v předchozím případě, jsou libovolná podschémata relačního schématu S.

    1. První odvozené pravidlo se nazývá pravidlo triviality a zní takto:

    "Pravidlo je odvozeno: "spojení dílčích obvodů X a Z funkčně znamená X."

    Nazývá se funkční závislost, kdy levá strana je podmnožinou pravé strany triviální. Podle pravidla triviality jsou omezení triviální závislosti splněna automaticky.

    Je zajímavé, že pravidlo triviality je zobecněním pravidla reflexivity a stejně jako druhé by mohlo být odvozeno přímo z definice omezení funkční závislosti. Skutečnost, že toto pravidlo je odvozené, není náhodné a souvisí s úplností Armstrongova systému pravidel. O úplnosti Armstrongova systému pravidel si povíme více o něco později.

    2. Druhé odvozené pravidlo se nazývá pravidlo aditivity a zní následovně: „Pokud podobvod X funkčně definuje podobvod Y a X současně funkčně definuje Z, pak z těchto pravidel je odvozeno následující pravidlo: „X funkčně definuje spojení podobvodů Y a Z.“

    3. Třetí odvozené pravidlo se nazývá pravidlo projektivity nebo pravidlo" obrácení aditivity" Zní takto: „Jestliže podobvod X funkčně definuje sjednocení podokruhů Y a Z, pak z tohoto pravidla je odvozeno pravidlo: „X funkčně definuje podobvod Y a zároveň X funkčně vymezuje podobvod Z“, tzn. , toto je odvozené pravidlo je inverzní k pravidlu aditivity.

    Je zvláštní, že pravidla aditivity a projektivity aplikovaná na funkční závislosti s identickými levými stranami nám umožňují kombinovat nebo naopak dělit pravé strany závislosti.

    Při konstrukci řetězců inference se po zformulování všech premis uplatní pravidlo tranzitivity, aby byla zahrnuta funkční závislost s pravou stranou umístěnou v závěru.

    Pojďme provést důkaz uvedená arbitrární pravidla odvození.

    1. Důkaz pravidla všednost.

    Proveďme to, stejně jako všechny následující důkazy, krok za krokem:

    1) máme: X > X (z Armstrongova pravidla reflexivity vyvozování);

    Pravidlo triviality bylo prokázáno.

    2. Proveďme krok za krokem důkaz pravidla aditivitu:

    1) máme: X > Y (toto je premisa 1);

    2) máme: X > Z (toto je premisa 2);

    3) máme: Y ? Z > Y? Z (z Armstrongova pravidla reflexivity vyvozování);

    4) máme: X? Z > Y? Z (získáno aplikací pravidla pseudotransitivity Armstrongovy derivace a následně jako důsledek prvního a třetího kroku důkazu);

    5) máme: X? X > Y? Z (získáno aplikací Armstrongova pravidla pseudotransitivity a poté vyplývá z druhého a čtvrtého kroku);

    6) máme X > Y? Z (vyplývá z kroku pět).

    Pravidlo aditivity bylo prokázáno.

    3. A nakonec zkonstruujeme důkaz pravidla projektivita:

    1) máme: X > Y? Z, X > Y? Z (jedná se o parcelu);

    2) máme: Y > Y, Z > Z (odvozeno pomocí Armstrongova pravidla reflexivity vyvozování);

    3) máme: Y ? z > y, Y? z > Z (získáno z Armstrongova pravidla dokončení odvození a důsledek z druhého kroku důkazu);

    4) máme: X > Y, X > Z (to se získá aplikací pravidla pseudotransitivity Armstrongovy derivace a následně jako důsledek prvního a třetího kroku důkazu).

    Osvědčilo se pravidlo projektivity.

    Všechna odvozená pravidla odvození byla prokázána.

    4. Úplnost Armstrongova systému pravidel

    Nechat F(S) - daná množina funkčních závislostí definovaných přes relační diagram S.

    Označme podle inv <F(S)> omezení vyplývající z této sady funkčních závislostí. Pojďme si to napsat:

    Inv <F(S)> r(S) = ?X > Y ? F(S) [inv Y> r(S)].

    Tato množina omezení uložených funkčními závislostmi je tedy dešifrována následovně: pro jakékoli pravidlo ze systému funkčních závislostí X > Y, patřící do množiny funkčních závislostí F(S), platí omezení funkční závislosti inv Y> r(S), definováno nad množinou vztahů r(S).

    Nechte nějaký postoj r(S) toto omezení splňuje.

    Použití Armstrongových pravidel odvození na funkční závislosti definované pro množinu F(S), můžete získat nové funkční závislosti, jak již bylo řečeno a prokázáno námi dříve. A, což je podstatné, omezení těchto funkčních závislostí spolu souvisí F(S) automaticky vyhoví, jak je vidět z rozšířené formy psaní Armstrongových vyvozovacích pravidel. Dovolte nám připomenout celkový pohled tato rozšířená pravidla odvozování:

    Odvozovací pravidlo 1. inv < X >X> r(S);

    Odvozovací pravidlo 2. inv Y> r(S) ? inv ? Z>Y> r(S);

    Odvozovací pravidlo 3. inv Y> r(S) & inv ? W>Z> r(S) ? inv ? W>Z>;

    Vraťme se k našim úvahám a doplňte soubor F(S) nové závislosti z něj odvozené pomocí Armstrongových pravidel. Tento postup doplňování budeme používat, dokud již nebudeme získávat nové funkční závislosti. V důsledku této konstrukce získáme novou sadu funkčních závislostí, tzv zkrat sady F(S) a označeny F+(S).

    Tento název je vskutku logický, protože jsme sami zdlouhavou konstrukcí na sobě „uzavřeli“ mnoho existujících funkčních závislostí a přidali (odtud „+“) všechny nové funkční závislosti vyplývající z těch stávajících.

    Je třeba poznamenat, že tento proces konstrukce uzávěru je konečný, protože samotné relační schéma, na kterém jsou všechny tyto konstrukce prováděny, je konečné.

    Je samozřejmé, že uzávěr je nadmnožinou zavřené soupravy (ve skutečnosti je větší!) a při opětovném uzavření se vůbec nemění.

    Pokud zapíšeme, co jsme právě řekli ve formální formě, dostaneme:

    F(S) ? F + (S), [F + (S)] + = F + (S);

    Dále z prokázané pravdivosti (tj. legality, legality) Armstrongových pravidel vyvozování a definice uzavření vyplývá, že jakýkoli vztah, který splňuje omezení dané množiny funkčních závislostí, bude splňovat omezení závislosti patřící k uzavření.

    X > Y? F + (S) ? ?r(S) [inv <F(S)> r(S) ? inv Y> r(S)];

    Armstrongův teorém úplnosti pro systém pravidel odvození tedy říká, že vnější implikace může být zcela legitimně a oprávněně nahrazena ekvivalencí.

    (Nebudeme uvažovat o důkazu této věty, protože samotný proces důkazu není v našem konkrétním přednáškovém kurzu tak důležitý.)

    Při návrhu relační databáze si často musíte vybrat z mnoha alternativních schémat vztahů. Z různých důvodů jsou některé možnosti pohodlnější než jiné. Musíte být schopni sestavit dobré schéma databáze (mnoho schémat vztahů). K tomu potřebujete znát základy teorie funkčních závislostí mezi vztahovými atributy.

    Hlavním úkolem řešeným v procesu návrhu databáze je úloha normalizace jejích vztahů. Níže popsaná metoda normálních forem (klasická metoda navrhování relačních databází) je založena na konceptu závislosti mezi relačními atributy, který je v teorii relačních databází zásadní.

    V mnoha případech ze známých faktů o skutečný svět z toho vyplývá, že ne každá konečná množina n-tic může být aktuální hodnotou nějakého vztahu, i když tyto n-tice měly správnou aritu a jejich komponenty byly vybrány ze správných domén. Existují dva typy omezení vztahů;

    Omezení, která závisí na sémantice doménových prvků. Tato omezení jsou založena na pochopení toho, co znamenají komponenty n-tic. Člověk nemůže mít například 6 metrů, stejně jako žádnému člověku s 37 letou praxí nemůže být 25 let.

    Omezení vztahů, která závisí pouze na rovnostinebo nerovnosti hodnot. Tato omezení nesouvisí s konkrétní hodnotou nějaké dané složky, ale s tím, zda jsou určité složky dvou n-tic stejné. V tomto odstavci probereme nejdůležitější z těchto omezení, nazývaných funkční závislosti (FD), protože mají největší vliv na návrh databázových schémat.

    Nechat R (A 1 , A 2 ,…, A n ) - vztahový diagram, aX a Y - podmnožiny { A 1 , A 2 , ... , A n }. To říkají « X funkčně určuje Y" nebo "Y funkčně závisí na X" a označte to jako X Y, jestli v nějakém ohledu r, je aktuální hodnota R, nemůže obsahovat dvě n-tice, jejichž komponenty se shodují ve všech atributech patřících do množiny X, ale neshodují se na jednom nebo více atributech patřících do sady Y. Je možná jednodušší formulace. Atribut B je funkčně závislý na atributu A, tzn. A->B, pokud každá hodnota A odpovídá právě jedné hodnotě B. To znamená, že ve všech n-ticích se stejnou hodnotou atributu A bude mít atribut B také stejnou hodnotu. Zde A a B mohou být složené - sestávají ze dvou nebo více atributů.

    Jediný způsob, jak definovat funkční závislosti pro relační diagram, je R je pečlivě analyzovat sémantiku atributů. Závislosti jsou ve skutečnosti prohlášení o skutečném světě. Nelze je prokázat. Musí však být implementovány pomocí DBMS, pokud je to předepsáno. Mnoho systémů například podporuje funkční závislosti, které vznikají ze skutečnosti, že klíč definuje další atributy vztahu. Některé systémy dokonce podporují libovolné funkční závislosti,

    Je třeba poznamenat, že deklarování funkční závislosti v databázi je rozhodnutí, které může učinit pouze návrhář. Výhodou takové deklarace je například to, že DBMS bude dále udržovat omezení integrity pro uživatele. Navíc díky přítomnosti funkční závislosti může docházet k efektivnější implementaci vztahu.

    Pojem funkční závislosti je základní, neboť na jeho základě jsou formulovány definice všech ostatních typů závislostí

    Nechť obecně F existuje mnoho funkčních závislostí pro schéma relací R A X Y - nějaká funkční závislost. Prý je to závislost X Ylogicky následuje z F, jestliže pro každý vztah r s diagramem R, uspokojení závislostí F, také spokojený X Y. Nechat F + znamená zkratF - mnoho funkčních závislostí, které logicky vyplývají z F. Li F = F + , pak to říkají F - úplná rodina závislosti.

    Když jsme se podívali na množiny objektů, předpokládali jsme, že existuje klíč – množina atributů, která objekt jednoznačně identifikuje. Podobný koncept existuje pro vztahy s funkčními závislostmi. Li R - vztahový diagram s atributy A 1 , A 2 ,…, A n a funkčních závislostí F, A X - podmnožina A 1 , A 2 ,…, A n , Že X volal klíčR, Li:

      X A 1 A 2 … A n patří F + .

      Ne pro žádnou vlastní podmnožinu Y ≤ X závislost Y A 1 A 2 …A n nepatří F + .

    Protože pro vztah může existovat více než jeden klíč, je přiřazen jeden z nich primární klíč . Jakýkoli klíč, který si přejeme, může být primárním klíčem. Termín se také používá možná stopa , označující jakoukoli minimální sadu atributů, která funkčně definuje všechny atributy, a termín "klíč" je vyhrazen pro jeden určený možný klíč. Termín se někdy používá superklíč k označení libovolné sady atributů obsahujících klíč.

    Kromě toho se používá termín determinant . Je volán atribut (nebo skupina atributů). determinant, pokud na něm funkčně závisí nějaký jiný atribut. Jinými slovy, pokud existuje funkční závislost A → B, pak A je determinant.



    
    Nahoru