Organizace a zpracování dat I



Podobné dokumenty
Organizace a zpracování dat I

Organizace a zpracování dat I

OZD. 2. ledna Logický (Objekty, atributy,...) objekty stejného typu.

Organizace a zpracování dat I (NDBI007) RNDr. Michal Žemlička, Ph.D.

PA152. Implementace databázových systémů

Kapitola 10: Diskové a souborové struktury. Klasifikace fyzických médií. Fyzická média

Disková pole (RAID) 1

Disková pole (RAID) 1

Server je v informatice obecné označení pro počítač, který poskytuje nějaké služby nebo počítačový program, který tyto služby realizuje.

Maturitní otázky z předmětu PROGRAMOVÁNÍ

04 - Databázové systémy

Technické informace. PA152,Implementace databázových systémů 4 / 25. Projekty. pary/pa152/ Pavel Rychlý

Přednáška. Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

pole Princip 1. Zvýšení rychlosti. 2. Zvýšení bezpečnosti uložených dat (proti ztrátě).

Operační systémy 1. Přednáška číslo Struktura odkládacích zařízení

Principy operačních systémů. Lekce 7: Souborový systém

Paměťový podsystém počítače

TÉMATICKÝ OKRUH Počítače, sítě a operační systémy

Operační systémy 2. Struktura odkládacích zařízení Přednáška číslo 10

Databáze I. 5. přednáška. Helena Palovská

1. Databázové systémy (MP leden 2010)

Ing. Igor Kopetschke TUL, NTI

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ

Datová úložiště. Zdroj: IBM

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Kapitola 11: Indexování a hešování. Základní představa

Přednáška. Správa paměti I. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

6. Fyzická (interní) úroveň databázového systému

Výukový materiál Hardware je zaměřený především na výuku principů práce hardwaru a dále uvádí konkrétní příklady použití.

Princip funkce počítače

Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje

Přednáška. Úložiště dat: HDD, SDD, RAID, DAS, NAS, SAN. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Systém souborů (file system, FS)

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Hardware. Ukládání dat, úložiště. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

6. Fyzická (interní) úroveň databázového systému

Systém adresace paměti

Paměť počítače. dočasná / trvalá. Parametry pamětí : kapacita ( udává kolik dat se do paměti vejde )

MARIE PACS S PACSem hezky od podlahy když se data sypou!

Číslo projektu: CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Zdeněk Dostál Ročník: 1. Hardware.

Operační systémy. Přednáška 7: Správa paměti I

Disková pole (RAID) 1

Souborové systémy a logická struktura dat (principy, porovnání, příklady).

Základní jednotka procvičování

Datové typy a struktury

Reprezentace dat v informačních systémech. Jaroslav Šmarda

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading)

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Zálohovací a archivační systémy

vyhledávací stromové struktury

Datové struktury 2: Rozptylovací tabulky

Přidělování paměti II Mgr. Josef Horálek

Aplikace. vliv na to, jakou mají strukturu i na to, jak pracné je je vyvinout. Bylo vypozorováno, že aplikace je možné rozdělit do skupin

EXTERNÍ PAMĚŤOVÁ MÉDIA

Kapitola 13: Transakce. Koncept transakce. ACID vlastnosti

Databázové systémy Tomáš Skopal

Diskové paměti nové pojmy a technologie

Externí paměti 1 Feromagnetické

DataDomain pod drobnohledem

Algoritmizace prostorových úloh

Identifikátor materiálu: ICT-1-09

Souborový systém (File System FS) Souborové systémy. Souborová fragmentace. Disková fragmentace. Organizace dat na pevném disku

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Struktura a architektura počítačů (BI-SAP) 10

Maturitní témata Školní rok: 2015/2016

Počítač jako elektronické, Číslicové zařízení

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIII Paměti konstant

Administrace OS Unix. filesystém UFS mount snapshot RAID

Osobní počítač. Zpracoval: ict Aktualizace:

Integrovaná střední škola, Sokolnice 496

B4B35OSY: Operační systémy

2.10 Vnější paměti. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Růst datových potřeb Pojem velkokapacitní se mění v čase Dříve několik MB, dnes stovky GB až TB

Paměti cache. Cache může být realizována softwarově nebo hardwarově.

Struktura a architektura počítačů (BI-SAP) 11

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

Počítačová sestava paměti, operační paměť RAM

Knihovna DataBoxLib TXV první vydání prosinec 2010 změny vyhrazeny

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

B4B35OSY: Operační systémy

POČÍTAČE A PROGRAMOVÁNÍ

8.2 Používání a tvorba databází

Databáze Bc. Veronika Tomsová

RELAČNÍ DATABÁZOVÉ SYSTÉMY

DUM č. 10 v sadě. 31. Inf-7 Technické vybavení počítačů

NAS 251 Seznámení s RAID

Stromové struktury v relační databázi

2.17 Archivace a komprimace dat

Datová centra a úložiště. Jaroslav G. Křemének g.j.kremenek@gmail.com

TGH07 - Chytré stromové datové struktury

Počítačové síťě (computer network) Realizují propojení mezi PC z důvodu sdílení SW (informací, programů) a HW(disky, tiskárny..)

Operační systémy 1. Přednáška číslo Souborové systémy

Příloha č.2 - Technická specifikace předmětu veřejné zakázky

Soubory a databáze. Soubor označuje množinu dat, která jsou kompletní k určitému zpracování a popisují vybrané vlastnosti reálných objektů

Inovace a zkvalitnění výuky prostřednictvím ICT Technické vybavení Paměťová média Ing. Jakab Barnabáš

I/O systém Vnější paměti. PB 169 Počítačové sítě a operační systémy

Opravy a prodej. Uživatelská příručka. Milan Hradecký.

Transkript:

DBI007 Organizace a zpracování dat I Složená úložiště, záznamy, soubory RNDr. Michal Žemlička, Ph.D.

Důležitá organizační připomenutí Zkoušku lze skládat, i když ještě nejsou splněny všechny podmínky pro zápočet. Zkouška je zapsána až ve chvíli, kdy je splněn i zápočet. Povinnosti je třeba mít splněné do léta v září nebudu.

Hierarchie pamětí počítače V počítačích najdeme mnoho různých pamětí: + Registry Vyrovnávací pamět procesoru pamět ova cache + Operační pamět Vyrovnávací pamět pro disky disková cache + Sekundání pamět (disky)

Hardware Magnetické pásky Optické disky Jukeboxy Magnetické disky Flash paměti RAID-y

Magnetická páska umožňuje sekvenční čtení i rychlé převíjení existují speciální zařízení pro kontrolu kvality záznamu aplikace: zálohování proudová data vzácněji přistupovaná rozsáhlá data (spolu s optickými disky) Dlouhodobé uchování dat (desítky let)

Magnetický disk pohled z boku osa povrchy hlavy

Hardware problémy Pohyblivá média mohou podléhat různým deformacím, a tak je třeba průběžně dolad ovat nastavení čtecích/záznamových částí. Tato média mohou být i mechanicky poškozena; musí se to umět zdetekovat, případně (v případě menšího poškození) i opravit.

Bloky možná implementace značka začátek bloku číslo bloku na stopě/pásce značka začátku dat vlastní data značka konce dat pomocné kódy na detekeci chyb a případné opravy značka konce bloku Samotné bloky mají mezi sebou mezery jednak aby se stihl blok zpracovat, než se bude číst další, jednak aby se případným nepřesným umístěním bloku nepřepsal blok sousední

Disková pole RAID Redundant Array of Inexpensive Disks Slouží ke zvýšení kapacity, rychlosti, nebo bezpečnosti disků. Navenek se chová jako jediná disková jednotka s pozměněnými vlastnostmi. Existuje celá řada různých uspořádání. Každé z nich vhodné pro jinou aplikaci.

RAID 0 schema A1 A2 B1 B2 C1 C2 D1 D2

RAID 0 Striping Data rozložena na více disků Není to klasický RAID nedochází k redundanci Při výpadku jediného disku můžeme přijít o veškerá data Zvyšuje výkon jak pro čtení, tak pro zápis Podporováno i velmi levnými řadiči

RAID 1 Zrcadlení A A B B C C D D

RAID 1 Mirroring Disky instalovány ve dvojicích. Vždy se zapisuje na oba disky v páru. Čtení se ralizuje tam, kde to jde rychleji. Při výpadku jediného disku jej stačí vyměnit a nakopírovat na něj data z jeho partnera. Může přežít i výpadek až n disků z 2n za předpokladu, že z každé dvojice vypadne nejvýše jeden.

RAID 0+1, 1+0 Kombinace principů RAID 0 a 1 pro alespoň 4 disky 0+1: stripe + mirror... levné souborové systémy 1+0: mirror + stripe... databáze podpora již u relativně levných a jednoduchých řadičů (0,1,0+1) dostupné na mnoha základních deskách

RAID 5 Parita zapisována postupně na různé disky Použitelný od 3 disků výše Rozumný kompromis mezi bezpečností dat, kapacitou a výkonem vyžaduje složitěkší elektroniku (bývá na řadičích s procesorem a větší pamětí)

RAID 6 Odolný proti výpadku až dvou disků Zvýšená redundance Menší využití kapacity Potřebuje složitější řadič Vhodné pro mission-critical aplikace

Optické disky CD, DVD, blue-ray,... Informace uchovávána prostřednictvím rozdílné odrazivosti světla Lisované velké série disků se stejným obsahem velmi spolehlivé Modifikovatelné médium (R, RW, RAM) malé série + zálohování + přenos dat (pouze RW a RAM)

Jukeboxy Pásky i optické disky mohou mít menší kapacitu, než je třeba požadovaná data jsou pak uložena na více médíıch Jednoduchá média je možné automaticky vyměňovat (stačí jedna či několik málo mechanik + výměnný mechanismus + prostor na desítky či stovky médíı)

Jukeboxy (2) Poskytují obrovskou úložnou kapacitu s pomalým přístupem (sekundy) Většinou využity jako terciální pamět jsou tam ukládáan data, co se nepotřebují příliš často, ale přesto by měla být dostupná Zálohování dat ze sekundárních pamětí

Systémy výměnných disků Zařízení umožňující bezobslužný přístup k více CD nebo DVD diskům Někdy včetně podpory zápisu Několik různých forem: mechanika na více CD stojan s mnoha mechanikami po jednom CD mechanika s přídavným zařízením na výměnu CD (jukebox)

Parametry Jukeboxu Až stovky CD/DVD (tj. až 5,5 TB) Může obsahovat i více mechanik Doba výměny disků 2,5 10 s Někdy i možnost otáčet média (u oboustranných)

Páskové výměnné systémy Obdobně jako u CD/DVD existují i bezobslužné systémy s jednou či několika málo mechanikami a mnoha páskami Kapacita až deítky TB

Flash paměti Velmi rychlé Drahé Často jen omezený počet přepsání Dnes běžně dodávané kapacity v jednotkách GB ( kĺıčenky ) nebo desítkách GB ( SSD solid-state disky )

Připojování vnějších pamětí Disky připojovány většinou přímo (DAS disrect attached storage), nebo přes sít (NAS network atatched storage), případně se chovají jako bloková úložiště (SAN storage area network) SAN i NAS se dají pořídit jak velká, tak SOHO; pozor, někdy je výkon SOHO zařízení velmi nízký

Bezpečnost dat RAID bývá bezpečnější než samotné disky (s výjimkou RAID 0), ale i zde může dojít ke ztrátám dat = je třeba zálohovat, případně využívat další typy pamětí (diskové a páskové jukeboxy) Kritické systémy i jejich záložní kopie je důležité mít umístěné na dostatečně vzdálených a různých místech (požáry, povodně)

Vnější paměti Mnoho druhů lišících se rychlostí, dodávanou kapacitou i cenou Platí, že velké kapacity bývají dostupné pomalu, malé kapacity rychleji nebo jsou silně miniaturizovány Je možné vytvářet kaskády pamětí

Záznam Logický kolekce souvisejících položek hodnot atributů Fyzický logický záznam doplněný o oddělovače, definice délek, zarážky,... délka fyzického záznamu R

Typ záznamu dán jmény a doménami atributů A j : dom(a j ) A 1 : D 1,..., A n : D n

Fyzický a logický záznam Logický záznam množina atributů Fyzický záznam (délky R) fyzická reprezentace logického záznamu na médiu (může obsahovat pomocná data navíc) Fyzické záznamy se ukládají do fyzických stránek (bloků jejich velikost značíme B) Bloky jsou minimální entitou přenášenou mezi primární a sekundární pamětí

Blokovací faktor, blokování Blokovací faktor (b) poměr B/R Blokování (umíst ování záznamů do bloků); říkáme, že záznamy jsou: neblokované b = 1, B = R; blokované b > 1; přerostlé b < 1; Pro implementaci je důležité, zda se R mění, či nikoliv budeme předpokládat, že se nemění.

Soubor Soubor je identifikovaná kolekce logicky souvisejících záznamů. Jsou-li záznamy stejného typu a velikosti, říkáme, že soubor je homogenní. V opačném případe je nehomogenní.

Kĺıč Kĺıč souboru je množina atributů A i1..a ik, k n, taková, že k-tice atributů < a 1..a k > (kĺıče záznamu) jednoznačně identifikují záznamy. Vyhledávací kĺıč je atribut (či množina atributů), k jehož hodnotě vyhledáváme množinu záznamů obsahujících pro daný atribut právě uvedenou hodnotu

Typy vyhledávacích kĺıčů Hodnotové hodnoty z dom(a i ) Hašované algoritmická transformace hodnot Relativní udána pozice od začátku souboru

Operace nad soubory INSERT vložení záznamu do souboru DELETE rušení záznamu v souboru UPDATE změna některých položek záznamu v souboru Aktualizace souboru posloupnost operací INSERT, DELETE a UPDATE FETCH získání záznamu ze souboru do vnitřní paměti

Schéma organizace souboru popis logické pamět ové struktury, co níž může být původní soubor zobrazen, spolu s algoritmy provádějícími operace nad touto strukturou může popisovat více logických souborů svázaných dohromady primární soubor soubor obsahující uživatelská data; N počet záznamů v něm

Fyzická úroveň Abstrakce fyzického zařízení fyzické schéma souboru fyzický soubor Reálné fyzické zařízení implementační schéma souboru

Abstrakce přítupu k souborům schéma organizace souboru logické soubory fyzické schéma souboru fyzické soubory implementační schéma úroveň typu implementace fyzických souborů úroveň výskytu

Operace SOS operace nad soubory (insert, delete, update) BUILD vytvoření struktury REORGANIZATION uvedení SOS do nového výchozího stavu Stav souboru S (S ; extenze souboru S) podoba SOS mezi dvěma ukončenými aktualizacemi CLOSE aktualizuje některá data o souboru

Souborové systémy podpora práce se soubory na úrovni základního SW uchovávají metadata o souborech umožňují správu souborů včetně mapování souborů na médium

Dotazy nad soubory dotaz nad schématem souboru S jakákoliv totální funkce vyjádřitelná programem definovaná nad množinou U S. která každému stavu přiřadí odpověd zpravidla množinu záznamů hity prvky odpovědi v případě dokumentů

Vícerozměrné/ortogonální dotazy dotaz na úplnou shodu zadány hodnoty všech atributů dotaz na částečnou shodu zadány hodnoty jen některých atributů dotaz na úplnou intervalovou shodu zadán interval hodnot pro každý z atributů dotaz na částečnou intervalovou shodu zadány intervaly pro vybrané atributy

Další operace READ ENTIRE FILE čtení celého souboru sériově podle zadaného uspořádání sekvenčně podle fyzického upořádání záznamů v souboru

Vyváženost struktury omezení délky cesty ve struktuře při vyhledání záznamu (např. O(log M), kde M je počet logických stránek) rovnoměrná naplněnost stránek faktor naplnění stránky λ (0 α < λ < β 1) někdy se λ označuje průměrné naplnění stránek SOS splňující obě podmínky dynamické, ostatní statické

Hardware důsledky Datové struktury pro sekundární paměti musí splňovat tyto podmínky: Základní jednotkou komunikace je blok (sektor) či jeho celistvý násobek. Bývá výhodnější číst n bloků souvisle uložených než n bloků náhodně rozmístěných. Totéž platí i pro zapisování.

Úrovně abstrakce vrstvy Logická... jak na to pohĺıžíme při návrhu (logické soubory co k sobě patří). Fyzická... fyzické soubory jak je to očima souborového systému. Implementační... jak je to reálně rozmístěno na disku

Záznam Logický kolekce souvisejících položek hodnot atributů Fyzický logický záznam doplněný o oddělovače, definice délek, zarážky,... délka fyzického záznamu R

Typ záznamu dán jmény a doménami atributů A j : dom(a j ) A 1 : D 1,..., A n : D n

Soubor Soubor je identifikovaná kolekce logicky souvisejících záznamů. Pozor! Soubor je kolekce (záznamy se obecně mohou o- pakovat), ne množina!

Homogenní soubor Hodnoty primitivní typy Deklarace S(A 1 : D 1,..., A n : D n ) Obsahuje pouze záznamy jediného typu.

Nehomogenní soubor Opak homogenního souboru obsahuje bud záznamy různých typů, záznamy se složitější strukturou, nebo záznamy různých délek. Úmluva: nebude-li řečeno jinak, budeme uvažovat pouze homogenní soubory.

Kĺıč Kĺıč souboru je množina atributů A i1..a ik, k n, taková, že k-tice atributů < a 1..a k > (kĺıče záznamu) jednoznačně identifikují záznamy. Vyhledávací kĺıč je atribut (či množina atributů), k jehož hodnotě vyhledáváme množinu záznamů obsahujících pro daný atribut právě uvedenou hodnotu

Typy vyhledávacích kĺıčů Hodnotové hodnoty z dom(a i ) Hašované algoritmická transformace hodnot Relativní udána pozice od začátku souboru

Operace nad soubory INSERT vložení záznamu do souboru DELETE rušení záznamu v souboru UPDATE změna některých položek záznamu v souboru Aktualizace souboru posloupnost operací INSERT, DELETE a UPDATE FETCH získání záznamu ze souboru do vnitřní paměti

Fyzický a logický záznam Logický záznam množina atributů Fyzický záznam (délky R) fyzická reprezentace logického záznamu na médiu (může obsahovat pomocná data navíc) Fyzické záznamy se ukládají do fyzických stránek (bloků jejich velikost značíme B) Bloky jsou minimální entitou přenášenou mezi primární a sekundární pamětí

Blokovací faktor, blokování Blokovací faktor (b) poměr B/R Blokování (umíst ování záznamů do bloků); říkáme, že záznamy jsou: neblokované b = 1, B = R; blokované b > 1; přerostlé b < 1; Pro implementaci je důležité, zda se R mění, či nikoliv budeme předpokládat, že se nemění.

Schéma organizace souboru popis logické pamět ové struktury, co níž může být původní soubor zobrazen, spolu s algoritmy provádějícími operace nad touto strukturou může popisovat více logických souborů svázaných dohromady primární soubor soubor obsahující uživatelská data; N počet záznamů v něm

Fyzická úroveň Abstrakce fyzického zařízení fyzické schéma souboru fyzický soubor Reálné fyzické zařízení implementační schéma souboru

Abstrakce přítupu k souborům schéma organizace souboru logické soubory fyzické schéma souboru fyzické soubory implementační schéma úroveň typu implementace fyzických souborů úroveň výskytu

Operace SOS operace nad soubory (insert, delete, update) BUILD vytvoření struktury REORGANIZATION uvedení SOS do nového výchozího stavu Stav souboru S (S ; extenze souboru S) podoba SOS mezi dvěma ukončenými aktualizacemi CLOSE aktualizuje některá data o souboru

Souborové systémy podpora práce se soubory na úrovni základního SW uchovávají metadata o souborech umožňují správu souborů včetně mapování souborů na médium

Dotazy nad soubory dotaz nad schématem souboru S jakákoliv totální funkce vyjádřitelná programem definovaná nad množinou U S. která každému stavu přiřadí odpověd zpravidla množinu záznamů hity prvky odpovědi v případě dokumentů

Vícerozměrné/ortogonální dotazy dotaz na úplnou shodu zadány hodnoty všech atributů dotaz na částečnou shodu zadány hodnoty jen některých atributů dotaz na úplnou intervalovou shodu zadán interval hodnot pro každý z atributů dotaz na částečnou intervalovou shodu zadány intervaly pro vybrané atributy

Další operace READ ENTIRE FILE čtení celého souboru sériově podle zadaného uspořádání sekvenčně podle fyzického upořádání záznamů v souboru

Vyváženost struktury omezení délky cesty ve struktuře při vyhledání záznamu (např. O(log M), kde M je počet logických stránek) rovnoměrná naplněnost stránek faktor naplnění stránky λ (0 α < λ < β 1) někdy se λ označuje průměrné naplnění stránek SOS splňující obě podmínky dynamické, ostatní statické

Schéma organizace souboru (SOS) abstrakce zobecňující soubory s určitými vlastnostmi mapování souboru na logické úrovni do úrovně fyzické, případně i implementační

Schémata organizace souboru Sekvenční soubor Index-sekvenční soubor Indexovaný soubor Soubor s přímým přístupem

Hromada Nehomogenní soubor V případě záznamů s proměnnou strukturou se uvádějí i jména či kódy atributů Vyhledání záznamu O(N)

Sekvenční soubor Nejjednodušší SOS Homogenní soubor obsahuje pouze záznamy daného typu V dávkových systémech velmi častý

Nesetříděný sekvenční soubor Použitelný pro uložení sesbíraných dat Vhodný pro případy, kdy probíráme jeden záznam za druhým a něco s nimi děláme bez vazby na okoĺı (např. kontrolujeme jejich integritu) Operace READ, WRITE Vyhledání záznamu O(N), resp. O(N/ b )

Uspořádaný sekvenční soubor Pořadí dle (vyhledávacího) kĺıče Vhodný zejména pro práci se všemi záznamy s vazbou na jiná data aktualizace úložiště, slévání Pro práci s jednotlivými záznamy se moc nehodí

Uspořádaný sekvenční soubor (2) Primární soubor + soubor aktualizací (dodatečných změn) Soubor aktualizací nebývá setříděn (dopisuje se na konec) Reorganizace: setřídíme soubor aktualizací + zatřídíme s primárním souborem do nového primárného souboru

Uspořádaný sekvenční soubor Vyhledání záznamu Nesetříděném O(N), setříděném O(log 2 N) T F = log 2 (N/ b ) (s + r + btt) Přepsání záznamu (Update): T U = T F + 2r T U = T I Kĺıč se nemění kĺıč se mění

Index-sekvenční soubor Přístup k záznamům je možný jak sekvenčně, tak i přímo Části: primární soubor, index a oblast přetečení Vhodný zejména tenkrát, když potřebujeme jak přístup k jednotlivým záznamům dle primárního kĺıče (ještě lépe, když není třeba kĺıč měnit, jen data), tak i ke všem záznamům najednou

Index-sekvenční soubor Aplikace Účetní systém platebních karet individuální přístup při manipulaci s kartou/účtem; dávkový přístup pro generování sumářů, měsíčních vyúčtování, apod.

Index-sekvenční soubor Struktura 1. úroveň Ab Ak Bf Bp Bx Ck Dl Ea Eh Fu Gh Ha Kd primární soubor 2. úroveň Ab Oi Ab Bx Eh Kd My Oi... 3 oblast přetečení Jm index

Index-sekvenční soubor: Odkazy do oblasti přetečení Za každým záznamem zabere to více místa + kratší sekvence v oblasti přetečení Na konci každého bloku mohou se tvořit delší sekvence v oblasti přetečení + menší nároky na místo v bloku; je možné si v blocích nechat volno na později přidané prvky

Index-sekvenční soubor kapsy implementace index-sekvenčního souboru pomocí kapes kapsa (bucket) je množina bloků organizovaných jako spojový seznam indexují se kapsy

Index-sekvenční soubor kapsy (2) Babka Kolář 00 10 20 index 1. úrovně číslo bloku odkaz na další bloky kapsy 00 10 20 00000 11111 Babka Codr Couf Colt Cuc 11110 Kolář Kotrč Macák Maloň bitová mapa bloky (kapsy) se záznamy 0 0 0

Index-sekvenční soubor kapsy (2) Aktualizace: I(Daněk), I(Alfons), D(Kotrč) Babka Kolář 00 10 20 00 10 20 30 00000 Alfons 11111 Babka Codr Couf Colt Cuc 10110 Kolář Macák Maloň 10000 Daněk 0 30 0 0

Index-sekvenční soubor úrovně Maximální počet úrovní x = log p N/ b ; b = B/R. Připomeňme, že B je velikost bloku a R (průměrná) velikost záznamu. Počet přístupů na disk odpovídá počtu úrovní. Minimalizace počtu přístupů na disk: prakticky pouze maximalizací B; omezeno kapacitou stopy.

Index-sekvenční soubor ISAM Přímá podpora index-sekvenčních souborů v runtime 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 začátku oblasti souboru) určuje lokality s indexy stop 3 svazek master index po OPEN v RAM; určuje lokality s indexy válců T F = 2(s + r + btt) + r + btt = 2s + 3r + 3btt

Index-sekvenční soubor ISAM (2) Oblast přetečení na každém válci + společná pro celý soubor Statický soubor = nutná reorganizace po naplnění oblasti přetečení nebo 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ší kĺıč na stopě Index cylindrů umístěn kdekoliv jinde 13 1650 14 1750 15 2000... cylindr největší kĺıč 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ší kĺıč na stopě aktualizace indexu

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

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

Index-sekvenční soubor výhody Rychlý přítup dle primárního kĺıče. Zachovává většinu dobrých vlastností setříděného sekvenčního souboru.

Index-sekvenční soubor nevýhody Rychlé vyhledávání jen pro primární kĺıč 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í

Index-sekvenční soubor návrh Uspořádání položek v seznamu Definice primárního kĺıč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 Umožňuje vyhledávat záznamy podle různých kĺıčů Odpovídá tabulce v DB Primární soubor a indexy Indexy mohou být mnoha různých typů (a to i v rámci jediného indexovaného souboru)

Indexovaný soubor obrázek 4.1 Jirásek Jirásek Němcová Světlá index 2. úrovně (master/hlavní index) 1.1 2.1 3.1 Jirásek 4.1 Jirásek 4.3 Jirásek 5.2 Němcová 4.2 Němcová 5.2 Němcová 5.3 Němcová 6.3 Němcová 7.2 Světlá 6.2 index 1. úrovně 5.1 6.1 Němcová Jirásek Světlá Jirásek Němcová Němcová...... Světlá Němcová... Vyhledávací kĺıč: Příjmení primární soubor

Indexovaný soubor úrovně indexu Počet úrovní indexu počítáme podobně jako u index-sekvenčního souboru, ale indexujeme jednotlivé záznamy a ne bloky. x = log b N, b = B/R ; B... velikost fyzické stránky R... (průměrná) velikost fyzického indexového záznamu

Indexovaný soubor částečná shoda Ř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 pro více atributů současně (A,B,C)

Indexovaný soubor implementace Nepřímé adresování: primární kĺıč, sekundární kĺıč sekundární kĺıč se indexuje na primární kĺıč 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 0 0 1 0 0 0 1 0 0 1 1 0 β 0 1 0 0 0 1 0 0 1 1 0 0 0

Bitové mapy Při zachování velikosti domény jejich velikost roste s počtem záznamů pouze lineárně Je možné sdružovat procesy procházející bitovou mapu nový proces nejprve se stávajícím dočte to, co ten stávající ještě nemá zpracované, a pak se vrátí k tomu zbytku (piggybacking)

Seznamy adres Odstranění duplicity kĺıčů Chemik 90 90 3 1.1 1.4 2.3 Mechanik 91 91 1 1.2 Primární soubor Referent 92 92 3 1.3 2.1 2.2

Indexy indexovaného souboru statické seznamy adres bitové mapy B-stromy a jejich varianty kombinované indexy vícerozměrné indexy