Klasické (statické) metody organizace souborů

Slides:



Advertisements
Podobné prezentace
OZD: Hašování RNDr. Michal Žemlička.
Advertisements

Zpracování informací a znalostí Datové struktury a algoritmy pro vyhledávání informací Doc. RNDr. Jan Rauch, CSc. Katedra informačního a znalostního.
Nový přístup k aplikacím Vema
Tabulky v MS ACCESS Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jiří Novák.
Pevné disky Kateřina Trčková 4.I.
Základy databázových systémů
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Tvorba stránek  komu jsou stránky určeny  grafická úprava stránek  obsah  motivy vzhledu stránky
Databáze.
Vyhodnocování dotazů slajdy k LS I155 Jaroslav Pokorný.
DB1 – 9. cvičení Optimalizace dotazu Konkurenční přístup a deadlock Indexace Transakce.
Semestrální práce KIV/PT Martin Kales Hana Hůlová.
SQL – tříhodnotová logika
Fyzická implementace DBS
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Principy překladačů Mezikód Jakub Yaghob.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
Skip-List je datová struktura, která může být použita jako náhrada za vyvážené stromy. představují pravděpodobnostní alternativu k vyváženým stromům (struktura.
Úvod do databází Databáze.
1IT Relační datový model
Databáze Jiří Kalousek.
1 Vyhledávání Principy vyhledávání Klasifikace klíče:  Interní klíč – je součástí prohlížených záznamů  Externí klíč – není jeho součástí, je jím např.
ORGANIZACE DATOVÉ STRUKTURY SOUBOR
Praha6.cz Nové trendy v e-publishingu Statické stránky, mapa stránek, menu a fulltextové vyhledávání.
Diskový oddíl Souborový systém RAID 9/2012.
1IT S ÍŤOVÝ DATOVÝ MODEL Ing. Jiří Šilhán. S ÍŤOVÝ DATOVÝ MODEL Je historicky nejstarším datovým modelem. Jeho základem jsou vzájemně propojené množiny.
Organizace a zpracování dat I
B-strom je dynamická indexová struktura.
Informatika pro ekonomy II přednáška 3
D ATOVÉ MODELY Ing. Jiří Šilhán. D ATABÁZOVÉ SYSTÉMY Patří vedle textových editorů a tabulkových kalkulátorů k nejrozšířenějším představitelům programového.
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
DBI007: Fyzické nosiče souborů RNDr. Michal Žemlička.
Algoritmy a programovací techniky
Relační databáze.
Vyváženost SOS Vyvážené SOS –Omezení délky vyhledávací cesty ve struktuře počtem logických stránek M O(f(M)): O(M), O(log M), O(1), … Složitost (počet.
Informatika pro ekonomy II přednáška 10
Databázové systémy Přednáška č. 4 Proces návrhu databáze.
Databázové systémy I Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Datové typy a struktury
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Databázové modelování
2 Petr Žitný znalosti.vema.cz 3 Báze znalostí Nová služba zákazníkům ▸Báze naplněná informacemi, ke které mají uživatelé přímý přístup Základní cíl ▸Poskytovat.
Databázové systémy Informatika pro ekonomy, př. 18.
Vnitřní (operační paměť)
Datovýsklad Datový sklad V budoucích službách státního archivu.
Real time jádro operačního systému Lukáš Hamáček.
Základy operačních systémů
Databázové systémy Přednáška č. 5 Datové typy a Fyzická organizace dat.
Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Adresářová struktura Střední odborná škola Otrokovice
Vícerozměrný přístup pro indexování XML dat
MS ACCESS Databáze pro každého. Základní pojmy  Data  určitá fakta, vztahující se k objektům z reálného světa, uložená v paměti počítače  Informace.
Kontakty slajdy: ftp://ulita.ms.mff.cuni.cz/predn/POS.
DATABÁZE.
PROGRAMOVÁNÍ 3ITA,3ITB Jaroslav Burdys Hlavní zdroj:
VIRTUÁLNÍ PAMĚŤ EP1. Kryštof Supek. Umožňuje předložit běžícímu procesu adresní prostor paměti, který je větší, než je fyzicky připojená paměť RAM Procesor.
Databáze ● úložiště dat s definovaným přístupem ● typy struktury – strom, sekvence, tabulka ● sestává z uspořádaných záznamů ● databáze – struktura – záznam.
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_ICT_04 ORGANIZACE DAT V PC Zpracovala: Mgr. Květoslava Štikovcová Číslo.
UNIX Systém souborů © Milan Keršláger
Datové typy MS Access (3). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola pro tělesně.
OPERAČNÍ SYSTÉMY Část 4 – správa souborů
Souborové systémy 2 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Informatika pro ekonomy přednáška 8
Správa paměti.
Optimalizace SQL dotazů
Správa disků
Paměť.
Systém souborů 1.
Transkript prezentace:

Klasické (statické) metody organizace souborů Hromada Sekvenční soubor Index-sekvenční soubor Indexovaný soubor Soubor s přímým přístupem

Hromada Nehomogenní soubor Záznamy proměnné délky (záznamy proměnné struktury – uvádí se pak i jména či kódy atributů) Sekvenční uložení ve vymezeném adresovém prostoru Složitost vyhledání záznamu O(N)

Sekvenční soubor Homogenní soubor Neuspořádaný sekvenční soubor Sekvenční přístup READ/WRITE Neuspořádaný sekvenční soubor Organizovaný jako hromada Složitost vyhledání záznamu O(N) Složitost vyhledání záznamu při blokovacím faktoru b O(N/b)

Uspořádaný sekvenční soubor Podle (vyhledávacího) klíče Aktualizace primárního souboru Soubor aktualizací / soubor transakcí Neuspořádaný sekvenční soubor Reorganizace Setřídění souboru aktualizací Zatřídění s primárním souborem  nový primární soubor

Vyhledání záznamu v sekvenčním souboru Nesetříděném O(N) Setříděném O(log2 N) TF = log2 (N / b)(s + r + btt) Přepsání záznamu (update) TU = TF + 2r nemění-li se klíč TU  TI mění-li se klíč

Index-sekvenční soubor Kombinace Sekvenčního (dávkového) přístupu a Přímého přístupu k záznamům Části: Primární soubor Index Oblast přetečení

Aplikace index-sekvenčního souboru Účetní systém kreditních karet Individuální přístup při manipulaci s účtem Dávkový přístup pro generování sumářů, měsíčních vyúčtování apod. Studentský systém Záznamy o výsledku zkoušky Tisk zkušební zprávy

Index index-sekvenčního souboru Hierarchie: Primární soubor 1. Úroveň indexu … k-tá úroveň indexu (master index) úroveň 2 A X } index A F X Z 1 A F X Z primární soubor

Index-sekvenční soubor Apokryfy … Babička Bratrstvo Divá Bára Dobrý člověk 10.1 Karla Matka Mezi proudy Návrat Neklid 10.2 Přerod Pustina Apokryfy 3 Babička 4 Dobrý člověk 5 Mezi proudy 6 Návrat 7 Pustina 8 … Apokryfy 1 Návrat 2 … Oblast přetečení 2. úroveň indexů F.L.Věk 10.3 Poklad 1. úroveň indexů primární soubor

Index-sekvenční soubor - ISAM Přímá podpora index-sekvenčních souborů v run-time COBOLU Úroveň Umístění 1 stopa Index stop na 0. stopě každého válce určuje pozice v primárním souboru 2 válec index válců (na počátku oblasti souboru) určuje lokality s indexy stop 3 svazek master index po OPEN v RAM určuje lokality s indexy válců TF = 2(s + r + btt) + r + btt = 2s + 3r + 3btt

ISAM - pokračování Oblast přetečení: Statický soubor na každém válci společná pro celý soubor Statický soubor nutná reorganizace: po naplnění přetokové oblasti periodicky

ISAM – struktura indexu Cylindry i stopy číslovány od 0 Index stop – na 0. stopě cylindru 1 150 2 200 3 400 … stopa největší klíč na stopě Index cylindrů - umístěn kdekoliv jinde 13 1650 14 1750 15 2000 … cylindr největší klíč na cylindru

ISAM – struktura indexu (2) Záznamy v blocích (stopách) setříděny Hlavní (master) index pro velké soubory na více discích ukazuje na stopy indexu cylindrů Oblast přetečení vytlačen největší klíč na stopě aktualizace indexu

ISAM – index s oblastí přetečení index stop 1 120 2 200 3 250 … N Ov N Ov N primární soubor 130 145 150 … 180 190 200 Insert(185) stopa pro přetečení 1 120 2 190 10 200 3 250 … 130 145 150 … 180 185 190

ISAM – index s oblastí přetečení (2) Insert(186) nemění se 1 120 2 186 10 200 3 250 … 130 145 150 … 180 185 186 Insert(194) oblast přetečení # 200 10 3 190 1 194 … Řetězec v oblasti přetečení

Index-sekvenční soubor - kapsy Implementace index-sekvenčních souborů pomocí kapes Kapsa (bucket) je množina bloků organizovaných jako spojový seznam Indexují se kapsy 00000 11111 Babka Codr Couf Colt Cuc 11110 Kolář Kotrč Macák Maloň 00 00 Babka 10 Kolář 20 10 20 záznamy ukazatel bitová mapa

Index-sekvenční soubor – kapsy (2) Aktualizace: D(Codr), I(Dašek), I(Cíp), I(Novák), I(Alfons) 00 Babka 10 Kolář 20 00000 Alfons 11111 Babka Dašek Couf Colt Cuc 11110 Kolář Kotrč Macák Maloň Novák 10000 Cíp 00 10 20 30 Vhodné pro záznamy proměnné délky

Index-sekvenční soubor - typy Záznamy indexů a primárního souboru jsou různých typů Index nejvyšší úrovně Master index Pro otevřený soubor uchováván v OP

Index-sekvenční soubor - úrovně Maximální počet úrovní, x = logp N/b p =  B / (V + P)  B délka fyzické stránky V průměrná délka klíče P velikost ukazatele Počet úrovní ~ počet přístupů na disk Minimalizace počtu přístupů na disk Prakticky pouze minimalizací B, velikostí bloku Omezeno kapacitou stopy

Výhody index-sekvenčního souboru Rychlý přístup dle primárního klíče Zachovává dobré vlastnosti setříděného sekvenčního souboru

Nevýhody index-sekvenčního souboru Rychlé vyhledávání jen pro primární klíč Problémy s dynamikou primárního souboru Oblast přetečení Vede ke zpomalení přístupu k datům Bloky inicializovány jako ne zcela zaplněné Větší nároky na prostor Případná potřeba reorganizací

Návrh index-sekvenčního souboru Uspořádání položek v seznamu Definice primárního klíče Analýza doplňování záznamů Počáteční naplnění stránek – max. 60% Prostor pro primární soubor, index a oblast přetečení Počet úrovní indexu Blokovací faktor primární oblasti, indexu

Index-sekvenční soubor - závěr Blokování zvyšuje účinnost Rychlý přímý přístup – košatý index Žádá se pouze sekvenční přístup Použít sekvenční soubor Nejsou třeba indexy Žádá se pouze přímý přístup Použít soubor s přímým přístupem Není třeba uspořádanost

Indexovaný soubor Někdy nazývaný invertovaný soubor Primární soubor + indexy pro různé vyhledávací klíče Přímý přístup prohledáváním tabulek Přímý přístup procházením hierarchické struktury Indexují se záznamy, ne bloky Primární soubor nemusí být setříděn V indexu se tentýž klíč může opakovat V 1. úrovni indexu odkazy sk na seznamy adres odpovídajících záznamů Indexy mohou/nemusí být setříděné

Vyhledávací klíč: Příjmení Indexovaný soubor Jirásek Němcová Světlá … Jirásek 4.1 4.3 5.2 Němcová 7.2 4.2 5.3 6.1 Světlá 5.1 0.1 Jirásek 1.1 Němcová 1.4 2.1 Světlá 3.1 2. úroveň indexů hlavní index 1. úroveň indexů Vyhledávací klíč: Příjmení primární soubor

Indexovaný soubor Počet úrovní indexu Analogicky jako v index-sekvenčním souboru x = logp N, p = B/(V+P) B délka fyzické stránky V průměrná délka klíče P velikost ukazatele

Indexovaný soubor Řešení dotazů na částečnou shodu Vytváření průniků seznamů adres (ukazatelů) primárních záznamů Netriviální při velkém objemu, tj. velká N malá aktuální doména A Kombinovaný index Současně dle více atributů (A,B,C)

Indexovaný soubor - implementace Nepřímé indexování: primární klíč sekundární klíč primární klíč se indexuje na sekundární klíč Možná reorganizace, restrukturalizace souboru bez ovlivnění indexu Vyšší režie dotazu

Bitová mapa Vhodná pro malou doménu hodnot Boolské dotazy se řeší logickými operacemi Bitové vektory lze vytvářet pro více atributů Obecnější Boolské dotazy A Pořadí záznamu v S  1 

Seznamy adres Odstraňují duplicity klíčů Primární soubor hodnoty Chemik 90 Mechanik 91 Referent 92 90 3 1.1 1.4 2.3 1 1.2 1.3 2.1 2.2 91 92 hodnoty kapsy s odkazy

Indexy v indexovaném souboru Statické Seznamy adres Bitové mapy B-stromy a jejich varianty Kombinované indexy …

Základní organizace souborů – Jeden vyhledávací klíč? + Indexovaný soubor Pouze sekvenční přístup? – Pouze přímý přístup? – + + Sekvenční organizace Přímá organizace Index-sekvenční

Porovnání statickým metod organizací souborů Cíl zpracování Jednotlivý záznam Množina záznamů soubor hromada nevhodná lze, ale zvláštní úsilí výborná neuspořádaný sekvenční vynikající uspořádaný sekvenční lze, ale velké úsilí index-sekvenční lze indexovaný přímý