Matematika
přehled kapitol
jednotka 2.1 | charakteristika dobré databáze |
jednotka 2.2 | problémy s databázemi |
jednotka 2.3 | jak se zbavit anomálií |
výsledky učení
na konci této kapitoly byste měli být schopni:
- uveďte vlastnosti dobré databáze
- popište problémy s databázemi
- vysvětlete normalizaci a proces.
Úvod
Data jsou uložena v tabulkách v databázi. Může být uložen v jedné tabulce (nazývané plochá databáze – jak je znázorněno na obrázku 2.1) nebo ve více připojených tabulkách (nazývaných relační databáze – jak je znázorněno na obrázku 2.2).
nová slova
pole – jeden bit informací o osobě nebo položce, například věk
záznam – skupina souvisejících polí o položce nebo osobě, která je zachycena v tabulce
primární klíč-pole, které obsahuje jedinečný identifikátor pro každý záznam v databázi (unikátní znamená, že existuje pouze jeden svého druhu)
každá tabulka se skládá z polí a záznamů. Pole jsou kategorie, pro které chcete zaznamenávat data. Například výše uvedená hudební tabulka obsahuje pole jako název, interpreta, trvání a Album. Záznamy odkazují na skutečná data, která jsou zachycena, přičemž každý záznam obsahuje data jedné položky. Například v tabulce skladeb představuje každý záznam jednu skladbu se všemi informacemi (jako interpret a doba trvání) souvisejícími s touto skladbou.
každá tabulka může mít jedno povinné pole nazvané primární klíč, které obsahuje jedinečný identifikátor pro každý záznam v databázi. To vám umožní odkazovat na konkrétní záznam v tabulce tak, aby mohl odkazovat pouze na jednu položku. I když je možné vytvořit z existujícího pole tabulky klíčové pole, tvůrci databází obvykle vytvářejí nové pole speciálně pro tento účel. To jim umožňuje ujistit se, že neexistují žádné duplikáty.
někdy existují anomálie s databázemi, naučíte se, jak se těchto anomálií zbavit.
v této kapitole navrhnete a vytvoříte relační databázi. Někdy existují anomálie s databázemi, naučíte se, jak se jich zbavit a dosáhnout normalizace.
databáze v kostce
Data jsou v zásadě uložena v 1s a 0s. Počítač stále potřebuje vědět, jak jsou tyto 1s a 0s organizovány a jak by měly být interpretovány. Za tímto účelem počítače využívají datové struktury, které popisují konkrétní sekvenci pro organizaci dat. To umožňuje počítači pochopit, jak různé bity dat souvisejí, a správně interpretovat data.
víme, že každé písmeno v abecedě představuje znak. Když přidáte dostatek znaků dohromady, tvoří slovo (jako „oranžová“ nebo „láska“), které představuje koncept. Proto umožňuje komunikaci užitečných informací mezi dvěma nebo více lidmi-a to i na dálku.
za účelem komunikace dat a instrukcí jsou data, jako jsou čísla, písmena, znaky, speciální symbol, zvuky/fonika a obrázky, převedena do počítačem čitelné formy (binární). Jakmile je zpracování těchto dat dokončeno, jsou převedena do formátu čitelného pro člověka, zpracovaná data se stávají smysluplnou informací. Informace se stávají znalostmi a mohou být chápány a používány lidmi pro různé účely.
aktivita 2.1 revizní činnost
2.1.1 podle vlastních slov Vysvětlete, co je databáze a k čemu ji lze použít. Uveďte příklad, který podpoří vaši odpověď.
2.1.2 True nebo False: datový sklad používá transakční data z různých zdrojů a analyticky je využívá.
2.1.3 vyplňte prázdná místa výběrem správného výrazu z níže uvedeného seznamu:
a. Data jsou uložena v ____________ v databázi.
b. jeden bit informací o položce nebo osobě je_________.
c.Když je mnoho souvisejících polí o položce sestaveno formulář a ___________.
d. A ___________ klíč obsahuje jedinečné identifikátory pro každý záznam v databázi.
e. databáze je určena k ukládání _____________ transakce, zatímco data ______________ ukládá velké množství historických dat.
f. A ______________databáze ukládá data do více tabulek.
UNIT2. 1 Charakteristika dobré databáze
všechny dobré databáze by měly začínat cennými metadaty a daty. V kapitole 1 jsme se podívali na charakteristiky cenných dat a na to, jak tato data spravovat. Ty jsou znázorněny na obrázku 2.3 níže:
podívejme se nyní na vlastnosti dobré databáze:
- databáze by měla být dostatečně silná, aby ukládala všechna relevantní data a požadavky.
- by měl být schopen propojit tabulky v databázi pomocí relace, například zaměstnanec pracuje pro oddělení, takže zaměstnanec je spojen s konkrétním oddělením. Měli bychom být schopni definovat takový vztah mezi libovolnými dvěma entitami v databázi.
- více uživatelů by mělo mít přístup ke stejné databázi, aniž by to ovlivnilo druhého uživatele. Například několik učitelů může pracovat na databázi a současně aktualizovat známky studentů. Učitelé by také měli mít možnost aktualizovat známky pro své předměty, aniž by upravovali další známky předmětů.
- jedna databáze poskytuje různé pohledy různým uživatelům, podporuje více pohledů uživateli v závislosti na jeho roli. Například ve školní databázi mohou učitelé vidět rozpis známek žáků; rodiče však mohou vidět pouze zprávu svého dítěte – přístup rodičů by tedy byl pouze pro čtení. Zároveň budou mít učitelé přístup ke všem informacím studentů a podrobnostem hodnocení s právy na změny. To vše se může stát ve stejné databázi.
- integrita dat označuje, jak přesná a konzistentní jsou data v databázi. Databáze se spoustou chybujících informací a nesprávných informací mají nízkou integritu dat.
- nezávislost dat označuje oddělení dat od aplikace (nebo aplikací), ve které se používá. To vám umožní aktualizovat data ve vaší aplikaci (například opravit pravopisnou chybu), aniž byste museli překompilovat celou aplikaci.
- redundance dat znamená mít přesně stejná data na různých místech v databázi. Redundance dat zvyšuje velikost databáze, vytváří problémy s integritou, snižuje účinnost a vede k anomáliím. Data by měla být uložena tak, aby se neopakovala ve více tabulkách.
- zabezpečení dat označuje, jak dobře jsou data v databázi chráněna před haváriemi, hacky anáhodným vymazáním.
- údržba dat se týká měsíčních, denních nebo hodinových úkolů, které se provádějí za účelem opravy chyb v databázi a zabránění výskytu anomálií. Údržba databáze nejen opravuje chyby, ale také detekuje Potenciální chyby a zabraňuje budoucím chybám.
existuje také mnoho lidí zapojených do organizace dobře spravované databáze. Jedná se o:
- vývojáři, kteří navrhují a vyvíjejí databázi tak, aby vyhovovala potřebám podniku
- správce, který:
- kontroluje databázi pro její použití
- kdo ji kontroluje
- poskytuje přístup k jiným účelům
- poskytuje jakékoli další Údržbářské práce potřebné k udržení databáze aktuální
- koncový uživatel, který používá databázi, například učitelé nebo rodiče.
činnost 2.1
2.1.1 vyberte termín / koncept ze sloupce B, který odpovídá popisu ve sloupci a. vedle čísla otázky napište pouze písmeno (např.
2.1.2 popište tři typy lidí, kteří jsou zapojeni do databáze.
2.1.3 seznam pěti charakteristik údajů o kvalitě.
2.1.4 škola by chtěla vytvořit databázi, která může:
- informujte rodiče o akademických pracovnících, hodnoceních a školních aktivitách svého dítěte
- pomozte učitelům zaznamenávat práci a hodnocení
- ukládat podrobnosti o každém dítěti a jejich rodinách.
a. pracujte v malých skupinách po čtyřech nebo pěti studujících. Diskutujte o každé charakteristice dobré databáze a vysvětlete je s odkazem na výše uvedený scénář.
b. k prezentaci diskuse použijte mindmap.
UNIT2.2 Problémy s databázemi
pokud je databáze plochých souborů špatně plánovaná, denormalizovaná a nekonzistentní, způsobí problémy při pokusu o vložení, odstranění nebo úpravu záznamů (tabulek) v databázi. To způsobuje anomálie,které s růstem databáze ztěžují manipulaci s daty. To také ztěžuje zachování integrity dat. Snažit se, aby data byla konzistentní, jakmile dojde k anomálii, může být docela obtížné.
v databázích se mohou vyskytnout tři typy problémů:
- vložení anomálie: Databáze byla vytvořena tak, že požadovaná data nemohou být přidána, pokud není přidán další kus nedostupných dat. Například nemocniční databáze, která nemůže ukládat podrobnosti o novém členovi, dokud tento člen nebyl viděn lékařem.
- anomálie vymazání: legitimní vymazání záznamu dat může způsobit vymazání některých požadovaných dat. Například odstranění některých údajů o pacientovi může odstranit všechny podrobnosti o pacientovi z databáze nemocnice.
- modifikační anomálie: Může být nutné změnit nesprávná data, což by mohlo zahrnovat mnoho záznamů, které musí být změněny, což vede k možnosti nesprávného provedení některých změn.
příklad 2.1 problémy, které se vyskytují v databázi
podívejte se například na níže uvedené schéma, které představuje informace týkající se školy:
AccountInfo
problémy:
- redundance dat: redundance dat označuje ukládání přesně stejných dat na různých místech v databázi. Redundance dat zvyšuje velikost vaší databáze, vytváří problémy s integritou, snižuje efektivitu databáze a může vést k anomáliím databáze. Data by měla být uložena tak, aby se neměla opakovat ve více tabulkách. Rodina může být zastoupena jako jedna jednotka.
- aktualizace anomálie: Data budou nekonzistentní, pokud je aktualizována jedna entita, například pokud se změní adresa rodiny, bude muset správce dat změnit všechny čtyři entity.
- nelze reprezentovat některé informace: škola nemůže vést informace o studujících, kteří jsou na čekací listině, protože nemají účet u školy.
- anomálie vymazání: uzavření účtu pro jedno dítě odstraní všechna data druhého dítěte z databáze.
činnost 2.2
2.2.1 uveďte tři typy anomálií a uveďte příklad pro každou z nich.
2.2.2 podívejte se na níže uvedené schéma, které představuje informace týkající se nemocnice:
AccountInfo
seznam a vysvětlete alespoň čtyři anomálie s touto databází.
UNIT2. 3 Jak se zbavit anomálií
Chcete-li zabránit anomáliím, musíte normalizovat databázi efektivním uspořádáním dat v databázi.
podle Edgara F Codda, vynálezce relačních databází, cíle normalizace zahrnují:
- odstranění všech redundantních (nebo opakovaných) dat z databáze
- odstranění nežádoucích závislostí na vkládání, aktualizacích a mazání
- snížení potřeby restrukturalizace celé databáze při každém přidání nových polí
- čímž se vztahy mezi tabulkami stanou užitečnějšími a srozumitelnějšími.
normalizace je systematický přístup rozkládajících se tabulek k eliminaci redundance dat a anomálií vkládání, modifikace a mazání. Návrhář databáze strukturuje data způsobem, který eliminuje zbytečné duplikace a poskytuje rychlou cestu vyhledávání ke všem potřebným informacím. Jedná se o vícestupňový proces, který vkládá data do tabulkové podoby a odstraňuje duplicitní data z relačních tabulek. Tento proces určování a definování tabulek, klíčů, sloupců a vztahů za účelem vytvoření efektivní databáze se nazývá normalizace.
normalizace sníží množství prostoru, který databáze používá, a zajistí efektivní ukládání dat. Bez normalizace mohou být databázové systémy nepřesné, pomalé a neefektivní. Nemusí produkovat data, která očekáváte.
v praxi to znamená změnu databáze tak, aby byly splněny následující požadavky:
- každá tabulka musí mít primární klíč
- každý záznam by měl mít atributy/sloupce s jednou hodnotou (atomové)
- neměly by existovat žádné opakující se skupiny informací.
klíče se používají k vytvoření a identifikaci vztahů mezi tabulkami a také k jedinečné identifikaci jakéhokoli záznamu nebo řádku dat uvnitř tabulky. Klíčem může být jeden atribut nebo skupina atributů (compositeprimary key), kde kombinace může fungovat jako klíč. Klíče nám pomáhají identifikovat libovolný řádek dat.
při navrhování databáze jsou čtyři typy klíčových polí:
- primární klíč: pole vybrané tvůrcem databáze pro jednoznačnou identifikaci každého záznamu v tabulce. Například každá skladba ve vaší hudební databázi může mít pole primárního klíče nazvané „song_id“.
- alternativní klíč: pole obsahující jedinečné hodnoty, které lze použít jako primární klíč, ale v současné době není nastaveno jako primární klíč, například artist_id.
- cizí klíč: pole obsahující hodnoty z pole primárního klíče jiné tabulky. Cizí klíče se používají k zobrazení vztahu mezi různými tabulkami. Například každá skladba ve vaší hudební databázi může mít pole cizího klíče nazvané „artist_id“, které propojuje skladbu s konkrétním umělcem na tabulce“ umělci“.
- kompozitní klíč: kombinace více než jednoho pole, které jednoznačně identifikuje každý záznam v tabulce, například song_id a artist_id.
použijme tento příklad k pochopení čtyř hlavních typů klíčů:
normalizační pravidla se dělí na následující normální formy:
první normální forma (1NF)
aby tabulka byla v první normální podobě, měla by se řídit následujícími čtyřmi pravidly:
- každý sloupec musí mít samostatné pole / atribut. Každý sloupec tabulky by neměl obsahovat více hodnot. Představte si například databázi aktualizací stavu Facebook, konkrétně tabulku týkající se lajků. Aby byly záznamy nedělitelné, měly by být všechny podobné uloženy v samostatném záznamu. Tímto způsobem by každý záznam buď nastal, nebo nenastal. Neexistuje způsob, jak říci, že došlo pouze k malé části podobného, zatímco jiná část ne. Pokud jsou však všechny lajky pro aktualizaci stavu uloženy v jednom záznamu, pak by byl záznam dělitelný, protože by bylo možné, aby se některé lajky vyskytly, zatímco jiné se nevyskytly.
- hodnoty uložené ve sloupci by měly být stejného druhu nebo typu (domény). V každém sloupci musí být uložené hodnoty stejného druhu nebo typu.
- všechny sloupce v tabulce by měly mít jedinečné názvy. Každý sloupec v tabulce by měl mít jedinečný název, aby nedošlo k záměně v době načítání dat nebo provádění jakékoli jiné operace s uloženými daty. Zadejte například jméno dítěte a jméno rodiče, nepoužívejte „jméno“.
- pořadí, ve kterém jsou data uložena, nezáleží na tom. Například
- tabulka splňuje tři pravidla ze čtyř pravidel: názvy sloupců jsou jedinečné, uložená data jsou ve správném pořadí a ve sloupcích nejsou žádné smíšené různé typy dat. Studenti v tabulce se však rozhodli pro více než jeden předmět. Tato data byla uložena v názvech předmětů v jednom sloupci. Podle 1NF musí každý sloupec obsahovat jednu hodnotu.
druhá normální forma (2NF)
pro tabulku, která má být ve druhé normální formě:
- měl by být v první normální formě.
- a neměla by mít částečnou závislost.
to je místo, kde atribut v tabulce závisí pouze na části primárního klíče a ne na celém klíči. Například tabulka zaznamenává primární klíče jako student_id a subject_id každého žáka. Pouze jméno učitele závisí na předmětu. Takže předmět_id a nemá nic společného se student_id.
třetí normální forma (3NF)
tabulka se uvádí, že je ve třetí normální formě, když:
- je ve druhé normální formě.
- nemá přechodnou závislost. Přechodná závislost nastane, když atribut/pole závisí spíše na jiných atributech/polích než na primárním klíči.
toto je nepřímý vztah mezi hodnotami ve stejné tabulce.
činnost 2.3
2.3.1 vysvětlete, proč je normalizace pro databázi důležitá.
2.3.2 jak lze dosáhnout normalizace?
2.3.3 seznam a popsat čtyři typy klíčových polí, které mohou být použity v databázi.
2.3.4jak byste opravili níže uvedenou tabulku, abyste dosáhli 1N?
2.3.5 Uveďte příklady, které nejsou uvedeny výše, různých klíčových polí.
2.3.6 pomocí informací v tabulce níže uveďte příklady libovolných dvou klíčů.
konsolidační činnost Kapitola 2: koncepce návrhu databáze
1.Vyberte správnou odpověď.
a. který z následujících scénářů nepotřebuje databázi?
a. ukládání pověření všech účtů Gmail.
B.Zálohování všech informací v osobním počítači.
C. uložení všech webových stránek webové stránky.
D. ukládání všech informací o inventáři podniku.
b. která z následujících vlastností je charakteristika dobré databáze?
a. vytváření kopií dat v databázi pro zálohování.
B. udržování dat a aplikací propojených a závislých na sobě.
C. zabránění výskytu chyb v databázi.
D. ukládání dat v různých formátech.
c.Která z následujících možností je nutná k tomu, aby se každý záznam v databázové tabulce lišil?
a. sekundární klíč
B. cizí klíč
C. primární klíč
D. alternativní klíč
2.Seznam čtyř typů klíčů použitých k návrhu databáze. Navrhněte tabulku, kterou chcete použít jako příklad.
3.In návrh databáze jaké jsou požadavky na 1NF, 2NF a 3NF?