Články


Databázové myšlení


Proč mám rád databáze aneb Jak řídit a spravovat skladiště.

Velmi pěkné a optimistické spojení těchto slov působí možná trochu odborně, ale podle mne jde o způsob uvažování, který se vyvíjí nenápadně, ale zároveň neustále od okamžiku, kdy se otevřela první knihovna. Pro bližší představu je třeba rozumět pojmu databáze. Ve zjednodušeném příkladu si můžeme představit navzájem oddělené skupiny různých dat, pokud možno s důležitou vlastností, že se neobjevují ve více skupinkách zároveň. Jestliže přijmeme tuto podmínku, můžeme se zároveň ptát, jak u těchto informací budeme hledat způsob jejich využití. Základní představa může být velmi jednoduchá. Hledejme cesty, jak tyto informace mezi sebou propojit. Nikoli s cílem vytvořit jakési paralelní schéma, ale abychom z nich získali souhrnnější odpověď. Vytváříme tak myšlenkové kanály, které si z připravených skladišť berou pouze to, co potřebují a velmi úsporně informace využívají.

Databázové myšlení (tak nevím, jestli jsem tuto slovní kombinaci nevymyslel, ale to bych si asi moc fandil) potom chápeme jako systém výběru informací z dostatečně vybavených zdrojů, a to za konkrétním účelem, pro plnění daného úkolu, kterému říkejme například výstup. Práce s daty má, s rozvojem informačních technologií, stále stabilnější pozici, zejména při práci na Internetu. Ačkoli si to možná ani neuvědomujeme, jsme již na zásobárnách a skladištích dat závislí. Tato vazba se projevuje zejména v čase, kdy se nám internetové zdroje dat mění velmi rychle. Na pomoc přicházejí IT nástroje (například RSS), pomocí kterých se snažíme udržet tempo, což logicky vede k tomu, že se v řadě odpovědí nemůžeme pouštět do detailů. Proč? Odpověď je jednoduchá – protože bychom nestíhali.

V databázovém světě se těmto malým skladům říká entity a vazbám relace. Informace se řídí základním pravidlem pro spojení, a to společnou vlastností, přes kterou je možné relaci vytvořit. To nás nutí již při myšlenkovém třídění dat tvořit takové skupiny, abychom z nich čerpali s co možná nejmenším úsilím. Vytvořené databáze se nazývají relační, kde vztahy mezi skladišti dat dávají entitám vyšší úroveň. Existují totiž také nerelační databáze, kde je prioritou systém uskladnění informací, aniž bychom řešili jejich případnou provázanost.
Často se opomíjí velmi důležitá vlastnost relačních databází, a to umístění dat. Ta jsou totiž pouze ve zdrojových tabulkách, nikoli v relacích nebo výstupech. Je celkem jedno, zda se díváme na sestavu vytvořenou v Accessu nebo na webovou stránku v prohlížeči, která ukazuje data z nějaké SQL databáze, v kódu je zapsána pouze cesta k těmto datům, nikoli jejich obsah. Tady nevím, kde vzít vhodnou aplikaci do života, ale velkou brzdou je zde paměť. Nutí nás totiž vytvářet kopie dat, která již jsou někde uskladněna.

Stále více se hovoří také o hypertextovém myšlení, které je charakterizováno pavoukovitým (nelineárním) systémem práce. Jestliže z centrálního bodu (úkol) saháme postupně do různých zdrojů, možná si ani neuvědomujeme, že pracujeme velmi účelově, neboť tím vlastně vytváříme cestu k detailnějším vlastnostem, které opět využíváme. Zároveň tak data ověřujeme, což je velmi cenné, zejména, když daný úkol sám je prostředkem pro další cíle. Osobně si myslím, že tento způsob práce vyžaduje minimální představu stromové architektury (chápejme v matematickém významu), neboť by se mohlo snadno stát, že se některé pavoučí končetiny budou větvit do několika dalších vrstev a jiné zůstanou na první úrovni. Dokonce může hrozit, že se nám ten pavouk nakonec i převrátí, čímž mám na mysli ztrátu orientace v tom, co je vlastně jádrem případného problému. Je to záležitost nelineárního modelu práce s informacemi a hypertextové vazby jsou jeho klasickým představitelem.

06-08-2007