Databázové systémy pro GIS (5. díl)
Když jsme v předcházejících kapitolách mluvili o modelech, a strukturách geografických údajů, tak si v této části řekneme, jaké je jejich další použití pro databázové systémy s ohledem na GIS, zejména při práci s atributy dat.
Souborová struktura ukládání dat
Způsob ukládání údajů lze provádět různým způsobem. Nejjednodušší je ten, jak ho známe z běžného používání počítače. Jednotlivé soubory se ukládají do složek a tyto se ukládají případně do dalších složek až do počtu vrstev, které považujeme za dostatečné, abychom jednoznačně rozlišili zařazení příslušného souboru na to místo, kam dle našeho uvážení patří. Tvoření souborové struktury je jednoduché a pro uživatele, který má smysl pro pořádek je i dostatečné.
Ovšem jenom do chvíle, kdy nepotřebujeme, aby se uložené soubory mezi sebou začaly propojovat a své dílčí informace nabídly celku. Pak nastává několik problémů, které musíme řešit v rámci konkrétních, používaných aplikací. Je to zejména definování místa, kde jsou soubory uložené a jak k nim mají aplikace přistupovat. Další problém je v přístupu do dat z několika aplikací najednou, ale i sdílení a editace dat více uživateli najednou. Některé problémy tímto způsobem ani nelze řešit, lépe řečeno jejich řešení je neefektivní. Proto přecházíme na jiný způsob organizace dat.
Databázový systém
Soubor programů, které byly navrženy podle dohodnutých kritérií tak, aby soustředil data do jednoho celku, obhospodařoval je a umožňoval přístupy k různým aplikacím a různým uživatelům najednou, se jmenuje systém řízení báze dat. V informatice se pro tento systém používá známá zkratka DBMS z anglického database management system. Používání DBMS má v informatice velký význam pro všechny zúčastněné strany.
Programátor aplikačního softwaru se nemusí soustředit tolik na zajištění přístupů k datům, protože je má na jednom místě. Správce dat má o datech dokonalý přehled a při dodržení stanovených pravidel může data rychle a přesněji propojovat. Řadový uživatel se zase dostává k datům vždy, kdy to potřebuje, může je editovat a nemusí čekat, až mu „uvolní“ přístup jiný uživatel. Základní požadavky na DBMS doplňuje možnost různého způsobu vyhledávání, bezpečnost před neoprávněným přístupem a také dostatečné prostředky pro správu dat.
Na to, abychom mohli DBMS využívat, potřebujeme databázi. Databáze je v zásadě několik souborů, jednoho předmětu zájmu. Pro příklad můžeme uvést, že předmětem zájmu je sledování stavu úseku silnice po časových intervalech. Jeden soubor dat tvoří poloha silnice je definovaná souřadným systémem atributy x,y, tyto jsou konstantní. Druhý soubor dat tvoří kvalita povrchu definována atributem „q“ a ten se každým rokem mění. K silnice lze vytvářet další soubory dat, které budou obsahovat jiné atributy (dopravní značení, materiál silnice, stáří) a každý soubor dat lze vhodně vázat z jiným.
Jak bude vypadat struktura dat, určují katalogy dat. Nemusí se vypracovávat přímo pro aplikační program, ale fungují zcela samostatně. Lze konstatovat, že systém řízení báze dat a databáze tvoří databázový systém. Práci s databází nám umožňují databázové jazyky. Pro definici dat používáme jazyk, který vychází z použitého datového modelu. Pro vlastní práci s daty používáme ve většině případů dotazovací jazyk – SQL.
Databázové modely
Informativně vzpomeňme existenci hierarchického datového modelu. Jeho princip je postavený na hierarchii vztahů nadřazených a podřazených typů entit.
Je využívána asociace 1:1 a 1:N. Vztahy M:N neexistují, tudíž nelze data libovolně propojovat. Jiný, síťový model, připouští i typ M:N, ale jenom za cenu náročnější a rozsáhlejší databáze.
Hierarchické a síťové datové modely se v dnešní době prakticky nevyužívají.
Relační model je postaven na matematickém přístupu. Každá entita (objekt) obsahuje libovolné atributy. Pro názornost si představme tabulku, která má řádky, jako jednotlivé entity a sloupce jako jednotlivé atributy.
Alespoň jeden atribut je vždy unikátní nebo je vytvořen definovanou kombinací vybraných atributů. Takovému atributu se říká klíč. Pomocí klíčů lze vytvořit všechny typy asociací – 1:1, 1:N, M:N.
Pojem relace nám vlastně uvádí, že s jednotlivými tabulkami lze provádět úkony, kterých výsledkem je vytvoření nové tabulky. Takto lze na základě matematických poznatků vytvářet sjednocení, průnik, rozdíl a součin tabulek, dle požadovaných parametrů. Hlavním cílem při budování relačního systému je zachovat stabilitu datové struktury a současně eliminovat nadbytečnost záznamů a tím šetřit i hardwarové prostředky (paměť, místo na disku).
Pro geografické informační systémy není relační model úplně dostatečný. Je výhodný pro manipulaci s neprostorovými daty. Popisování objektů reality prostřednictvím tabulek v relačním modelu je značně složité. Geoobjekty se zde musí náročně definovat pomocí několika tabulek, primární klíče vyžadují zase pečlivou definici a unikátnost. Proto se využívá objektově orientovaný model. Tento je vytvořen na základě několika zásad.
Každý objekt je modelován s vlastní identitou a ta je po celou jeho existenci trvalá. Současně je zapouzdřen, má vlastní atributy a chování. Jeho vnitřní vztahy nás nezajímají, zajímá nás jenom jeho vztah k okolí. Objekty, které mají stejné atributy a stejné chování, se popisují jako třída objektů. Tyto třídy se mohou dělit na subtřídy dle specializace, přičemž dědí atributy a chování své nadtřídy. Dá se stručně říci, že snahou objektově orientovaného modelování, je přenést svět z relačních tabulek do větší reality, vytvářet objekty a seskupovat je podle všech údajů do tříd.
Prohledávání databáze
Vycházíme z toho, že uživatel ukládá různé údaje proto, aby je mohl v budoucnu využívat buď přímo nebo pro vytvoření nových údajů. Vzhledem k tomu, musí vždy provést dotaz pomocí SQL k vyhledání požadovaných dat dle vybraného kritéria. Obecně má dotaz tři části. Specifikaci vybíraných údajů, formulaci zvolených podmínek a pokyn, co se má s vybranými daty provést.
Pro GIS je základním dotazem prohledávání databáze. Můžeme vznášet prostorový dotaz na databázi v otázce – kde se nachází dané místo? Druhý typ dotazu na databázi může být atributový v otázce – které objekty mají požadovanou vlastnost? Častěji potřebujeme zvolit dotaz, který bude kombinací na prostor i atributy. V této souvislosti je nutné zvážit výběr odpovídající databáze.
Jakou databázi vybrat?
Složitější dotazy vyžadují kvalitnější softwarové vybavení. Přesto lze konstatovat, že je nutné zodpovědně zvážit výběr aplikačního i databázového softwaru, aby odpovídal jednak velikosti databáze, rozsahu požadovaných úkonů a počtu přistupujících uživatelů. Současně by měl splňovat i finanční možnosti pořizovatele, nároky na bezpečnost a v neposlední řadě i nároky na aktivní obsluhu. Na trhu se dnes nachází open source databáze PostgreeSQL, MySQL. Tyto v řadě případů stačí, navíc ve spojení s operačním systémem Linux vytváří finančně velmi zajímavou kombinaci.
V klasické kategorii lze vzpomenout databázové stroje MS SQL ve verzi Express, Workgroup, Standard a Oracle ve verzi Express, Standard, Standard One, pro velké databáze zejména MS SQL Enterprise a Oracle Enterprise a produkty IBM – Informix Dynamic server a DB2. Tímto není seznam databází uzavřen, vzpomenul jsem jenom nejpoužívanější databáze na českém trhu. Při rozhodování je nutné vycházet i ze samotné GIS aplikace, kterou chceme používat a dbát na doporučení jeho tvůrce, který za portaci na vybrané databáze a operační systémy, ručí. Jestli tomu tak není, zvolte si raději jinou GIS aplikaci.
V šestém díle se zaměříme na to, jak data získávat, jak je zapisovat a aktualizovat.
Díly seriálu:
Když se řekne GIS… (1. díl)
Hardware a software pro GIS (2. díl)Geografické objekty a jejich modelování (3. díl)
Vektorové a rastrové modely, geometrie a topologie (4.díl)
Databázové systémy pro GIS (5. díl)
GIS – získávání dat, proces aktualizace dat (6. díl)
GIS projekt, budování databáze (7. díl)
Analytické úlohy a prezentace dat GIS (8. díl)
Lidský a ekonomický faktor GIS (9.díl)
Využití GIS v podmínkách městského úřadu (10. díl – shrnutí)
Odpovědět na příspěvek