Příchod hackerů: praotec databází II.

Lukáš Erben 2. 8. 2016

Hierarchické databáze se zrodily v podstatě z technologické nutnosti, kterou představoval sekvenční zápis na magnetické pásky. Za jeho první inkarnace je považován generátor reportů 9PAC.

V předchozím díle minisérie o zrodu databází jsme začali vyprávět příběh Charlese Williama Bachmana III. a vůbec první platformy, na které se objevili předchůdci databázových systémů, generátory reportů, IBM 702.

Henry Tellier, který byl autorem prvního generátoru Hanford 702 FMRGS v továrně GE na zpracování plutonia, původně pracoval s klasickými třídičkami a tabelátory děrných štítků. Při návrhu svého generátoru reportů tak o souborech na magnetických páskách uvažoval, jako by to byl velký elektronický tabelátor. Navrhl tedy systém, který třídil, porovnával a tabeloval data na magnetické pásce tak, jako by se nacházela na děrných štítcích.

Z děrných štítků na magnetické pásky

Systém, který jsme v předchozím díle popsali úryvkem z rozhovoru s Charlesem Bachmanem, kombinoval univerzální opakovaně využitelný programový kód se specifickým programem pro konkrétní úlohu, která se připravovala pomocí papírového formuláře, typicky se 120 sloupci, v nichž i programování neznalý uživatel, s pomocí specialisty pro zpracování dat, snadno vyznačil, jaká data mají být „vytažena“ a kde mají být vytištěna. Pravidla a procedury byly následně přeneseny na děrné štítky – ty pak byly sestaveny do „štosu“ silného necelý centimetr, jež představoval jednu dotazovací sadu – report. Několik (až desítky) takových štosů pak generátor reportů zkompiloval a spustil je najednou při jednom čtení pásky.

To byl proces, který jsme popsali již minule, vynechali jsme ale některé důležité detaily. Například to, že každá sada dotazů byla kompilována na základě konkrétní kombinace „štosů“ a byla tak určena pouze pro jedno použití. Krom dotazů a formátování výstupu načítal generátor reportů také děrné štítky popisující příslušné datové záznamy. Jednalo se vlastně o „štosy“ s metadaty – názvem pole, jeho velikostí a typem dat.

Master soubory u IBM 702 byly takzvané „zploštěné soubory“ obsahující informace o vlastní entitě a doplňující data o veškerých hierarchicky nadřazených entitách a jejich vztazích. Výhodou je, že se snadněji vytvářejí, nejsou ale příliš vhodné pro popis komplexních datových struktur a vztahů – většina informací v nich obsažených je hierarchické či síťové povahy. Metadata navíc nebyla uchovávána, ale vytvářena pro každou sestavu reportů. Vznikal tak značný objem redundantních dat – první generátory reportů tak sice umožňovaly automatizovat vyhledávání, třídění a vypisování informací, nebyly ale efektivní ani optimalizované – i tak se ale jednalo o obrovský krok vpřed.


Zdroj: Computerhistory.org

Vznik hierarchických databází byl dán především technologickými omezeními páskových systémů.

Hierarchický 9PAC

Další věcí, která u FMRGS skutečně citelně chyběla, byla možnost prioritizovat, klást krátké dotazy nebo předřadit vytvoření nového záznamu. To a novinky v oblasti master souborů (v nichž bylo možné jasně a trvale definovat hierarchické vztahy) byly hlavními změnami, které přinesl systém 9PAC navržený v rámci výboru pro zpracování dat v pracovní skupině SHARE, kde se sešli zástupci řady firem především z výrobní sféry.

Výbor se zformoval na setkání skupiny v San Diegu – bylo druhé, kterého jsem se zúčastnil a první, na něž dorazil Harry Tellier. Okamžitě jsme začali diskutovat o tom, jak by bylo možné jejich Hanfordský systém přepracovat pro IBM 709. A tak jsme vytvořili Výbor pro zpracování dat v rámci SHARE, společně s několika dalšími lidmi – například F. Jonesem z NAA (North American Aviation). Ten se zajímal spíše o IBM 704 a tak vznikl systém „SURGE“ tedy varianta Hanfordského systému pro IBM 704. Ve skutečnosti se z něj ale stala jakási pokročilá forma assembleru, která neměla s Hanfordským systémem pro IBM 702 moc společného. K nám se záhy přidali lidé ze společností jako Union Carbide, Phillips Petroleum nebo Northern States Power – a také několik divizí GE.“

Z rozhovoru Ch. W. Bachmana s Thomasem Haighem, Insititut Chalese Babbage, 2004

Může to znít trochu divně, ale 9PAC byl svým konceptem vzdálenější pozdějším relačním databázím než Hanfordský systém. Zatímco druhý jmenovaný používal primární klíče u všech relevantních záznamů (například číslo zákazníka jako primární klíč v záznamu zákazníka i jako primární klíč v záznamu faktury), 9PAC vycházel z toho, že data zapisovaná na magnetickou pásku mají formálně (fyzicky) hierarchický vztah. Stal se tak jakousi ranou formou hierarchického databázového modelu.

Hierarchický databázový model představuje datový model, kde jsou data organizována ve stromové struktuře. Data jsou ukládána jako záznamy propojené mezi sebou odkazy. Záznam je sadou polí, z nichž každé obsahuje jen jednu hodnotu. Druh entity záznamu definuje, jaká pole záznam obsahuje. Záznam v hierarchické databázi tak vlastně odpovídá řádku v relačním databázovém modelu a entita odpovídá tabulce.

V hierarchickém databázovém modelu má každý „potomek“ jen jednoho „rodiče“, zatímco každý rodič může mít víc potomků. Pro získání dat z hierarchické databáze je třeba postupovat po celém stromu od kořenového záznamu – jedná se o první databázový model vytvořený v IBM v 60. letech.

Překlad popisu a schéma „Hierarchického databázového modelu“ z anglické Wikipedie.

widgety

Projekt generátoru reportů 9PAC byl původně navržen pro elektronkové počítače IBM 709, s příchodem tranzistorové varianty 7090 se mohl rozšířit dále. Jeho život navíc prodloužila emulace 709/7090 na rodině mainframů System 360. 9PAC byl nicméně pouze základní hierarchickou databází. Umožňoval totiž pracovat jen s jedním hierarchickým modelem – bylo možné jej setřídit podle zadání, nebylo ale možné pracovat s několika modely současně, to bylo dáno technologickým omezením páskového systému.

Změna přišla až počátkem šedesátých let s daty ukládanými na diskových systémech a s IDS, Integrated Data Store, který je označován jako první síťový databázový model (komplexnější podoba hierarchické databáze). Ten se stal Bachmanovým životním dílem, za které dostal již v roce 1973 Turingovu cenu. Hierarchické databáze se ale vyvíjely také, například do podoby IBM IMS, databáze a systému pro správu informací, který byl využit například při stavbě raket Saturn V a vesmírných lodí Apollo. To jsou ale další příběhy.

Odkazy

Našli jste v článku chybu?
120na80.cz: Ochablé svaly mohou značit vážnou nemoc

Ochablé svaly mohou značit vážnou nemoc

Lupa.cz: Cimrman má hry na YouTube i vlastní doodle

Cimrman má hry na YouTube i vlastní doodle

DigiZone.cz: Světový pohár v přímém přenosu na ČT

Světový pohár v přímém přenosu na ČT

Podnikatel.cz: Tyto pojmy k #EET byste měli znát

Tyto pojmy k #EET byste měli znát

DigiZone.cz: Banaxi: videa kdekoli na světě

Banaxi: videa kdekoli na světě

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

Podnikatel.cz: „Lex Babiš“ Babišovi paradoxně pomůže

„Lex Babiš“ Babišovi paradoxně pomůže

Vitalia.cz: Tradiční čínská medicína a rakovina

Tradiční čínská medicína a rakovina

Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

Vitalia.cz: 5 chyb, které děláme při skladování potravin

5 chyb, které děláme při skladování potravin

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

DigiZone.cz: Rapl: seriál, který vás smíří s ČT

Rapl: seriál, který vás smíří s ČT

Vitalia.cz: Jsou vegani a vyrábějí nemléko

Jsou vegani a vyrábějí nemléko

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Vitalia.cz: Jak Ondra o astma přišel

Jak Ondra o astma přišel