Co je to funkce? Funkční závislost nebo funkce je závislost mezi dvěma proměnnými tak, že každá hodnota je nezávislé proměnné. Plně funkční závislost

A. Při úvahách o kvantitativní stránce různých procesů téměř vždy pozorujeme, že proměnné veličiny na sobě závisí; např. dráha, kterou urazí volně padající těleso ve vakuu, závisí pouze na čase, tlak v parním kotli závisí pouze na teplotě páry.

Hloubka oceánu v jednom bodě je konstantní, ale v různých bodech se mění, závisí pouze na dvou proměnných – na zeměpisné délce a zeměpisné šířce místa;

Výška rostoucího stromu závisí na mnoha proměnných – slunečním záření, vlhkosti, množství živin v půdě atd.

Vidíme, že některé proměnné se mění nezávisle, říká se jim nezávislé proměnné nebo argumenty, zatímco jiné na nich závisí a nazývají se funkcemi.

Samotná závislost se nazývá funkční. Mimochodem, funkční závislost je jedním z nejdůležitějších pojmů v matematice.

b. Vždy byste měli rozlišovat, na kolika nezávislých proměnných funkce závisí. Nejsnáze se studují funkce jedné proměnné, budeme se jimi zabývat jako první. Studium funkcí mnoha proměnných je obtížnější, ale tak či onak jde o studium funkcí jedné proměnné.

C. Pokud chceme matematicky zapsat, že proměnná y závisí na , pak použijeme následující zápis:

Tento záznam zní takto:

Ne; měli bychom si myslet, že písmeno je násobeno , je to pouze zkratka slova „funkce“ a celé heslo je zkratkou fráze (2).

Podobně, pokud funkce U závisí na dvou argumentech, pak je tato závislost označena následovně:

Zde písmena f, x a y také nejsou faktory.

Je naprosto jasné, jak se označuje funkce tří čtyř a více argumentů.

Místo písmene se nejčastěji používají jiná písmena.

d. Zápisy typu (1) a (3) jsou nejobecnější označení funkcí, protože je lze chápat jako jakékoli funkce, a proto, když máme v ruce pouze tato označení, nemůžeme se o vlastnostech těchto funkcí dozvědět nic.

Abyste mohli funkci studovat, musíte ji definovat.

E. Existuje mnoho způsobů, jak definovat funkci, ale všechny se scvrkají na tři základní typy:

1) funkci lze specifikovat tabulkou jejích číselných hodnot odpovídajících číselným hodnotám jejího argumentu;

2) funkci lze specifikovat graficky;

3) funkci lze specifikovat matematickým vzorcem.

F. Uveďme příklady. Je známo, že při otáčení setrvačníku vznikají pnutí, která mají tendenci trhat jeho věnec. Pokud je ráfek kola vyroben z homogenního materiálu, pak napětí závisí pouze na rychlosti otáčení. Můžeme to napsat, když rychlost označíme v a napětí v ráfku

Teorie pevnosti materiálů uvádí pro hodnoty funkce (4) následující tabulku, pokud je ráfek vyroben z ocelolitiny:

Zde se v měří v metrech za sekundu – newtonech na centimetr čtvereční.

Velkou výhodou tabulkového způsobu tvorby funkce je, že čísla v tabulce lze přímo použít pro různé výpočty.

Nevýhodou je, že každá tabulka není uvedena pro všechny hodnoty argumentů, ale v určitých intervalech, takže pokud v tabulce nejsou žádné funkční hodnoty, musíte vzít podrobnější tabulku; pokud toto není k dispozici, musíte požadované číslo vybrat víceméně přibližně v souladu s povahou změny čísel v tabulce,

G. Velkou nevýhodou také je, že pokud tabulka obsahuje mnoho čísel, pak je charakter změny funkce těžko uchopitelný. Konečně třetí nevýhodou je, že je obtížné studovat vlastnosti funkce dané tabulkou; navíc výsledné vlastnosti budou nepřesné.

h. Grafický způsob zadání funkce nemá první dvě nevýhody.

Pro ilustraci grafické metody zvažte následující příklad.

Pokud je jakýkoli materiál vystaven tahu, síla potřebná k natažení bude záviset na tom, jak velké natažení je třeba provést, tj. síla je funkcí prodloužení. Pokud je procento prodloužení označeno X a tažná síla, která se obvykle měří v newtonech na centimetr čtvereční, je označena , pak

Pro různé materiály bude tato závislost různá. Vezměme souřadnicové osy a uvažujme k jako úsečku a pořadnici, pak pro každou dvojici jejich hodnot získáme bod v rovině.

Všechny tyto body se budou nacházet na určité křivce, která má pro různé materiály různý vzhled. Existují zařízení, která takové křivky kreslí automaticky.

Pro měkkou ocel dostaneme následující křivku (obr. 31):

k. Jak vidíme, grafická demolice je skutečně vizuální a poskytuje hodnoty funkcí pro všechny hodnoty argumentů. Zde se ale vyskytuje i třetí nedostatek. Je stále obtížné studovat vlastnosti funkce dané graficky.

l. Nyní si ukážeme, jak definovat funkci pomocí vzorce. Vezměme si tento příklad. Plocha kruhu samozřejmě závisí na poloměru. Pokud je poloměr označen i a plocha y, pak, jak je známo z geometrie, kde je poměr obvodu k délce průměru. Vidíme, že závislost je zde dána matematickým vzorcem, takže třetí metoda se nazývá matematická metoda. Jiný příklad: délka přepony pravoúhlého trojúhelníku závisí na délkách obou ramen. Označíme-li délku přepony a délky noh , pak podle Pythagorovy věty budeme mít

Protože obě nohy můžeme měnit nezávisle na sobě, máme zde příklad funkce dvou argumentů, definovaných matematicky.

Lze uvést mnohem více příkladů funkcí definovaných matematicky z oblasti různých věd.

m Matematická metoda má oproti jiným metodám specifikace funkcí obrovskou výhodu, totiž: matematickou analýzu lze použít ke studiu funkcí definovaných matematicky.

Navíc v případě potřeby můžete matematickou metodu vždy převést na tabulkovou. Ve skutečnosti máme právo nastavit argumenty na číselné hodnoty, které si přejeme, a použít vzorec k výpočtu libovolného počtu funkčních hodnot. Jeden vzorec tedy nahradí celou tabulku.

n. Matematická metoda má pouze jednu nevýhodu, totiž vzorec neposkytuje vizuální znázornění změny funkce. Tento nedostatek však můžeme vždy vynahradit, neboť matematický způsob zadání lze vždy převést na grafický. Dělá se to takhle.

Ó. Pokud máme funkci jedné proměnné, uděláme tabulku a vezmeme každou dvojici hodnot argumentu a funkce jako souřadnice, načež sestrojíme co největší počet bodů. Všechny výsledné body budou umístěny na určité zakřivené čáře, která bude grafem funkce. Pokud máme funkci dvou nebo více argumentů, lze ji znázornit graficky. To je ale mnohem složitější, a proto se touto problematikou budeme zabývat o něco později.

p. Vše výše uvedené naznačuje, že nejvýhodnější je matematický způsob specifikace funkcí.

Proto se vždy snaží, je-li funkce dána tabulkou nebo grafem, vyjádřit ji vzorcem. Tento úkol bývá velmi obtížný, ale pro přírodní a technické vědy nesmírně důležitý. Bez nadsázky lze říci, že všechny problémy mechaniky, přírodních věd a aplikovaných věd se týkají stanovení a studia funkčních závislostí mezi těmi proměnnými, kterými se tyto disciplíny zabývají. Belovi se podaří vyjádřit tyto funkční závislosti ve vzorcích, pak věda získá spolehlivou páku pro uplatnění veškeré obrovské síly matematické analýzy a pokročí daleko ve svém vývoji.

Na druhé straně matematická analýza, která přijímá toto vynikající jídlo, sama roste a zlepšuje se.

q. Vzhledem k tomu, že převod funkčních závislostních vzorců do jazyka není přímou úlohou matematiky, budeme předpokládat, že funkce jsou již vyjádřeny vzorci. V následujícím textu se tedy budeme zabývat pouze funkcemi definovanými matematicky.

Přednáška 3. Obecné pojmy a definice. Klasifikace funkcí. Funkční limit. Nekonečně malé a nekonečně velké funkce. Základní věty o infinitezimálních funkcích.

Funkce

Při řešení různých problémů se většinou musíte vypořádat s konstantními a proměnnými veličinami.

Definice

Konstantní veličina je veličina, která si zachovává stejnou hodnotu buď obecně, nebo v daném procesu: v druhém případě se nazývá parametr.

Proměnná veličina je veličina, která může nabývat různých číselných hodnot.

Pojem funkce

Při studiu různých jevů se obvykle zabýváme množinou proměnných veličin, které jsou vzájemně propojeny tak, že hodnoty některých veličin (nezávislé proměnné) zcela určují hodnoty jiných (závislé proměnné a funkce).

Definice

Proměnná veličina y se nazývá (jednohodnotová) funkce proměnné veličiny x, pokud spolu souvisejí tak, že každá uvažovaná hodnota x odpovídá jediné dobře definované hodnotě veličiny y (formulované od N.I.

Označení y=f(x) (1)

X– nezávislá proměnná nebo argument;

y– závislá proměnná (funkce);

F– charakteristika funkce.

Množina všech hodnot nezávislé proměnné, pro kterou je funkce definována, se nazývá definiční obor nebo obor existence této funkce. Definiční obor funkce může být: segment, poloviční interval, interval nebo celá číselná osa.

Každá hodnota poloměru odpovídá hodnotě plochy kruhu. Plocha je funkcí poloměru definovaného v nekonečném intervalu

2. Funkce (2). Funkce definovaná v

Chcete-li si představit chování funkce, vytvořte graf funkce.

Definice

Funkční graf y=f(x) se nazývá množina bodů M(x,y) letadlo OXY, jehož souřadnice souvisí touto funkční závislostí. Nebo je grafem funkce přímka, jejíž rovnice je rovností, která definuje funkci.

Například graf funkce (2) je půlkruh o poloměru 2 se středem v počátku.

Nejjednodušší funkční závislosti

Podívejme se na pár jednoduchých funkčních závislostí

  1. Přímá funkční závislost

Definice

Dvě proměnné se nazývají přímo úměrné, pokud když se jedna z nich změní v určitém poměru, druhá se změní ve stejném poměru.

y=kx, Kde k– koeficient proporcionality.

Graf funkce

  1. Lineární závislost

Definice

Dvě proměnné veličiny spolu souvisí lineárním vztahem, if , kde jsou nějaké konstantní veličiny.

Graf funkce

  1. Inverzně úměrný vztah

Definice

Dvě proměnné se nazývají nepřímo úměrné, pokud když se jedna z nich změní v nějakém poměru, druhá se změní v opačném poměru.

  1. Kvadratická závislost

Kvadratická závislost má v nejjednodušším případě tvar , kde k je nějaká konstantní hodnota. Grafem funkce je parabola.

  1. Sinusová závislost.

Při studiu periodických jevů hraje důležitou roli sinusová závislost

- funkce se nazývá harmonická.

A– amplituda;

Frekvence;

Úvodní fáze.

Funkce je periodická s tečkou. Funkční hodnoty v bodech X A x+T, lišící se obdobím, jsou stejné.

Funkci lze zredukovat na formu , Kde . Odtud dostáváme, že harmonický graf je deformovaná sinusoida s amplitudou A a periodou T, posunutá podél osy OX o hodnotu

T

Metody pro specifikaci funkce

Obvykle se uvažují tři způsoby zadání funkce: analytický, tabulkový a grafický.

  1. Analytická metoda zadání funkce

Pokud je funkce vyjádřena pomocí vzorce, pak je specifikována analyticky.

Například

Pokud je funkce y=f(x) je dán vzorcem, pak jeho charakteristikou F označuje sadu akcí, které je třeba provést v určitém pořadí na hodnotě argumentu X abyste získali odpovídající hodnotu funkce.

Příklad . S hodnotou argumentu se provedou tři akce.

  1. Tabulková metoda zadání funkce

Tato metoda stanoví shodu mezi proměnnými pomocí tabulky. Když známe analytické vyjádření funkce, můžeme tuto funkci reprezentovat pro hodnoty argumentů, které nás zajímají, pomocí tabulky.

Je možné přejít od přiřazení tabulkové funkce k analytickému výrazu?

Všimněte si, že tabulka neudává všechny hodnoty funkce a mezilehlé hodnoty funkce lze nalézt pouze přibližně. Jedná se o tzv interpolace funkcí. Proto je v obecném případě nemožné najít přesný analytický výraz pro funkci pomocí tabulkových dat. Vždy je však možné sestavit vzorec a více než jeden, který pro hodnoty argumentu dostupné v tabulce poskytne odpovídající tabulkové hodnoty funkce. Tento druh vzorce se nazývá interpolace.

  1. Grafický způsob zadání funkce

Analytické a tabulkové metody neposkytují jasnou představu o funkci.

Grafický způsob zadání funkce tuto nevýhodu nemá. y=f(x), kdy korespondence mezi argumentem X a funkce y nastavit pomocí plánu.

Pojem implicitní funkce

Funkce se nazývá explicitní, pokud je dána vzorcem, jehož pravá strana neobsahuje závislou proměnnou.

Funkce y z argumentu X se nazývá implicitní, pokud je dáno rovnicí

F(x,y)=0(1) nevyřešeno ohledně závislé proměnné.

Pojem inverzní funkce

Nechť je funkce dána y=f(x)(1). Zadáním hodnot argumentu x získáme hodnoty funkce y

Je to možné, vzhledem k tomu y argument a X– funkce, nastavené hodnoty y a získat hodnoty X. V tomto případě určí rovnice (1). X, jako implicitní funkce y. Tato poslední funkce je volána zvrátit ve vztahu k této funkci y.

Za předpokladu, že rovnice (1) je vyřešena vzhledem k X, získáme explicitní výraz pro inverzní funkci

(2), kde funkce pro všechny platné hodnoty y splňuje podmínku

Metoda normálních tvarů

Učitel

Celé jméno By měl Plat Zkušenosti Nadb Kaf Předmět Skupina VidZan
Ivanov I.M. Rev. DBMS Laboratoř
Ivanov I.M. Rev. Informovat Laboratoř
Petrov M.I. Starší učitel DBMS Přednáška
Petrov M.I. Starší učitel Grafika Laboratoř
Sidorov N.G. Rev. Informovat Přednáška
Sidorov N.G. Rev. Grafika Přednáška
Egorov V.V. Rev. PC Přednáška

Rýže. 6.4. Počáteční postoj UČITEL

Implicitní redundance se projevuje ve stejných platech pro všechny učitele a ve stejných platových odměnách za stejně dlouhou dobu. Pokud se plat změní z 500 rub. až 510 rublů, pak musí být tato hodnota změněna pro všechny učitele. Pokud je Sidorov vynechán, databáze se stane nekonzistentní. Toto je příklad anomálie úpravy vztahu s implicitní redundancí.

Odstranění redundance spočívá v normalizaci vztahů.

Metoda normálního tvaru je klasickou metodou pro návrh relačních databází. Vychází ze základního konceptu závislosti mezi atributy vztahu.

Atribut B funkčně závislý z atributu A, pokud každá hodnota A odpovídá právě jedné hodnotě B. Matematicky je funkční závislost B na A označena zápisem A ® B. To znamená, že ve všech n-ticích se stejnou hodnotou atributu a je ATRIBUT STEJNOU HODNOTU BUDE MÍT TAKÉ B. Atributy A a B mohou být složené – sestávající ze dvou nebo více atributů. Ve vztahu k Učiteli jsou funkční závislosti následující: Celé jméno ® Oddělení, Celé jméno ® Povinnost, Povinnost ® Plat atd.

Funkční vzájemná závislost. Pokud existuje funkční závislost formy A ® B a B ® A, pak mezi A a B existuje korespondence jedna ku jedné, neboli funkční vzájemná závislost. Matematicky je vzájemná závislost označena jako A "B" nebo B "A.

Příklad. Atribut N (řada a číslo pasu) je funkčně závislý na atributu celého jména (příjmení, jméno a patronymie), pokud se předpokládá, že je vyloučena situace úplné shody příjmení, jmen a patronymií dvou osob. .

Částečná funkční závislost Volá se závislost neklíčového atributu na části složeného klíče. Ve vztahu Učitel je klíč složený a skládá se z atributů Celé jméno, Předmět a Skupina. Všechny neklíčové atributy jsou funkčně závislé na klíči s různým stupněm závislosti. Například atribut Position je funkčně závislý na atributu Full Name, který je součástí klíče, tzn. je částečně závislá na klíči.

Plná funkční závislost - závislost neklíčového atributu na celém složeném klíči. Například atribut ViewZan je plně funkčně závislý na složeném klíči.

Atribut C závisí na atributu A tranzitivně (existuje tranzitivní závislost ), pokud jsou pro atributy A, B, C splněny podmínky A ® B a B ® C, ale neexistuje žádný inverzní vztah. V příkladu jsou atributy spojeny tranzitivní závislostí:

Celé jméno ® Pracovní pozice ® ​​Plat

Ve vztahu k R, atribut B hodně záleží z atributu A, pokud každá hodnota A odpovídá množině hodnot B, které nejsou spojeny s jinými atributy z R. Vícehodnotové závislosti mohou být jedna k mnoha (1:M), mnoho k jedné (M :1) nebo many-to-one to many" (M:M), označované příslušně: A Þ B, A Ü B a A Û B.

V uvažovaném příkladu existuje vícehodnotový vztah M:M mezi atributy Celé jméno Û Předmět (jeden učitel může vyučovat několik předmětů a jeden předmět může vyučovat několik učitelů).

Protože závislost mezi atributy je příčinou anomálií, snaží se takové vztahy rozdělit do několika vztahů. V důsledku toho vzniká množina souvisejících vztahů (tabulek) se spojeními tvaru 1:1, 1:M, M:1 a M:M. Vztahy mezi tabulkami odrážejí závislosti mezi atributy různých vztahů.

Vzájemně nezávislé atributy. Dva nebo více atributů se říká, že jsou vzájemně nezávislé, pokud žádný z atributů není funkčně závislý na ostatních atributech. Matematicky se absence závislosti atributu A na atributu B označí jako A Ø® B. Pokud dojde k A Ø® B a B Ø® A, pak se vzájemná nezávislost označí A Ø = B.

Identifikace závislostí mezi atributy. Identifikace závislostí mezi atributy je nezbytná k provedení návrhu databáze pomocí metody normálních formulářů.

Příklad. Nechť je dán vztah R se schématem R(A1, A2, A3) ve tvaru:

A1 A2 A3

Je a priori známo, že existují funkční závislosti:

A1®A2 a A2®A3.

Z analýzy je zřejmé, že ve vztahu existují také závislosti:

A1®A3, A1A2®A3, A1A2A3®A1A2, A1A2®A2A3 atd.

Ve vztahu není funkční závislost atributu A1 na atributu A2 a na atributu A3, tzn.

A2 Ø® A1, A3 Ø® A1.

Absence závislosti A1 na A2 se vysvětluje tím, že stejné hodnotě atributu A2 (21) odpovídají různé hodnoty atributu A1 (12 a 17).

Všechny existující funkční závislosti ve vztahu jsou kompletní sadu funkčních závislostí , kterou označíme F + . Kompletní sadu funkčních závislostí lze odvodit na základě 8 inferenčních axiomů: odrazivosti, dokončení, tranzitivity, extenze, pokračování, pseudotransitivity, sjednocení a rozkladu.

Pro vztah Učitel můžete odvodit následující funkční závislosti:

Celé jméno ® Plat

Celé jméno ® Povinnost

Celé jméno ® Experience

Celé jméno ® Nadb

Celé jméno ® Kaf

Zkušenosti ® Nadb

Dluh ® Plat

Plat ® Povinnost

CELÉ JMÉNO. Předmět Skupina ® Plat

Rýže. 6.5. Závislosti mezi atributy.

Předpokládá se, že jeden učitel v jedné skupině může vést jeden typ hodiny (přednášky nebo laboratorní práce). Celé jméno – jedinečné. Existuje závislost Full Name ® Experience, ale obrácené tvrzení není pravdivé, protože Několik učitelů má stejnou zkušenost. Co se týče dalších závislostí, úvahy jsou podobné. Mezi pozicí a platem je vytvořen vztah jedna ku jedné.

Jeden učitel v jedné skupině v různých předmětech může vést různé typy hodin. Definice Druhu povolání je spojena s uvedením celého jména, předmětu a skupiny. Opravdu, Petrov M.I. ve 256. skupině přednáší a vede laboratorní kurzy, ale přednáší o DBMS a laboratorní práce o grafice.

Závislosti mezi atributy Jméno, Předmět a Skupina se nezobrazují, protože tvoří složený klíč a nejsou brány v úvahu v procesu normalizace vztahu (tabulky).

Normální formy. Proces navrhování databází pomocí normálních forem je iterativní a spočívá v postupném přenášení vztahů z první normální formy do normálních forem vyššího řádu. Každý následující formulář omezuje určitý typ funkční závislosti, eliminuje odpovídající anomálie při provádění operací s databázovými vztahy a zachovává vlastnosti předchozích formulářů.

Rozlišuje se následující sekvence normálních forem:

° První normální forma (1NF);

° Druhá normální forma (2NF);

° Třetí normální forma (3NF);

° Posílená třetí normální forma nebo Boyce-Codd normální forma (BCNF);

° Čtvrtá normální forma (4NF);

° Pátá normální forma (5NF).

První normální forma Relace je v 1NF, pokud jsou všechny její atributy jednoduché (mají jedinou hodnotu). Původní vztah je konstruován tak, že je v 1NF.

Transformace vztahu do další normální formy se provádí metodou „bezeztrátového rozkladu“, tzn. dotazy (vzorkování dat podle podmínky) na původní vztah a na vztahy získané jako výsledek rozkladu by měly dávat stejný výsledek.

Hlavní operací rozkladové metody je operace promítání.

Příklad. Nechť má relace R(A,B,C,D,E,...) funkční závislost C ® D. Rozklad relace R na dvě nové relace R1(A, B,C,E,...) a R2(C,D) odstraní funkční závislost atributů a přenese vztah R do další normální formy. Vztah R2 je projekcí vztahu R na atributy C a D.

Původní vztah Učitel má složený klíč Celé jméno, předmět, skupina a je v 1NF. Atributy Zkušenosti, Nadb, Kavárna, Povinnost, Plat jsou funkčně závislé na části složeného klíče - atributu Celé jméno. Tato částečná závislost vede k explicitní a implicitní redundanci dat, což vytváří problémy s editací dat. Část redundance je eliminována převodem vztahu na 2NF.

Druhá normální forma. Relace je v 2NF, pokud je v 1NF a každý neklíčový atribut je plně funkčně závislý na primárním klíči (složeném).

K odstranění částečné závislosti je nutné použít operaci promítání, rozšiřující původní vztah do několika vztahů následovně:

° Vytvořte projekci bez atributů, které jsou částečně závislé na primárním klíči;

° Vytvořte projekce na části složeného primárního klíče a atributy, které na těchto částech závisí.

Přeložme vztah Učitel do 2NF. Výsledkem jsou dva vztahy R1 a R2.

R1

Celé jméno Předmět Skupina VidZan
Ivanov I.M. DBMS Laboratoř
Ivanov I.M. Informovat Laboratoř
Petrov M.I. DBMS Přednáška
Petrov M.I. Grafika Laboratoř
Sidorov N.G. Informovat Přednáška
Sidorov N.G. Grafika Přednáška
Egorov V.V. PC Přednáška

Rýže. 6.6. Databázové vztahy UČITEL ve 2 SF

Ve vztahu R1 je primární klíč složený Celé jméno, předmět, skupina, ve vztahu k R2 je klíč CELÉ JMÉNO. V důsledku toho odpadá zjevná nadbytečnost údajů o učitelích. V R2 stále existuje implicitní duplikace dat.

Pro další vylepšení převedeme vztahy na 3NF.

Při návrhu databáze v relačním DBMS je hlavním cílem vývoje logického datového modelu vytvoření přesné reprezentace dat, vztahů mezi nimi a požadovaných omezení. K tomu je nutné nejprve určit vhodnou množinu vztahů. Metoda, která se k tomu používá, se nazývá normalizace. Normalizace je variantou přístupu zdola nahoru k návrhu databáze, která začíná vytvořením vztahů mezi atributy.

Účel normalizace

normalizace - metoda vytváření sady vztahů se zadanými vlastnostmi na základě požadavků na data stanovených v nějaké organizaci.

Normalizace se často provádí jako série testů vztahu, aby se ověřilo, zda splňuje (nebo nesplňuje) požadavky dané normální formy.

Proces normalizace je formální metoda, která umožňuje identifikovat vztahy na základě jejich primárních klíčů (nebo kandidátských klíčů, jako v případě BCNF) a funkčních závislostí, které existují mezi jejich atributy. Návrháři databází mohou použít normalizaci ve formě sad testů aplikovaných na jednotlivé vztahy k normalizaci relačního schématu na danou, konkrétní formu, čímž se zabrání potenciálnímu výskytu aktualizačních anomálií.

Hlavním cílem návrhu relační databáze je seskupovat atributy a vztahy tak, aby se minimalizovala redundance dat a tím se snížilo množství paměti potřebné k fyzickému uložení vztahů reprezentovaných jako tabulky.

Funkční závislosti

Funkční závislost popisuje vztah mezi atributy a je jedním ze základních pojmů normalizace. Tato část poskytuje definici tohoto konceptu a následující části popisují jeho vztah k procesům normalizace databázových vztahů.

Funkční závislost- popisuje vztah mezi atributy vztahu. Například pokud ve vztahu. R obsahující atributy A a B, atribut B funkčně závisí na atributu A (který se označuje jako AB), pak každá hodnota atributu A je spojena pouze s jednou hodnotou atributu B. (Navíc každý z atributů A a B se může skládat z jednoho nebo několika atributů.)

Funkční závislost je sémantickou (nebo sémantickou) vlastností atributů relace. Sémantika vztahu specifikuje, jak spolu mohou jeho atributy souviset, a také definuje funkční závislosti mezi atributy ve formě omezení uvalených na některé atributy.

Vztah mezi atributy A a B lze schematicky znázornit ve formě diagramu znázorněného na obrázku 5.

Determinant- determinantem funkční závislosti je atribut nebo skupina atributů umístěná na diagramu funkční závislosti vlevo od symbolu šipky.

Obrázek 5 - Diagram funkčních závislostí

Pokud existuje funkční závislost, atribut nebo skupina atributů umístěná v jeho diagramu vlevo od symbolu šipky se nazývá determinant. Například na Obr. 6.1 atribut A je determinantem atributu B.

Koncept funkční závislosti je ústředním pojmem v procesu normalizace.

Při reprezentaci konceptuálního diagramu jako relačního modelu jsou možné různé možnosti výběru schémat vztahů. Některé možnosti výběru byly zvažovány v předchozích částech (část 6.2.3), jiné se získávají kombinací (nebo rozdělením) některých schémat vztahů. Správný výběr vztahových diagramů reprezentujících konceptuální schéma do značné míry určí efektivitu databáze.

Podívejme se jako příklad na konkrétní vztahové schéma a analyzujme jeho nedostatky. Předpokládejme, že údaje o studentech, fakultách, specializacích jsou zahrnuty v tabulce s následujícím vztahovým schématem: STUDENT (Kód studenta, Příjmení, Název fakulty, Název oboru).

Toto schéma vztahů způsobuje následující nevýhody odpovídající databáze:

  • Duplikace informací (redundance). U studentů studujících na stejném oddělení se bude název katedry opakovat. Speciality se budou opakovat pro různé fakulty.
  • Potenciální nekonzistence ( aktualizovat anomálie). Pokud se např. změní název odbornosti, tak změnou v jedné n-tice (pro jednoho studenta) je nutné jej změnit i ve všech ostatních n-ticích, kde se vyskytuje.
  • Možná ztráta informací ( anomálie mazání). Když smažeme informace o všech studentech vstupujících do určité specializace, ztratíme všechny informace o této specializaci.
  • Možnost, že informace nebudou zahrnuty do databáze ( spínací anomálie). Databáze nebude obsahovat informace o specializaci, pokud v ní nestudují žádní studenti.

V teorie relačních databází existují formální metody pro konstrukci relačního databázového modelu, ve kterém není redundance a aktualizovat anomálie, odstranění a zařazení.

Normalizace. První normální forma.

Konstrukce racionální verze vztahových schémat (která má lepší vlastnosti pro operace vkládání, modifikace a mazání dat než všechny ostatní sady schémat) se provádí pomocí tzv. normalizace vztahové vzorce. Normalizace se provádí v několika fázích. V počáteční fázi by měl být vztahový diagram první normální forma(1NF).

Vztah je na prvním místě normální forma, pokud všechny atributy vztahu nabývají jednoduchých hodnot (atomických nebo nedělitelných), které nejsou množinou nebo n-ticí více elementárních komponent.

Zvažte následující příklad.

Tabulka představuje entitu ZPRÁVA O VYŠETŘENÍ

Kód studenta Příjmení Kód zkoušky Předmět a datum Školní známka
1 Sergejev 1 Matematika 5.06.08 4
2 Ivanov 1 Matematika 5.06.08 5
1 Sergejev 2 Fyzika 9.06.08 5
2 Ivanov 2 Fyzika 9.06.08 5

Nyní na průsečíku libovolného řádku a libovolného sloupce je jedna hodnota, a proto je tato tabulka v první normální forma.

Dále vztah uvedený v prvním normální forma, se postupně transformuje na druhý a třetí normální formy. Proces konstrukce druhé a třetí normální formy bude popsán v následujících podkapitolách. Podle některých předpokladů o datech třetí normální forma je požadovaná nejlepší možnost.

Pokud tyto předpoklady nejsou splněny, pak proces normalizace pokračuje a poměr se převede na čtvrtý a pátý normální formy. Konstrukce odpovídajících forem je popsána v literatuře a není v této knize diskutována.

Než přejdeme ke konstrukci druhého normální tvar, je nutné definovat řadu formálních pojmů.

8.2. Funkční závislosti (závislosti mezi atributy vztahu)

Nechť R(A 1, A 2, ..., A n) je relační schéma a X a Y jsou podmnožiny (A 1, A 2, ..., An).

Funkční závislost na postoji R je výrok ve tvaru „Pokud dvě n-tice R odpovídat atributům sady(tj. tyto n-tice mají stejné hodnoty ve svých odpovídajících komponentách pro každý atribut množiny X ), pak se musí shodovat v atributech sady . Formálně je tato závislost zapsána výrazem X -> Y, a říká se to X funkčně definuje Y. Další často používaný výrok je: X funkčně definuje Y nebo Y funkčně závisí na X ( označený X -> Y) právě tehdy, když každá hodnota množiny X vztah R spojené s jednou hodnotou množiny Y vztah R. Jinými slovy, pokud dvě n-tice R se významově shodují X, významově jsou stejné Y.

Komentář. Obecně řečeno, pojem „vztah“ může znamenat dva pojmy:

  • vztah jako proměnná, která může nabývat různých hodnot (tabulka, jejíž řádky a sloupce mohou obsahovat různé hodnoty);
  • vztah jako soubor konkrétních hodnot (tabulka s vyplněnými prvky).

Funkční závislosti charakterizujte všechny vztahy, které mohou být v zásadě hodnotami relačního schématu R. Proto jediný způsob, jak určit funkčních závislostí– pečlivě analyzovat sémantiku (význam) atributů.

Funkční závislosti jsou zejména integritní omezení, proto je vhodné je kontrolovat při každé aktualizaci databáze.

Příklad funkčních závislostí pro vztah ZPRÁVA O VYŠETŘENÍ

Kód studenta -> Příjmení Kód studenta, Kód zkoušky -> Známka

Příklad funkčních závislostí pro vztah STUDENT uvedený na začátku této přednášky

Kód studenta -> Příjmení, Kód studenta -> Fakulta

Upozorňujeme, že poslední závislost existuje za podmínky, že jeden student nemůže studovat na více fakultách.

Kompletní sada funkčních závislostí

Pro každý vztah existuje dobře definovaný soubor funkčních závislostí mezi atributy tohoto vztahu. Navíc z jedné nebo více funkčních závislostí obsažených v uvažovaném vztahu lze odvodit další funkčních závislostí, také neodmyslitelnou součástí tohoto vztahu.

Daná množina funkčních závislostí pro vztah R označme F kompletní sadu funkčních závislostí, ze kterých lze logicky odvodit F tzv. uzavření F a je určeno F+.

Pokud se množina funkčních závislostí shoduje s uzavřením této množiny, pak se taková množina funkčních závislostí nazývá úplná.

Zavedené pojmy nám umožňují formálně definovat pojem klíč.

Nechť je nějaké schéma R s atributy A 1 A 2 ...A n , F – nějakou sadu funkčních závislostí a X - nějakou podmnožinu R. Pak X se nazývá klíč, pokud za prvé, in F+ existuje závislost X -> A 1 A 2 ...A n a za druhé, pro žádnou podmnožinu Y obsažen v X, závislost Y -> A 1 A 2 ...A n nepatří F+.

Úplná funkční závislost je závislost neklíčového atributu na celém složeném klíči..

Částečná funkční závislost je závislost neklíčového atributu na části složeného klíče..

Vypočítat uzavření více funkčních závislostí používají se následující pravidla vyvozování (




Horní