1 / 84

Teorie zpracování dat

Teorie zpracování dat. Rekapitulace pojmů. Úlohy zpracování dat. Proč vzniká problém zpracování dat V praktickém životě je často zapotřebí evidovat údaje o nějaké skutečnosti. o skupině lidí (zaměstnanců, studentů, členů sportovního oddílu ap.),

garry
Télécharger la présentation

Teorie zpracování dat

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Teorie zpracování dat Rekapitulace pojmů

  2. Úlohy zpracování dat • Proč vzniká problém zpracování dat V praktickém životě je často zapotřebí evidovat údaje o nějaké skutečnosti. • o skupině lidí (zaměstnanců, studentů, členů sportovního oddílu ap.), • o zvířatech nebo rostlinách (evidence ZOO, botanické zahrady ap.), • o množině věcí (knihy ve veřejné knihovně, inventář firmy, materiálu na skladě ap.) • o množině jevů (počasí, provedených lékařských výkonech ap.) Zpracováním dat nazýváme evidování a zpracování velkého množství údajů o velkém množství objektů.

  3. Úlohy zpracování dat • Proč vzniká problém zpracování dat V praktickém životě je často zapotřebí evidovat údaje o nějaké skutečnosti. • o skupině lidí (zaměstnanců, studentů, členů sportovního oddílu ap.), • o zvířatech nebo rostlinách (evidence ZOO, botanické zahrady ap.), • o množině věcí (knihy ve veřejné knihovně, inventář firmy, materiálu na skladě ap.) • o množině jevů (počasí, provedených lékařských výkonech ap.) Zpracováním dat nazýváme evidování a zpracování velkého množství údajů o velkém množství objektů.

  4. Úlohy zpracování dat Shrnutí pojmů Daty nazýváme údaje získané měřením, pozorováním nebo jen pouhým zaznamenáním z reálné skutečnosti. Informace jsousmysluplné interpretace dat a vztahů mezi nimi. Zpracováním dat nebo také hromadným zpracováním dat nazýváme zpracování velkého množství údajů (obvykle desítky až stovky) o velkém množství objektů (obvykle od desítek po miliony i víc). Objektem nazýváme člověka, zvíře, věc nebo jev reálného světa, pokud se tito stali předmětem našeho zájmu z hlediska evidence. Objekt je popisován množinou svých vlastností. Objekty mají velké množství vlastností, ovšem z hlediska evidence potřebujeme sledovat jen některé z nich. Atributem nazveme údaj o objektu, který nás zajímá z hlediska evidence. Typem objektu budeme rozumět název množiny objektů a seznam jejich sledovaných atributů: Jméno-typu-objektu (atribut1, atribut2, …, atributn)

  5. Úlohy zpracování dat • Shrnutí pojmů • Vést evidenci o objektech znamená • zaznamenat vhodně organizované údaje na nějaké médium • provádět změny údajů při změně evidované reality • provádět výběry informací podle různých kritérií • odvozovat a počítat z uložených údajů další • třídit údaje dle různých kritérií • zaznamenávat vztahy mezi údaji o objektech různých druhů • o všech údajích zaznamenaných i odvozených vydávat informace ve vhodné • grafické úpravě • Informačním systémem obecně nazýváme organizaci údajů vhodnou pro systémové zpracování dat: pro jejich sběr, uložení a uchování, zpracování, vyhledávání a vydávání informací o nich, to vše pro účely rozhodování.

  6. Agendové zpracování dat • Problémy agendového zpracování • Redundance: některé informace ve více souborech opakují, jsou redundandní. Redundance je zdrojem mnoha dalších problémů • Konzistence: vzájemná shoda údajů. Postupem času - vlivem nedostatečné kontroly v programechse stejné hodnoty na různých místech v datových souborech, začnou rozcházet. • Integrita:data aktuální, odrážejí skutečnost z reálného světa. • Problémem tedy je zabezpečit, aby chybou či nedůsledností uživatele nebyla porušena integrita a konzistence dat. • Obtížná dosažitelnost dat: aplikační programy pro konkrétní požadavky;pro nový požadavek nutno napsat nový aplikační program - bez pomoci programátora nelze. • Izolovanost dat - data roztroušena v různých souborech, soubory mohou být různě organizovány, data různě formátována. To komplikuje tvorbu nových aplikačních programů a možnost realizovat vazby mezi datovými strukturami.

  7. Agendové zpracování dat • Problémy agendového zpracování • Současný přístup více uživatelů: větší systémy vyžadují současný přístup k datům více uživatelů. Pak je nutné, aby programy vzájemně spolupracovaly, jejich činnosti byly koordinovány. • Ochrana proti zneužití:při zpracování důvěrných či tajných dat není přípustné, aby měl kdokoliv přístup ke všem informacím. Při klasickém zpracování však musí mít programátor aplikačních programů k dispozici tolik podrobností, že to ochranu dat prakticky znemožňuje.

  8. Databázové zpracování dat • Základní pojmy databázového zpracování Entita - objekt • celá posloupnost položek popisuje objekt. Taková struktura položek, která má ucelený význam (zachycuje všechny potřebné údaje o sledovaném objektu) se nazývá záznamem (větou, recordem). Je to obvykle skupinová položka. Množina entit – množina objektů – datový soubor – obsah tabulky • množinu záznamů stejného typu, zaznamenávající ucelenou informaci o množině sledovaných objektů a uloženou na paměťovém médiu, nazýváme datovým souborem. Množiny záznamů si můžeme snadno představit ve tvaru tabulky, kde každý objekt je popsán jedním řádkem a každý atribut objektu je v jednom sloupci. Databáze • Množinu datových souborů, uchovávajících data o nějakém uceleném úseku reality, nazýváme databází.

  9. Databázové zpracování dat • Základní pojmy databázového zpracování Systém řízení báze dat - SŘBD • programový systém (prázdný, bez datových souborů a bez aplikačních programů), umožňující definování datových struktur a datových souborů, řešící fyzické uložení dat ve vnější paměti počítače, umožňující manipulaci s daty a formátování vstupních i výstupních informací, nazýváme systémem řízení báze dat. Aplikační úloha • Aplikační úlohou nad SŘBD nazýváme konkrétní program napsaný pomocí programových prostředků použitého SŘBD nad konkrétní databází, pro tuto úlohu vytvořenou.

  10. Databázové zpracování dat • Základní pojmy databázového zpracování Informační systém • Aplikační úlohy nad společnou databází tvoří ucelený systém, nazývaný databázovým nebo informačním systémem (dále jen IS) nad použitým SŘBD. • V tomto pojetí tedy informačním systémem rozumíme celek, řešící rozsáhlejší oblast aplikační, naprogramovaný v jednom SŘBD s vhodně navrženými datovými strukturami tak, aby všechny aplikační úlohy k nim měly optimální přístup. Řeší uložení, uchování, zpracování a vyhledávání informací a umožňuje jejich formátování do uživatelsky přívětivého tvaru.

  11. Databázové zpracování dat • Paradigma databázové technologie • Definování datových typů a operací nad daty není vše, čím se liší databázová technologie od klasického programování. • Nejpodstatnější rozdíl, základní princip či tzv. paradigma databázové technologie je oddělení datových struktur od programů • Tuto vlastnost zabezpečuje v SŘBD možnost definovat datové a programové struktury samostatně a nezávisle na sobě. Struktury datových souborů jsou uloženy samostatně nebo jsou součástí datových souborů. Programy s nimi pracují tak, že si načtou strukturu dat a pak s datovým souborem mohou provádět potřebné operace. Při změně datové struktury není nutné měnit programy, při změně programů není nutné měnit datové struktury.

  12. Databázové zpracování dat • Paradigma databázové technologie Pascal: Program Evidence_zamestnancu; var Zamestnanec: record of jmeno: string [1..20]; adresa:string [1..50]; funkce:string [1..10]; plat: integer end; Begin ... End. program data deklarace

  13. Databázové zpracování dat • Paradigma databázové technologie SŘBD: CREATE TABLE Zamestnanec (jmeno CHAR(20), adresa CHAR(50), funkce CHAR(10), plat NUMBER(8,2)); program Zamestnanec deklarace use Zamestnanec data

  14. 2.2.Entity, atributy, vztahy, integritní omezení • Základní pojmy Entitou rozumíme libovolnou existující osobu, věc či jev (objekt) reálného světa. Entita musí být rozlišitelná od ostatních entit. Atribut je charakteristika, vlastnost entity, údaj o objektu. Atribut přiřadí každé entitě z množiny entit hodnotu z nějaké neprázdné množiny hodnot, nazvané doména atributu (obor hodnot atributu). Je zadán svým názvem (identifikátorem) a datovým typem. Typem entity nazýváme množinu objektů stejného typu, charakterizovaných pomocí názvu typu a jeho seznamu jeho vlastností - atributů. Jednotlivé entity pak nazýváme také výskyty nebo instancemi objektů entitního typu. Klíčový atribut je jeden nebo více atributů, které jednoznačně určují entitu v množině entit; Atributy patřící ke klíči nazýváme primárními, ostatní sekundárními.

  15. Entity, atributy, vztahy, integritní omezení • Základní pojmy Integritní omezení jsou další omezující podmínky na příslušnost k entitám, hodnoty atributů, entit, definování vazeb nebo další. Datový soubor (=množina entit) je zobrazován jako tabulka, ta má svůj název (= název entity) a seznam sloupců; každý sloupec má název (= název atributu) a datový typ. Každá entita je znázorněna v tabulce jedním řádkem, každý typ atributu je definován jedním sloupcem, hodnota atributu dané entity je v odpovídajícím řádku a sloupci tabulky.

  16. Entity, atributy, vztahy, integritní omezení • Vztahy entit Vazební entita zaznamenává formálně vztah mezi entitami. Vazba bez informace - obsahuje jako atributy pouze typy entit vstupující. s informací - obsahuje i další atributy, zaznamenávající vlastnosti vazby, které nejsou mezi atributy jednotlivých entit. Příklad: UCI (Ucitel, Student) UCI (Ucitel, Student, predmet) Dělení vztahů podle počtu entit, vstupujících do vztahu • vazba binární – mezi dvěma typy entit typ (kardinalita) vazby 1:1 1:N M:N

  17. Entity, atributy, vztahy, integritní omezení • Vztahy entit Vazební entita zaznamenává formálně vztah mezi entitami. Vazba bez informace - obsahuje jako atributy pouze typy entit vstupující. s informací - obsahuje i další atributy, zaznamenávající vlastnosti vazby, které nejsou mezi atributy jednotlivých entit. Příklad: UCI (Ucitel, Student) UCI (Ucitel, Student, predmet) Dělení vztahů podle počtu entit, vstupujících do vztahu • vazba binární – mezi dvěma typy entit typ (kardinalita) vazby 1:1 1:N M:N

  18. Entity, atributy, vztahy, integritní omezení Příklad Kardinalita 1:1 vztah "je vedoucím katedry" mezi množinami entit E1 = Zaměstanec VŠ a E2 = Katedra VŠ zapíšeme:VEDOUCI_KAT(Zamestnanec, Katedra) Kardinalita 1:M vztah "je členem katedry" mezi entitami Zaměstnanci a Katedry zapíšeme: ČLEN_KAT(Zamestnanec, Katedra) Kardinalita M:N, vazba s informací (cena se týká výrobku konkrétní firmy) vztah V je "Firma vyrábí Výrobek" E1 je soubor Firem, E2 je soubor Výrobků, zapíšeme: VYRABI(Firma, Vyrobek, cena)

  19. Entity, atributy, vztahy, integritní omezení • Vazbaunární - mezi entitami stejného typu 1:1 1:N M:N Příklad:E1 je soubor zaměstnanců Vztah mezi E1 a E1 "je vedoucím zaměstnance" typu 1:N , zapíšeme: VEDOUCI (Zam, Zam) • Vazban-ární - mezi n typy entit 1:1:1 1:N:1 . . . M:N:K Příklad:E1 je soubor učitelů, E2 je soubor předmětů, E3 je soubor tříd Binární vztahy mezi E1, E2, E3: V1 : "učitel učí předměty" typu M:N V2 : "třída má předepsány předměty" typu M:N V3 : "učitel učí ve třídě“ typu M:N Z uvedené trojice vazeb V1 - V3 nevyplývá, který učitel učí který předmět ve které třídě. To musíme popsat novou vazbou mezi trojicí entit V4 : "Učitel učí Předmět ve Třídě“ typu M:N:K zapíšeme: UČÍ(Ucitel, Predmět, Trida)

  20. 2.4.Databázové jazyky, nezávislost dat • Databázové jazyky 1. Příkazy jazyka pro definici dat (JDD): • seznam datových typů a datových struktur pro definici typu atributu, • definice, modifikace a rušení typu entity, • definice, modifikace a rušení typu vazby. • Příkazy jazyka pro manipulaci s daty (JMD): • manipulace s atributy (ukládání a kontroly, ...) • manipulace s entitami (ukládání, modifikace, rušení, výběry) • manipulace s množinami entit (sjednocení, rozdíl, ...) • manipulace s vazbami entit

  21. 2.4.Databázové jazyky, nezávislost dat • Databázové jazyky 3. Programovací jazyk pro zápis algoritmu • v hostitelském jazyce (Cobol, C, Pascal, ...), pak jsou výše uvedené JDD a JDM vytvořeny jako procedury v hostitelském jazyce a celý SŘBD tvoří nadstavbu tohoto jazyka; • vlastní jazyk SŘBD, obsahující (mimo příkazy JDD a JMD) programové struktury pro záznam algoritmů - příkazy pro větvení a cykly, pro komunikaci s uživatelem, pro formátování vstupů a výstupů, pro tvorbu menu a oken ap. 4. Dotazovací jazyk, který podle typu dělíme do dvou skupin: • procedurální, který popisuje způsob, jak data v databázi hledat, zapisuje algoritmy pro vyhledání informací • deskriptivní, který zapisuje jen, co v databázi hledat pomocí vlastností hledaných objektů.

  22. 2.4.Databázové jazyky, nezávislost dat • Nezávislost dat • fyzická nezávislost dat umožňuje změnit fyzickou úroveň popisu dat, aniž by se musely měnit aplikační programy; někdy se touto změnou způsobu uložení dat na disku mění potřebná kapacita pro uložení souborů, někdy se toho využívá pro zvětšení výkonu celého systému. • logická nezávislost dat umožňuje změnit konceptuální úroveň popisu dat, aniž by bylo třeba přepisovat aplikační programy. Při provozu DBS se často vyskytují dodatečné požadavky na změny či doplňky v logické struktuře dat, ty se musí promítnout i do databázového schématu.

  23. Konceptuální datový model Prostředky pro zápis konceptuálního modelu 1. Entity-Relationship Diagram … ERD 2. Lineární textový zápis Tentity ( klíč, atrib1, atrib2, . . . ) TVZTAHU( Tentity1, Tentity2, . . . ) 3. Integritní omezení – graficky, v datovém slovníku, textem 4. Datový slovník 5. Výskytový diagram - pomocný

  24. Konceptuální datový model • IO týkající se atributů • 1. Datový slovník = tabulka obsahující pro každý typ entity • identifikátor (název) atributu • datový typ atributu, jeho doména, formát vnější reprezentace • příznak, zda atribut patří ke klíči • přípustnost NULL / zadání hodnoty je povinné • formou poznámky další IO plynoucí z reality • zda bude atribut indexován, UNIQUE, DUPLIC • množina operací, které lze nad jeho hodnotami provádět • význam atributu

  25. Konceptuální datový model 4. zobrazení kardinality binárních vztahů

  26. Konceptuální datový model • IO týkající se vlastností vztahů mezi entitami • 5. Povinnost členství ve vztahu • povinné (obligatorní) • nepovinné (fakultativní)

  27. Konceptuální datový model 7. Dekompozice vztahu M:N

  28. Konceptuální datový model • Výsledné konceptuální schéma struktury databáze • lineární zápis seznamu typů entit a jejich atributů • úplný grafický tvar ERD (2 úrovně) • 1. konceptuální schéma modelující realitu • 2. transformovaný ERD pro databázové schéma • úplné tabulky atributů – datový slovník • seznam dalších IO týkajících se entit a vztahů

  29. Sekvenční soubory Nový záznam se uloží na konec souboru, k tomu stačí jeden přenos záznamu z paměti na disk. Vyhledání záznamu sekvenční - každý záznam postupně načíst a otestovat, zda vyhovuje podmínce. Pokud ano, je nalezen, pokud ne, načítá se další záznam v pořadí. Vyhledávání sekvenční potřebuje průměrně n/2 porovnání nebo n/(2*B) přístupů na disk (B je blokovací faktor = počet záznamů v bloku) Modifikace záznamu znamená tyto operace: nalézt záznam, načíst, opravit a na stejnou adresu znovu zapsat. Zrušení záznamu u sekvenčních souborů se obvykle provádí ne vymazáním záznamu, ale pouze označením jeho neplatnosti. Mají-li věty klíče, musí se prohledat celý soubor a zkontrolovat jedinečnost klíče vkládané nebo modifikované věty.

  30. Sekvenční soubory Přirozená nejjednodušší organizace záznamů v souboru

  31. Setříděné sekvenční soubory Sekvenční soubor je setříděný podle vyhledávacího klíče Operace SELECT - podle klíče mnohem rychleji (např. metodou půlení intervalu nebo některou její modifikací; počet přenosů pro binární hledání je průměrně log2 n. INSERT- na konec souboru, znovu soubor přetřídit UPDATE- vyhledávacího klíče: vyhledat, zapsat, přetřídit - jiné hodnoty: vyhledání, zápis záznamu zpět DELETE- vyhledání, označení neplatnosti

  32. Setříděné sekvenční soubory

  33. Zřetězené organizace Sekvenční soubor, záznamy navíc opatřeny ukazatelem pro zápis zřetězení dle třídicího klíče. SELECT – seznam se prohledává postupně pomocí ukazatelů a testuje, zda záznam vyhovuje vyhledávací podmínce. Častější přechody mezi bloky souboru a proto více přenosů mezi diskem a pamětí. Proto vhodné jen u krátkých seznamů. INSERT – záznam se fyzicky zapíše kamkoliv, pak se v seznamu vyhledají sousední záznamy dle udržovaného pořadí a přesměrují se ukazatele předchůdce a následníka DELETE – vyhledá se umístění záznamu v seznamu a přesměrují se ukazatele předchůdce a následníka UPDATE - jen vyhledání záznamu a po modifikaci jeho zápis zpět. V případě modifikace položek, které mají vliv na uspořádání seznamu, se provede modifikace jako DELETE a INSERT.

  34. Zřetězené organizace

  35. Soubory s přímým adresováním Operace SELECT - podle klíčenejrychlejší, odtud rychlé i ostatní operace: z klíče se vypočte adresa skupiny záznamů, odtud se prohledá zřetězený seznam až po hledaný záznam. - podle neklíčové hodnoty naopak delší, sekvenční procházení i prázdných míst a zřetězené seznamy. INSERT - výpočet adresy skupiny záznamů, tam se prohledají záznamy (pro kontrolu jednoznačnosti klíče), nový záznam se uloží na první volné místo ve skupině a přesměrují se ukazatele. DELETE- vyhledání, nastavení neplatnosti záznamu, přesměrování ukazat. UPDATE- vyhledání, zápis zpět; při modifikaci klíče se provede nejprve zrušení a pak nový záznam. Setřídění záznamů znamená komplikaci. Varianta i pro vyhledání záznamů nejen podle klíče, ale podle více položek. Růst počtu záznamů – reorganizace hašovacího mechanizmu

  36. Soubory s přímým adresováním Princip - jednoznačný klíč záznamu  číslo  adresa záznamu. Pak jediným přístupem na disk se načte nebo zapíše záznam.

  37. Indexové a indexované soubory Sekvenční soubor (indexovaný) + pomocné tabulky (indexové) • index obsahuje hodnotu (vyhledávacího) klíče (indexu) a adresu (recno) záznamu • indexový soubor je setříděn dle klíče -> binární vyhledání, přečtení adresy v datovém souboru • jediným přístupem do dat se načte hledaný datový záznam • často je indexový soubor dost malý - celý v operační paměti • jiné zdůvodnění indexování - ukazatele nejsou součástí záznamů zřetězené organizace), ale jsou uloženy zvlášť v indexovém souboru • indexem nemusí být primární klíč (primární indexování), ale kterákoliv položka souboru nebo seznam několika položek (sekundární indexování)

  38. Indexové a indexované soubory Operace INSERT - vložení záznamu do datového souboru (nakonec) + záznam do indexu + setřídění indexového souboru SELECT- dle klíčevyhledání klíče binárně v indexu,přečtení adresy v datovém souboru, 1 přenos záznamu, dle neindexovaného atributu sekvenčně UPDATE - vyhledání záznamu + modifikace + uložení zpět, při změně kterékoliv indexované hodnoty reindexace příslušného indexového souboru DELETE - vyhledání záznamu + označení neplatnosti v datovém i indexovém souboru

  39. Indexové a indexované soubory Primární index datový indexovaný soubor indexový soubor

  40. Hierarchické indexování • základem sekvenční soubor + indexový (úrovně 0) • k indexovému souboru vytvořen opět indexový soubor (1) • opakováním hierarchie indexových souborů, • hledá se od nejvyšší úrovně, binárně jen v části indexu, proto je průměrný počet procházených záznamů nižší než u index0.

  41. B – stromy (balanced) Pro uspořádání úrovní indexů se používají tzv. B-stromy: • data sekvenční, indexování hierarchické • indexy všech úrovní „rozsekány“ do bloků stejné délky – tvoří strom • v indexových blocích volná místa pro doplňování záznamů • délky všech cest (~počtů přenosů) od kořene stromu do libovolného listu jsou stejné, rovny hloubce stromu

  42. Hierarchické indexování

  43. B – stromy SELECT - najde se cesta od kořene k listu s hledaným záznamem (pokud existuje),v každém uzlu se najde následující větev porovnáním hledané hodnoty s klíči v uzlu. Klíče v uzlu mohou udávat minimální/maximální hodnotu klíče, která je příslušnou větví dosažitelná. INSERT - najde se příslušný blok, mohou nastat dvě možnosti: buď v nalezeném bloku je prázdné místo, takže se může přidat vkládaný záznam, nebo je nalezený blok plný a musí se vytvořit nový blok; z původního plného bloku se vytvoří dva bloky, do vyšší úrovně se nový blok zaznamená, opět dva případy –tak až do kořene stromu a případně se musí kořen rozdvojit a přidat nový kořen UPDATE - vyhledávání + modifikace + uložení zpět, při modifikaci klíče se provede DELETE a INSERT. DELETE - opačně než vkládání: při zrušení posledního záznamu bloku se zruší i odkaz na něj, totéž se promítne do vyšších úrovní, případně se v krajním případě může hierarchie indexů o jednu úroveň snížit.

  44. Indexování pomocí binární matice Pro sekundární indexování, jiný způsob implementace • poloha záznamu se zaznamenává polohou jedničkového bitu v posloupnosti bitů, každý bit odpovídá jednomu záznamu, • pro každou hodnotu sekundárního atributu je zaznamenána nová posloupnost, • metoda vhodná pro atributy nabývající jen několika různých hodnot, pro neměnící se sekundární atributy, pro přidávané záznamy na konec souboru, • snadná realizace kombinovaných dotazů pomocí logických operátorů negace, konjunkce a disjunkce.

  45. atrib hodn pořadí záznamů 1 2 3 4 5 6 7 8 9 10 11 12 ... proc 10 0 1 0 1 0 1 0 0 0 0 0 1 20 1 0 0 0 0 0 1 1 0 0 0 0 30 0 0 1 0 1 0 0 0 1 1 1 0 plat 2000 0 0 0 0 1 0 0 0 0 0 0 0 3000 1 0 0 0 0 1 0 0 1 1 0 0 4000 0 1 1 1 0 0 0 0 0 0 1 1 5000 0 0 0 0 1 0 1 1 0 0 0 0 Indexování pomocí binární matice proc=30  plat=4000 1 1

  46. Soubory s proměnnou délkou záznamu 1. pseudoproměnná délka záznamu • pole se známým počtem opakování: rozložení na jednotlivé položky • pole s neznámým počtem opakování: horní odhad počtu výskytů prvků pole a převedení na předcházející případ • místo opakující se položky se uvede odkaz na seznam jejích prvků, ten může být součástí jiného souboru • pro záznamy s alternativními skupinami položek buď se proměnná část překrývá a záznam zabírá velikost nejdelší z proměnných částí, v záznamu se musí rozlišovat typ proměnné části, implementace složitější • nebo se všechny rozdílné atributy zaznamenají za sebou a pro každý typ se vyplňují jen odpovídající atributy; implementace jednodušší, záznam obsahuje vždy řadu prázdných položek.

  47. Soubory s proměnnou délkou záznamu pseudoproměnná délka záznamu realita – multipoložka s neznámým počtem opakování realizace pomocí pevné délky

  48. Soubory s proměnnou délkou záznamu 2. proměnná délka v sekvenčním souboru nutno rozlišit jednotlivé záznamy: • systém oddělovačů: záznamy jsou odděleny oddělovačem, uvnitř záznamu se atributy oddělují jiným typem oddělovače, opakující se položky dalším typem ap. • zaznamenání délky aktuálního záznamu na začátku záznamu (pro jednosměrný průchod souborem), či na začátku i konci záznamu (pro obousměrný průchod souborem)

  49. RELAČNÍ DATOVÝ MODEL 5.1. Základní pojmy RDM Definice 5.1. Relační schéma R je výraz tvaru R(A, f), kde R je jméno schématu, A = {A1, A2,..., An} je konečná množina jmen atributů, f je zobrazení přiřazující každému jménu atributu Ai neprázdnou množinu, kterou nazýváme doménou atributu Di, tedy f(Ai) = Di. Definice 5.2. Relace R s relačním schématem R je konečná podmnožina kartézského součinu domén Di, příslušejících jednotlivým atributům Ai, tedy R  D1 x D2 x ...x Dn. Číslo n nazýváme stupněm relace, o relaci R říkáme, že je typu R nebo že je instancí relačního schématu R.

  50. RELAČNÍ DATOVÝ MODELdefinice pojmů Definice Schéma relační databáze je konečná množina relačních schémat R1(A1,f1), R2(A2,f2),. . . , Rm(Am,fm). Definice Relační databází v daném časovém okamžiku je konečná množina relací R1, R2, ..., Rm, tzv. aktuálních relací, kde Ri je typu Ri.

More Related