UNIVERZITA PALACKÉHO V OLOMOUCI

Rozměr: px
Začít zobrazení ze stránky:

Download "UNIVERZITA PALACKÉHO V OLOMOUCI"

Transkript

1 UNIVERZITA PALACKÉHO V OLOMOUCI PŘÍRODOVĚDECKÁ FAKULTA KATEDRA GEOINFORMATIKY Libor KIMPL PROSTOROVÉ NADSTAVBY NEKOMERČNÍCH DATABÁZÍ VSTUP A SPRÁVA GEOOBJEKTŮ Bakalářská práce Vedoucí práce: RNDr. Vilém Pechanec, Ph.D. Olomouc 2010

2 Prohlašuji, že jsem zadanou bakalářskou práci vypracoval samostatně pod vedením RNDr. Viléma Pechance, Ph.D. Všechny použité materiály a zdroje jsou citovány s ohledem na vědeckou etiku, autorská práva a zákony na ochranu duševního vlastnictví. V Olomouci 25. května podpis

3

4

5 OBSAH 1. ÚVOD 7 2. CÍL PRÁCE 8 3. PROSTŘEDÍ A METODY ZPRACOVÁNÍ DATABÁZE Modelování aplikací Správa fyzických dat GEODATABÁZE (PROSTOROVÁ DATABÁZE) PostgreSQL MySQL SQLite PROSTOROVÁ NADSTAVBA DATABÁZE PostGIS MyGIS SpatiaLite JanGeoDB DALŠÍ SOFTWAROVÁ ŘEŠENÍ Janitor QuantumGIS (QGIS) FWTools Shell OpenEV GDAL OGR shp2pgsql ULOŽENÍ DAT V GEODATABÁZI Well-known text (WKT) Well-known binary (WKB) JAZYK SQL Spatial SQL (Prostorové SQL) VSTUP A SPRÁVA GEOOBJEKTŮ Vytvoření databáze (CREATE DATABASE) Vytvoření tabulky (CREATE TABLE) 40

6 4.3 Vložení záznamů (INSERT) Odstranění záznamů (DELETE) Změna obsahu záznamů (UPDATE) Dotazování (SELECT) DISKUZE ZÁVĚR SEZNAM POUŽITÉ LITERATURY SUMMARY 66 PŘÍLOHY

7 1. ÚVOD Pojem databáze dnes není zcela jistě nikomu cizí. Lidé mají potřebu evidovat a shromažďovat informace už odpradávna. Celá dnešní moderní společnost je postavena na databázových systémech od evidence občanů, přes zdravotnictví, hospodářství, školství až po letectví, výzkum nebo síť mobilních telefonů [24]. V současné době směřuje vývoj geografických informačních systémů do stavu, kdy je snaha ukládat do databází společně jak atributová tak geometrická data. GIS nejsou jediné aplikace, které využívají prostorové objekty. Při počítačovém konstruování strojů, stavebních objektů či elektronických obvodů jsou také vytvářeny prostorové objekty [1]. Tato bakalářská práce se věnuje rozšíření databází o prostorové nadstavby. Seznámí nejen se základními pojmy z oblasti databází, ale i s konkrétními vlastnostmi a použitím prostorových databází, seznámí s dialektem jazyka SQL jako nástroje pro vytvoření prostorové databáze a manipulaci s geodaty. Jazyk SQL je standardním nástrojem, ze kterého většina dnes používaných databázových systémů vychází a v různé míře tyto systémy tento standard dodržují. 7

8 2. CÍL PRÁCE Cílem bakalářské práce je popsat a porovnat stávající prostorové rozšíření nekomerčních databází s přímým využitím v GIS. Zjištěné poznatky budou zpřístupněny pomocí DocBooku. V teoretické části práce vznikne přehled o stávajících (výrazných) řešeních prostorových nadstaveb PostGIS, MyGIS, JanGeoDB, Spatial for SQLite. Budou popsány existující nadstavby na úrovni přehledu podporovaných datových typů, přehledu operací pro vstup a správu geodat, dostupnosti a závislosti rozšíření a základní schéma datového modelu. V praktické části bude provedeno testování tzn. vstup základních datových typů do databáze a základní manipulace s nimi (INSERT, UPDATE geometrické složky i atributové, DELETE) v prostředí PostGIS, MyGIS, JanGeoDB, SpatialSQLite. Operace budou prováděny jak z konzolce pomocí jazyka SQL, tak z libovolné desktop aplikace. Všechny kroky budou podrobně zdokumentovány. Praktická část bude doplněna o srovnání rychlosti a kvality operace. 8

9 3. PROSTŘEDÍ A METODY ZPRACOVÁNÍ Existuje celá řada databázových systémů, produktů a nadstaveb, které se využívají pro potřeby geografických informačních systémů. 3.1 DATABÁZE Databáze je velkou sbírkou propojených dat uložených v počítačovém prostředí. V těchto prostředích jsou data perzistentní, což znamená, že přežijí neočekávané softwarové nebo hardwarové problémy (s výjimkou závažných případů selhání disku). K tradičnímu využití databází patří personální řízení, akcie, cestovní rezervace a bankovnictví. V případě relačních databázových systémů se databáze skládá z několika tabulek a jejich vzájemných vztahů, které jsou nazývány dle autora relačního modelu E. F. Codda relace [2]. Každá tabulka se skládá z jednotlivých řádků, které se označují jako záznam (record). Struktura záznamu je dána definicí tabulky. Pokud se například bude jednat o tabulku s adresami, pak budou jednotlivá pole (fields) záznamu obsahovat jméno, příjmení, ulici atd. Pro každé pole je přesně zadáno, jak má vypadat jeho obsah (například různé formáty čísel nebo řetězec o maximálním počtu znaků). Namísto o záznamech obsahujících jednotlivá pole se často hovoří pouze o řádcích (rows) či sloupcích (columns). Významově znamenají všechny tyto výrazy totéž. Databáze může být viděna jako jeden nebo více souborů uložených na nějakém vnějším paměťovém zařízení, jako je například disk. Ačkoliv by bylo možné psát aplikace, které mají přímý přístup k těmto souborům, stavba aplikací vyvolává řadu problémů, které se týkají bezpečnosti, souběžnosti a složitosti manipulace s daty [4]. DBMS (DataBase Management System) je kolekce programů, které řídí strukturu databáze a kontroluje přístup k datům uloženým v databázi. Obecně řečeno, DBMS usnadňuje proces: Definování databáze, která je popsána datovými typy, strukturami a omezeními, které mají být vzaty v úvahu. Budování databáze; tj. ukládání dat do trvalého úložiště. Manipulace s databází. Dotazování na databázi pro získání specifických údajů. Aktualizace databáze (změny hodnot). 9

10 Uložená data Obr. 1: Zjednodušené prostředí databázového systému [4] Na obrázku č.1 výše je znázorněno zjednodušené prostředí databázového systému. Ukazuje, jak DBMS působí jako prostředník mezi uživateli, aplikačními programy a zařízeními, kde jsou data uložena. DBMS software se skládá ze dvou částí. Horní část zpracovává dotazy (queries) uživatele. Výsledkem dotazu je tabulka, která je však uložena pouze v operační paměti počítače (RAM) [2]. Spodní část umožňuje přístup k vlastním údajům a metadatům potřebným k pochopení definice a struktury databáze. DBMS závisí na základním pojetí datové nezávislosti. Uživatelé komunikují s reprezentací dat nezávisle na konkrétním fyzickém skladování a DBMS má na starosti překládání uživatelských manipulací s ohledem na efektivní provoz fyzických datových struktur [4]. Tohoto mechanismu je možné dosáhnout pomocí různých úrovní abstrakce. Je obvyklé rozlišovat tři úrovně v databázovém prostředí: 1. Fyzická úroveň se zabývá strukturami skladování, 2. Logická úroveň definuje reprezentaci dat navržených pro uživatele a 3. Vnější úroveň odpovídá za částečný pohled do databáze pomocí konkrétní aplikace. Rozdíl mezi fyzickými a logickými reprezentacemi je stěžejní oblastí databáze. Jasně odděluje úkoly věnované systému zjednodušené reprezentace a funkčním manipulacím nabízeným uživateli. Dokáže se tedy soustředit především na odpovídající modelování a provádění aplikace. 10

11 3.1.1 Modelování aplikací Na logické úrovni je prvním úkolem definovat databázové schéma, které popisuje strukturu spravovaných informací řízených aplikacemi stejně jako omezení, která je třeba respektovat [4]. Jakmile je schéma definováno, mohou být data vkládána, aktualizována, vymazávána a dotazována pomocí dotazovacího jazyka. Zejména struktury, omezení a provoz zajišťuje DBMS závislý na logickém datovém modelu podporovaném DBMS. V současné době je nejrozšířenější relační datový model. Níže je uveden příklad vývoje aplikace s relačními databázemi. REPREZENTACE DAT V RELAČNÍ DATABÁZI V relačním prostředí je reprezentace dat poměrně jednoduchá. Opírá se o jediný typ struktury, tabulky nebo relace [4]. Například reprezentace názvu, hlavního města a počtu obyvatel kolekce zemí obsahuje jeden řádek na zemi a jeden sloupec nebo atribut na vlastnost zastoupenou v každé zemi (konkrétně její název, hlavní město a počet obyvatel). Navrhnutí relačního schématu obvykle zabere dva kroky. Koncepční modelování (krok 1.). Tento krok je nezávislý na případné realizaci. Dovoluje obecně popsat objekty zájmu (entity) spolu se vztahy mezi nimi. Entity jsou příklady typů entit a vztahy jsou příklady typů vztahů. Například ve větě "Paříž je hlavní město Francie", Paříž (Francie) je entita, která patří k typu entity s názvem města (respektive země), a "je hlavní město" je typ vztahu. Skutečnost, že město Paříž je hlavním městem Francie je vztah, který je zvláštní případ předchozího typu vztahu. Vztahy mezi entitami mohou být obecné, jako je kompozice, agregace nebo dědictví. Jiné vztahy se vztahují na konkrétní situace (např. "silnice spojující města"). Entity a vztahy jsou obvykle graficky zobrazeny v diagramu jako entita-vztah (ER), UML (Unified Modeling Language) nebo OMT (Object Modeling Techniques) diagramy. Jakmile je takové schéma navrženo, získá se koncepční schéma. Logická úroveň (krok 2.). V této fázi je koncepční schéma přeloženo do datového modelu konkrétní DBMS. V kontextu relační databáze, následuje několik jednoduchých pravidel transformace a popisuje relační schéma pomocí Data Definition Language (DDL). 11

12 Obr. 2: Postup a realizace datového modelování [1] MANIPULACE S DATY V prostředí DBMS, se manipulace s daty děje prostřednictvím vyjádření dotazů a jiných operací (aktualizace, vložení, atd.) v jazyce pro manipulaci s daty (DML). Jedním z důvodů úspěchu relační DBMS je existence dotazovacího jazyka SQL, jednotně používaného ve všech relačních systémech [4]. SQL má základní vlastnosti, které stojí za zmínku. 1) SQL je deklarativní, což znamená, že uživatel vyjádří, co očekává jako výsledek. Jazyk je jednoduchý, a je přístupný i pro neodborné uživatele. Tento systém také dává svobodu (a odpovědnost) zvolit vhodné provedení. 2) SQL se opírá o řádné matematické základy. Soubor údajů manipulace vyjádřený prostřednictvím jazyka je přesně vymezen dvěma ekvivalenty, formálními jazyky, a sice relačním kalkulem a relační algebrou. První z nich je v podstatě první logický příkaz. Druhým je malý soubor operátorů, které popisují, jak lze manipulovat vztahy k vyhodnocení dotazu. 12

13 Nicméně, existuje protějšek k jednoduchosti SQL. Expresivní síla SQL není dostatečná, neboť neodpovídá kompletním programovacím jazykům jako C [4]. Například nelze vyjádřit rekurze (opakování činnosti) a ani aritmetické výpočty. I když je to cena, která má být zaplacena za jednoduchost a efektivnost, přináší silná omezení, pokud jde o výpočty potřebné pro manipulaci s prostorovými objekty Správa fyzických dat Jakýkoli DBMS nakládá na fyzické úrovni s těmito úkoly. Všechny tyto funkce jsou skryty pro koncového uživatele. Úložiště. DBMS spravuje efektivnější organizaci dat na trvalé vedlejší paměťové jednotce (obvykle jeden či více disků). Reprezentace na této úrovni může být zcela jiná, než je ukázáno uživateli v závislosti na logickém datovém modelu. Např. tabulka může být uložena v několika souborech, případně rozdělena na více disků. Přístupové cesty. DBMS poskytuje metody pro přístup k datům nebo přístupové cesty, které urychlí vyhledávání dat. Typická struktura dat nebo index, který urychluje vyhledávání dat, je B-tree. Zpracování dotazu. Zpracování (hodnocení) dotazu obvykle zahrnuje několik operací. Pro efektivní zhodnocení dotazu musí být tyto činnosti vhodně kombinovány. Důležitým předmětem dotazu je zpracování návrhu efektivního propojení algoritmů. Optimalizace dotazu. Protože uživatelský dotaz je čistě deklarativní (alespoň s SQL), je odpovědností systému najít přijatelně efektivní způsob, jak zhodnotit dotaz. Souběžnost a obnova. DBMS spravuje souběžný přístup k datům a zdroje několika uživatelů a zaručuje bezpečnost a konzistenci databáze, jakož i obnovení databáze do konzistentního stavu po selhání systému. Mnohé z těchto funkcí (s výjimkou kontroly souběžnosti a obnovy) jsou určeny k efektivnímu vyhodnocování dotazů [4]. Výše uvedené úkoly, musí být řešeny v prostorových databázích. Nicméně, s prostorovými daty mnoho z těchto úkolů vyžaduje specifické řešení. Zejména relační datový model ukazuje, že je příliš chudý, aby zastupoval a manipuloval s geometrickými daty. Tím vzniká několik zajímavých problémů týkajících se rozšíření stávajících logických datových modelů a vývoje nových technik zpracování dotazu. 13

14 3.2 GEODATABÁZE (PROSTOROVÁ DATABÁZE) Geodatabáze je databáze navržená pro ukládání, dotazování a manipulaci s geografickou informací a prostorovými daty. Je také známá jako prostorová databáze. V rámci prostorové databáze je s prostorovými daty zacházeno jako s jakýmkoli jiným typem dat. Vektorová data mohou být uložena jako bod, linie nebo polygon datové typy a mohou mít související souřadnicový systém. Záznam geodatabáze může používat datový typ geometrie pro reprezentaci umístění objektu ve fyzickém světě a další standardní databázové datové typy pro uložení atributů objektu. Některé geodatabáze mohou obsahovat podporu také pro ukládání rastrových dat. Mnoho geodatabází má vlastní funkce, které umožňují manipulovat a dotazovat se na prostorová data pomocí SQL, například najít všechny obyvatele oblasti v rámci expozice zóny pro potenciální ohrožení životního prostředí. Nicméně k prostorovým datům v některých geodatabázích lze přistupovat pouze pomocí speciálního klientského softwaru. V rámci geografického informačního systému (GIS) je prostorová databáze jednou ze součástí, které lze použít pro ukládání a manipulaci s daty. Kompletní systém pak zahrnuje také klientský software pro zobrazení a editaci dat uložených v databázi [11] PostgreSQL PostgreSQL je objektově-relační databázový systém s otevřeným zdrojovým kódem, vyvinutý na University of California v Berkeley Computer Science Department. Má za sebou více než patnáct let aktivního vývoje a má vynikající pověst pro svou spolehlivost a bezpečnost [19]. Běží nativně na všech rozšířených operačních systémech včetně Linuxu, UNIX (AIX, BSD, HP-UX, SGI-IRIX, Mac OS X, Solaris, Tru64) a Windows. Stoprocentně splňuje podmínky ACID (soubor vlastností zaručujících spolehlivé zpracování databázových transakcí), plně podporuje cizí klíče, operace JOIN, pohledy, spouštěče a uložené procedury. Obsahuje většinu SQL92 a SQL99 datových typů, např. INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL a TIMESTAMP. Rovněž podporuje ukládání binárních velkých objektů, včetně obrázků, zvuků nebo videa. Má nativní programovací rozhraní pro C / C++, Java,.Net, Perl, Python, Ruby, Tcl, ODBC a další. Výkonnostně nezaostává za srovnatelnými komerčními systémy a častokrát je i předčí. PostgreSQL podporuje složené, jedinečné, částečné a funkční indexy, které může použít některá z jeho B-tree, R-tree, hash, nebo GiST skladovacích metod. 14

15 GiST (Generalized Search Tree) indexování je moderní systém, který sdružuje široké spektrum různých třídících a vyhledávacích algoritmů včetně B-tree, B +-tree, R-tree, partial sum tree, ranked B +-tree a mnoho dalších. To také poskytuje rozhraní, které umožňuje jak tvorbu vlastních datových typů, stejně jako rozšiřitelných dotazovacích metod, s jejíž pomocí lze prohledávat. Tak, GiST nabízí flexibilitu ke specifikování toho, co je uloženo, jak je to uloženo, a schopnost definovat nové způsoby, jak hledat přes to --- způsoby, které jsou daleko větší než nabízí standardní B-tree, R-tree a další obecné hledací algoritmy. Obr. 3: Logo databázového systému PostgreSQL [19] PostgreSQL je šířen pod licencí The PostgreSQL License (TPL), která je nejliberálnější ze všech Open Source licencí. Tato licence umožňuje neomezené bezplatné používání, modifikaci a distribuci PostgreSQL, a to ať pro komerční nebo nekomerční využití. PostgreSQL můžete šířit se zdrojovými kódy nebo bez nich, zdarma nebo komerčně. Předností systému PostgreSQL je rozšiřitelnost. Systém může být bezproblémově rozšiřován o nové datové typy, funkce, operátory, agregační funkce, procedurální jazyky. Díky tomu mohly vzniknout následující rozšíření: PostGIS - podpora pro geografické informační systémy, Slony-I - master to multiple slaves replikace. Za vývojem PostgreSQL stojí skupina nezávislých vývojářů a uživatelů navzájem komunikujících prostřednictvím internetu. Tento projekt není řízen žádnou obchodní organizací [27]. pgadminiii pgadminiii je populární a nejlépe vybavená administrační a vývojářská Open Source platforma pro PostgreSQL. Aplikaci lze používat pod Linuxem, FreeBSD, Solaris, Mac OS X a Windows systémy ke správě PostgreSQL 7.3 a novějšího. pgadmin je navržený tak, aby uměl vyhovět na potřeby všech uživatelů, od psaní jednoduchých dotazů SQL až po vývoj komplexních databází. Grafické rozhraní podporuje všechny funkce PostgreSQL a činní administraci snadnou. Aplikace rovněž obsahuje editor SQL se zvýrazňováním syntaxe, editor kódu serverové strany, agenta pro plánování úkolů, podporu pro replikační systém Slony-I a další. Připojení k serveru může probíhat přes TCP/IP 15

16 nebo Unixové sokety (na *nixových platformách) a může být kvůli bezpečnosti šifrované SSL. Pro komunikaci s databázovým serverem nejsou potřeba žádné přídavné ovladače. pgadmin je vyvíjen komunitou expertů na PostgreSQL z celého světa a je dostupný ve více jak tuctu jazyků. Jedná se o svobodný software vydaný pod licencí BSD [20]. Obr. 4: Logo administračního programu databázového systému PostgreSQL [20] MySQL MySQL je nejpopulárnější open source SQL databázový systém, vytvořený švédskou firmou MySQL AB, nyní vlastněný společností Sun Microsystems, dceřinou společností Oracle Corporation. Jeho hlavními autory jsou Michael Monty Widenius a David Axmark [15]. Je považován za úspěšného průkopníka dvojího licencování je k dispozici jak pod bezplatnou licencí GPL, tak pod komerční placenou licencí. Obr. 5: Příkazový řádek MySQL MySQL je multiplatformní databáze. Komunikace s ní probíhá, jak už název napovídá, pomocí jazyka SQL. Podobně jako u ostatních SQL databází se jedná o dialekt tohoto jazyka s některými rozšířeními. Pro svou snadnou implementovatelnost (lze jej instalovat na Linux, MS Windows, ale i další operační systémy), výkon a především díky tomu, že se jedná 16

17 o volně šiřitelný software, má vysoký podíl na v současné době používaných databázích. Velmi oblíbená a často nasazovaná je kombinace MySQL, PHP a Apache jako základní software webového serveru ( technologie LAMP ) [15]. MySQL bylo od počátku optimalizováno především na rychlost, a to i za cenu některých zjednodušení: má jen jednoduché způsoby zálohování a až donedávna nepodporovalo pohledy, triggery a uložené procedury. Tyto vlastnosti jsou doplňovány teprve v posledních letech, kdy začaly nejčastějším uživatelům produktu, programátorům webových stránek, již poněkud scházet. Obr. 6: Logo databázového systému MySQL [15] MySQL Administrator MySQL Administrator je všestranný nástroj, který pomáhá při vyřizování nejrůznějších operací při správě serveru MySQL [2]. Dokáže například provádět následující operace: Spuštění a zastavení serveru Konfigurace serveru Zjišťování aktuálního stavu serveru Spuštění správy uživatelů (Správa přístupových práv) Prohlížení souborů protokolů Zálohování a obnovení databáze ze zálohy Vytvoření a správa databází Ovládání programu není nijak složité, přesto předpokládá alespoň základní znalosti správy MySQL. Program MySQL Administrator používá řada vývojářů v jazyce PHP pouze k vytvoření a správě databáze či tabulek. Databáze program označuje slovem Schemas. MySQL Query Browser MySQL Query Browser pomáhá při používání příkazů jazyka SQL a u verze MySQL 5.0 a vyšší také při vývoji a testování uložených procedur (stored procedures) [2]. Výsledky příkazů jazyka SQL se zobrazují v tabulkách. U jednoduchých dotazů (např. SELECT * 17

18 FROM tabulka) lze měnit jednotlivé záznamy přímo v tabulce, popřípadě do tabulky přidávat nové záznamy. MySQL Query Browser je do značné míry výsledkem zpětné vazby získané od mnoha uživatelů po dobu několika let [2] SQLite SQLite je relační databázový systém obsažený v relativně malé knihovně napsané v C. Je vyvíjen D. Richardem Hippem a šířen pod licencí public domain. Na rozdíl od databází založených na principu klient-server, kde je databázový server spuštěn jako samostatný proces, je SQLite pouze malá knihovna, která se přilinkuje k aplikaci a pomocí jednoduchého rozhraní ji lze začít využívat. Každá databáze je uložena v samostatném souboru.dbm (Database Manager), kde se data ukládají za použití jednoduchého primárního klíče do stejně velkých bloků a používá hašovacích technik pro rychlý přístup k datům při vyhledávání podle klíče [25]. V SQLite je implementován téměř celý standard SQL92. Databázi SQLite lze použít například v programovacích jazycích C, C++, Delphi, Java, Lua, PHP, Python, Perl, Ruby, Tcl. Předkompilované binární kódy jsou k dispozici pro Linux, Mac OS X a Windows. Obr. 7: Logo databázového systému SQLite [26] 3.3 PROSTOROVÁ NADSTAVBA DATABÁZE Rozšíření standardních databází o možnosti nativního ukládání geometrických vlastností objektů a aktivní práci s nimi PostGIS PostGIS je open source software, který přidává podporu pro geografické objekty objektově - relačnímu databázovému systému PostgreSQL. PostGIS implementuje specifikaci "Simple Features for SQL" (standard, který specifikuje uložení geografických dat v digitální podobě) konsorcia Open Geospatial Consortium (OGC - mezinárodní standardizační organizace založené na dobrovolné shodě). První verze byla vydána v roce 2001 společností 18

19 Refractions Research pod licencí GNU General Public Licence z [18]. Dostupný Obr. 8: Logo prostorové nadstavby PostGIS [22] MyGIS MySQL realizuje prostorové rozšíření specifikace Open Geospatial Consortium (OGC). Podporuje prostorové rozšíření umožňující vznik, skladování a analýzu geografických vlastností. Do verze MySQL jsou tyto funkce dostupné jen pro tabulky MyISAM. Verze MySQL podporuje už také InnoDB, NDB, BDB a ARCHIVE pro prostorové funkce. MySQL podporuje formáty WKT a WKB. Well-known text (WKT) formát geometrie je určen pro výměnu dat geometrie ve formě ASCII. WKB se používá k výměně dat geometrie jako binární proudy zastoupené BLOB hodnotami, které obsahují geometrické WKB informace. Podrobná dokumentace je dostupná na SpatiaLite Prostorové rozšíření SpatiaLite umožňuje ukládat v databázi SQLite geoprostorová data - podobně jako např. PostGIS pro databázový systém PostgreSQL [12]. Je vyvíjen a udržován Alessandrem Furierim. SpatiaLite podědilo po svém rodiči veškeré dobré vlastnosti: jednoduchost, robustnost, veškerá data jsou ukládána do jednoho souboru, nezávislost na platformě. SpatiaLite v současnosti podporuje formáty WKT a WKB. Implementovány jsou také některé SQL prostorové funkce jako AsText(), GeomFromText(), Area(), PointN() a podobně. Dokumentace a instalační soubory jsou dostupné na 19

20 Obr. 9: Logo prostorové nadstavby SpatiaLite [12] JanGeoDB JanGeoDB je určena k uložení vektorové reprezentace geodat. Jedná se o nativní geodatabází systému Janitor. Janitor pracuje s různými formáty dat. Každý z nich má svá omezení nebo není zcela otevřený. Bylo proto přikročeno k vytvoření vlastní geodatabáze Janitoru - jangeodatabáze (zkráceně JanGeoDB) [5]. Relační model JanGeoDB byl vytvořen na základě zkušeností. Základní požadavky na JanGeoDB: Ukládat jednotlivé objekty jako tvary - tj. body, linie a polygony. Tvary sdružovat do vrstev. Tvar nemusí být v žádné vrstvě, ale může být také ve více vrstvách. Vrstva má atributovou tabulku s tématickými informacemi o tvarech, které obsahuje. Geometrická informace o tvaruje je v určité projekci. Tvary v jedné vrstvě musí mít stejnou projekci. Projekce je definovaná pro nějaké území. 20

21 Obr. 10: Ukázka relačního datového modelu JanGeoDB [5] VOLBA DBMS A SPECIFIKACE DATOVÝCH TYPŮ Pro volbu DBMS byly stanoveny tyto požadavky: - jednoduchost, aby jeho použití neodrazovalo potenciální uživatele, kteří nemusí být právě počítačovými experty, - rozšířenost, aby měl dobrou podporu, jistou budoucnost a uživatelé s ním měli dostatek zkušeností, 21

22 - poskytnutí nástrojů pro udržení referenční integrity, - možnost naprogramovat dodatečnou funkcionalitu v rámci DBMS. Zvolen byl systém MySQL. A to s tím, že MySQL bude pilotní implementací, která bude později převedena i do jiných DBMS [5]. Uživatel Janitoru si pak bude moci vybrat DBMS, podle svých vlastních preferencí. Vývoj JanGeoDB byl pozastaven a nahrazen MyGIS. V současnosti je součástí projektu Survey systému Janitor. 3.4 DALŠÍ SOFTWAROVÁ ŘEŠENÍ Pro testování přístupu k databázím a pro využití dat v geodatabázi byly použity další nástroje a programy Janitor Janitor je prostorově orientovaný systém, umožňující pořizování a zpracování dat s územní vazbou, orientovaný na operační systém Windows. Systém je vyvíjen na Laboratoři GIS v CENIA (Česká informační agentura životního prostředí). Program je napsaný v jazyce C++ a je určený k získávání, organizaci, správě a analýze dat. Je tvořen samostatně pracujícími a vzájemně propojitelnými aplikacemi (JanMap, JanDat, DataBuilder, ConnAdmin, FieldGIS, JanIRS, SQLTools). Aplikace jsou postaveny tak, aby umožnily sběr dat v terénu včetně jejich prostorového určení, vedení datového skladu, zakládání a import, jak prostorových, tak ostatních dat a jejich editaci, tvorbu a modifikaci formulářů a sestav, výstupy. Základem systému je otevřená technologie umožňující tvorbu formulářů k zadávání a správě dat, včetně podpory ukládání prostorových dat (GIS). Janitor pracuje s daty uloženými v prostředí podporovaných databázových serverů (PostgreSQL, MySQL) a využívá dotazovací jazyk SQL92, včetně modifikací daného databázového stroje. Janitor umožňuje zobrazit datové soubory s prostorovou orientací (mapová projekce, zeměpisné souřadnice) v GIS aplikaci JanMap a publikovat pomocí formulářů a dokumentů vytvořených pomocí nástroje DataBuilder [14]. Poslední zatím dostupná verze je verze Janitor Dokumentace a instalační soubory jsou dostupné na JanMap byl používán pro zobrazování a import vrstev. Tento software dokáže zobrazovat vrstvy z PostGIS i MyGIS, a také umí do obou databází importovat (platilo do 22

23 verze PostgreSQL stávající verze nepodporují import pro změnu struktury knihovny v PostgreSQL). Pomocí SQLTools je možné se na obě databáze dotazovat. Aby se vrstvy mnou vytvořené mohly do JanMapu načíst, bylo třeba vložit do tabulky geometry_columns v PostGIS a MyGIS záznamy (INSERT) o vytvořených tabulkách (postup pro PostGIS viz. kap ). Ukázka kódu v MyGIS: 1 MkINgeometry_columns: INSERT INTO geometry_columns( F_TABLE_NAME, F_GEOMETRY_COLUMN, COORD_DIMENSION, SRID, TYPE) VALUES ('t1', 'geometry', 3, 1, 'POINT'); Pro načtení vrstev se vybere z nabídky SOUBOR položka PŘIPOJENÍ KE GEODATABÁZÍM, nastaví se OGR připojení na konkrétní databázi a poté už si stačí jen vybrat, které vrstvy chceme načíst. Obr. 11: Logo systému Janitor [13] Quantum GIS (QGIS) Quantum GIS (QGIS) je uživatelsky přívětivý Open Source geografický informační systém (GIS) pod licencí GNU General Public Licence [21]. QGIS je oficiálním projektem Open Source Geospatial Foundation (OSGeo). Běží na Linux, Unix, Mac OS X a Windows a podporuje řadu vektorových, rastrových a databázových formátů a funkcí. Základní možnosti programu rozšiřují zásuvné moduly. Pomocí nich se dá například importovat shapefile do PostgreSQL, vytvořit mapfile pro UMN MapServer, připojit si WFS či využít QGIS jako grafické rozhraní pro funkce softwaru GRASS [22]. Lze nahrávat vrstvy z PostGIS a SpatiaLite. Poslední dostupná verze QGIS je Enceladus. Instalační soubory dostupné z 1 MkINgeometry_columns je označení kódu, podle kterého jej můžeme najít na CD přiloženému k bakalářské práci. Všechny SQL kódy v této práci jsou označeny stejným způsobem: M název databáze (M MyGIS, P PostGIS, S SpatiaLite)k(kód)IN zkratka příkazu (INSERT)geometry_columns 23

24 Obr. 12: Logo systému Quantum GIS [21] Tento software byl používán pro zobrazování vrstev vytvořených v PostGIS a SpatiaLite, a také pro importování shapefilů do databáze PostgreSQL. Pro načtení vytvořených vrstev do QGIS, bylo potřeba do tabulky geometry_columns v PostGIS vložit záznamy (INSERT) o vytvořených tabulkách. Stejnou věc bylo nutné provést i v SpatiaLite. Ukázky kódů v PostGIS a SpatiaLite: PkINgeometry_columns: INSERT INTO geometry_columns( f_table_catalog, f_table_schema, f_table_name, f_geometry_column, coord_dimension, srid, "type") VALUES ('', 'public', 'T2', 'geometry', 2, -1, 'LINESTRING'); SkINgeometry_columns: INSERT INTO "geometry_columns" VALUES ('T1', 'geometry', 'POINT', 2, 4156, 0); Dále už stačilo pouze spustit program, vybrat Přidat vrstvu z PostGIS nebo SpatiaLite, nastavit připojení k databázi, připojit, a poté už jen vybrat z nabídky vrstev tu, kterou chceme zobrazit. Na obrázku č.13 níže je nástroj pro import shapefilů do databáze PostgreSQL, označen na liště nástrojů jako modrý slon. Po spuštění tohoto nástroje se musí nastavit připojení ke konkrétní databázi a přidat shapefile z pevného disku, který chceme do databáze importovat. 24

25 Obr. 13: Nástroj na import shapefilů do PostGIS FWTools Shell FWTools je sada open source programů pro geografické informační systémy vytvořená Frankem Warmerdamem (iniciály FW) [8]. Tato sada nástrojů je vyrobena pro platformy Microsoft Windows a Linux a obsahuje několik balíčků (OpenEV, GDAL/OGR, MapServer, PROJ.4, OGDI, Python). FWTools Shell je nástroj pro řízení dat. Jde o příkazový řádek pro zadávání FWTools příkazů. Obr. 14: Ukázka příkazového řádku FWTools Shell s kódem OGR nástroje ogrinfo 25

26 3.4.4 OpenEV OpenEV je výkonný open source desktopový prohlížeč. Umožňuje uživatelům zkoumat údaje v některém z obrazových a vektorových datových formátů podporovaných Geospatial Data Abstraction Library (GDAL/OGR). OpenEV je dobrým příkladem toho, jak jsou GDAL/OGR schopnosti přístupné prostřednictvím jiných programovacích jazyků. OpenEV je založen na užívaní Pythonu, který dělá OpenEV rozšiřitelným a silným, protože má větší flexibilitu tohoto jazyka běžícího za ním [3]. Nejsilnějším rysem OpenEV může být jeho schopnost používat Python schopností v rámci OpenEV, což umožňuje přístup k GDAL/OGR funkcím a mnoho dalších Python modulů, které jsou potřeba. Obr. 15: Software OpenEV s GDAL nástrojem gdal_translate GDAL (Geospatial Data Abstraction Library) je knihovna určená pro čtení a zápis rastrových GIS formátů. Knihovna je vyvíjena pod hlavičkou Open Source Geospatial Foundation a vydávána pod licencí X/MIT [9]. Knihovna používá jednoduchý abstraktní datový model pro všechny podporované datové formáty. Kromě toho nabízí také řadu užitečných nástrojů pro příkazovou řádku určených pro konverzi a zpracování dat. 26

27 Obr. 16: Logo knihovny GDAL [9] GDAL byla původně vyvíjena Frankem Warmerdamem a to do verze 1.3.2, posléze byla tato role oficiálně převedena na GDAL/OGR Project Management Committee, která je součástí Open Source Geospatial Foundation [10]. GDAL je součástí balíčku FWTools. GDAL (často nazývaný goodle) má tři důležité funkce: 1) podporuje více než 40 různých rastrových formátů. 2) je k dispozici k použití pro další aplikace. Jakékoliv aplikace využívající GDAL knihovny, mají přístup všech podporovaných formátů, takže vlastní programování pro každý požadovaný formát je zbytečné. 3) předkompilované nástroje pomohou využít funkce GDAL programové knihovny, tudíž není třeba napsat svůj vlastní program [3]. GDAL podporuje desítky rastrových formátů, seznam je uveden v Příloze 1. Tento seznam je převzat z webových stránek GDAL PROGRAMOVACÍ KNIHOVNY Důležitý rys GDAL je jeho dostupnost jako soubor programovacích knihoven. Vývojáři používající různé jazyky, mohou využít výhody GDAL, která jim dává více času soustředit se na jiné úkoly. Vlastní programování pro podporu formátů již k dispozici díky GDAL není nutné: znovu použitelnost je hlavní síla GDAL. Schopnost přímého spojení s GDAL knihovnami pomohlo přidat nové funkce do řady GISových a vizualizačních programů, komerčních i open source [3]. GDAL internetové stránky uvádí několik projektů, které využívají GDAL, včetně FME, MapServer, GRASS, Quantum GIS, Cadcorp SIS terénu a Virtual Terezin Project. GDAL NÁSTROJE gdalinfo - vypíše informace o rastrovém souboru (metadata) Ukázka kódu zadávaného pomocí příkazového řádku: 27

28 C:\Documents and Settings\Administrator>gdalwin32-1.6\bin\gdalinfo \databp\stin_ter.tif gdal_translate - vytvoří kopii souboru s danými parametry výstupu Ukázka kódu zadávaného pomocí příkazového řádku: C:\Documents and Settings\Administrator>gdalwin32-1.6\bin\gdal_translate -of "JPEG" \databp\stin_ter.tif \databp\stin_teren.jpg - ze souboru ve formátu.tif vytvoří jeho kopii ve formátu.jpg. gdalwarp - transformuje obrazová data do cílového souřadnicového systému gdaladdo - přidá pohledy (overlays) do rastrového souboru gdaltindex - vytvoří tileindex pro UMN Mapserver gdal_contour - vytvoří vrstevnice z DEM (digitální výškový model) rgb2pct.py - konvertuje data z 24-bitové do 8-bitové RGB palety pct2rgb.py - konvertuje data z 8-bitové do 24-bitové RGB palety gdal_merge.py - sestaví mozaiku z několika obrazových souborů gdal2tiles.py - vytvoří TMS dlaždice gdal_rasterize - rasterizuje vektorová data gdaltransform - transformuje souřadnice nearblack - převede barevné hodnoty blízké černé či bílé na danou hodnotu gdal_retile.py - vytvoří dlaždice a sestaví pyramidy gdal_grid - vytvoří rastrový soubor z bodových dat gdal_config - konfigurační nástroj knihovny OGR Simple Features Library je C++ open-source knihovna (a příkazový řádek) poskytující čtení (a někdy i zápis), přístup do různých formátů vektorových souborů včetně ESRI shapefiles, S-57, SDTS, PostGIS, Oracle Spatial, Mapinfo mid/mif a TAB formátů. OGR je součástí knihovny GDAL [16]. OGR je součástí balíčku FWTools. OGR podporuje více než 16 vektorových formátů, seznam je převzat z webových stránek OGR a uveden v Příloze 2. OGR obsahuje nástroje podobné GDAL rastrovým nástrojům [3]. OGR je součástí GDAL/OGR projektu. 28

29 OGR NÁSTROJE Stejně jako GDAL, OGR obsahuje sadu knihoven, které mohou být použity v aplikacích. OGR také přichází s několika užitečnými nástroji: ogrinfo - vypíše informace o vektorovém souboru (metadata) Ukázky kódů (zadávaných pomocí FWTools Shell): >ogrinfo "PG:dbname=prostorova user=postgres password=libor host=localhost port=5432" ctverce - zobrazí informace o vrstvě ctverce v databázi v PostgreSQL >ogrinfo \databp obojzivelnici -where "poznamka='juvenilní'" - zobrazí informace o vybraných prvcích a prvky z vrstvy obojzivelnici, které odpovídají podmínce where >ogrinfo \databp obojzivelnici -sql "select id_tax from obojzivelnici where id_tax = 'Salamandra salamandra'" - zobrazí informace o vybraných prvcích a prvky z vrstvy obojzivelnici, které odpovídají sql dotazu ogr2ogr - vytvoří kopii souboru s danými parametry výstupu Ukázky kódů: >ogr2ogr -f "ESRI Shapefile" c:\silnice.shp "PG:dbname=prostorova user=postgres password=libor host=localhost port=5432" silnice - vytvoří shapefile silnice.shp z tabulky silnice v PostgreSQL databázi prostorova >ogr2ogr -f "PostgreSQL" "PG:dbname=prostorova user=postgres password=libor host=localhost port=5432" \databp\q04_71.shp -nln ctverce - vloží shapefile q04_71.shp do databáze prostorova a vytvořenou tabulku pojmenuje (- nln) ctverce ogrtindex - vytvoří tileindex pro UMN Mapserver OGR, jako GDAL, pomáhá v přístupu, konverzi a manipulaci s daty, konkrétně vektorových dat. OGR lze použít také se skriptovacími jazyky, což umožňuje programovou práci s daty [3]. GDAL/OGR balíky obvykle přicházejí s OGR moduly pro Python. Kromě Pythonu také existuje podpora Java a C # pro GDAL/OGR shp2pgsql PostGIS přichází s nástroji pro příkazový řádek s názvem pgsql2shp a shp2pgsql. Ty mohou být použity pro konverzi z PostGIS tabulky do formátu shapefile a zpět. 29

30 Nástroj shp2pgsql převádí tvary do textové podoby SQL příkazů. Je nutné předat je do textového souboru pro pozdější načítání nebo je psql příkazem používat okamžitě. Původní nastavení ukládá geometrická data do pole the_geom. # shp2pgsql silnice_chkobk.shp public.silnice > cesty.sql # psql -d postgisdatabase -f cesty.sql Verze PostGIS 1.5 obsahuje shp2pgsql GUI, který se jmenuje Shape File to PostGIS Importer, kterým se lze jednoduše připojit k databázi PostgreSQL a nahrát do ní vlastní shapefile. Obr. 17: Nástroj pro import shapefilů do PostGIS 30

31 3.5 ULOŽENÍ DAT V GEODATABÁZI Simple Features jsou OpenGIS standard (verze 1.2.0), který specifikuje digitální ukládání geografických dat (bod, linie, polygon, multi-bod, multi-linie, atd.), jak s prostorovými, tak i s neprostorovými atributy [23]. Simple Features jsou založeny na 2D geometrii s lineární interpolací mezi vrcholy. Obecně platí, že 2D geometrie je jednoduchá, neobsahuje-li překřížení prvku sebe samým. OpenGIS Simple Features specifikace definuje různé prostorové subjekty, které mohou být použity k vytvoření nové geometrie z existující geometrie. Plné znění standardu je dostupné na Definuje dva formáty pro popis geografických dat (WKT a WKB) Well-known text (WKT) je textový značkovací jazyk určený pro popis vektorové geometrie geografických objektů, prostorových referenčních systémů, popřípadě transformačních parametrů mezi jednotlivými souřadnicovými systémy. 1) geometrické objekty Geometrické objekty, které lze pomocí WKT popsat jsou: body, linie, polygony, TIN, polyhedrony. Multigeometrické typy dovolují použít v jednom objektu více geometrických typů stejné dimenze. Pro uložení geometrie různých dimenzí slouží kolekce geometrie. Souřadnice mohou být 2D (x, y), 3D (x, y, z), 4D (x, y, z, m), kde m je hodnota lineárního referenčního systému nebo 2D s hodnotou m (x, y, m). Klíčové slovo EMPTY definuje tzv. "prázdnou" geometrii. Prvek, který neobsahuje žádné lomové body (souřadnice). Zápis ve formě WKT je často používán v OGC specifikacích, PostGIS například obsahuje funkce pro konverzi geometrie z/do formy WKT. Příklad geometrie zapsané ve formě WKT: POINT(6 10) LINESTRING(3 4,10 50,20 25) POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2, 3 3, 2 3,2 2)) MULTIPOINT( , ) MULTILINESTRING((3 4,10 50,20 25),(-5-8,-10-8,-15-4)) 31

32 MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2, 3 3, 2 3,2 2)),((3 3,6 2,6 4,3 3))) GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10)) 2) prostorové referenční systémy Prostorový referenční systém obsahuje v zápisu WKT informace o geodetickém datu, geoidu, souřadnicovém systému a kartografickém zobrazení. WKT je používán řadou GIS aplikací a knihoven, např. ESRI používá WKT ve formátu Shapefile (soubor *.prj). Příklad definice systému S-JTSK ve formě WKT: PROJCS["krovak", GEOGCS["bessel", DATUM["unknown", SPHEROID["Bessel_1841", , ], TOWGS84[570.8,85.7,462.8,4.998,1.587,5.261,3.56]], PRIMEM["Greenwich",0], UNIT["degree", ]], PROJECTION["Krovak"], PARAMETER["latitude_of_center",0], PARAMETER["longitude_of_center",0], PARAMETER["azimuth",0], PARAMETER["pseudo_standard_parallel_1",0], PARAMETER["scale_factor",1], PARAMETER["false_easting",0], PARAMETER["false_northing",0], UNIT["meter",1]] 3) transformace Formát WKT může popisovat metodu transformace a transformační parametry pro konverzi mezi dvěma prostorovými souřadnicovými systémy. Databáze podporující WKT: MySQL, PostgreSQL s PostGIS, SQLite se SpatiaLite, Oracle, MS SQL Server Well-known binary (WKB) binární forma používaná pro převod a uložení informací v databázovém systému jako je např. PostGIS. Formát je kontrolován konsorciem Open 32

33 Geospatial Consortium (OGC) a popsán ve specifikacích Simple Feature Access a Coordinate Transformation Service. Všechny souřadnice se zde ukládají jako hodnoty Double precision (64bitové číslo s plovoucí desetinnou čárkou) Příklad geometrie zapsané ve formě WKB: F03F F03F Hodnota odpovídá hodnotě POINT(1 1) ve formátu WKT. Pozn. Rastrová data se ukládají jako Binary large object (BLOB), je označení pro datový typ blíže nespecifikovaných binárních dat v databázi. Obvykle se jedná o obrázky, zvukové záznamy nebo jakákoli jiná data, která jinak bývají uložena v samostatných souborech [7]. BLOB je tedy obecný datový typ, který explicitně vyjadřuje, že databáze nemá informace o tom, jak jeho obsah interpretovat. Na rozdíl od jiných datových typů, kdy databáze může číselné a časové údaje poskytovat ve vhodném formátu, případně textové údaje konvertovat do požadované kódové stránky, obsah BLOB položky obdrží klientská aplikace přesně tak, jak byl binárně uložen a o interpretaci se musí postarat sama. 3.6 JAZYK SQL Jazyk SQL je standardním neprocedurálním relačním dotazovacím jazykem, podporovaným většinou dostupných databázových systémů. SQL je zkratka anglických slov Structured Query Language (strukturovaný dotazovací jazyk). Příkazy jazyka SQL obecně umožňují úplnou kontrolu nad systémem řízení báze dat. Podle svého účelu se dělí do následujících skupin: Příkazy pro manipulaci s daty (SELECT, INSERT, UPDATE, DELETE, ). Jsou to příkazy pro získání dat z databáze a pro jejich úpravy. Označují se zkráceně DML Data Manipulation Language ( jazyk pro manipulaci s daty ). Příkazy pro definici dat (CREATE, ALTER, DROP, ). Těmito příkazy se vytvářejí struktury databáze tabulky, indexy, pohledy a další objekty. Vytvořené struktury lze také upravovat, doplňovat a mazat. Tato skupina příkazů se nazývá zkráceně DDL Data Definition Language ( jazyk pro definici dat ). Příkazy pro řízení dat (GRANT, REVOKE, START TRANSACTION, COMMIT, ROLLBACK). 33

34 Do této skupiny patří příkazy pro nastavování přístupových práv a řízení transakcí. Označují se jako DCL Data Control Language ( jazyk pro ovládání dat ), někdy také TCC Transaction Control Commands ( jazyk pro ovládání transakcí ). Pozn. Úlohy v této bakalářské práci se týkají pouze prvních dvou skupin příkazů jazyka SQL Spatial SQL (Prostorové SQL) Prostorové databáze jsou databáze kombinující konvenční a prostorová data (tedy data vztahující se k poloze objektů, jejich velikosti atd.) [28]. V aplikacích využívajících prostorové informace, jako jsou různé geografické informační systémy (GIS) či CAD/CAM systémy, tedy vznikla potřeba vhodného dotazovacího jazyka, který by umožňoval pokládat: dotazy pouze na prostorové vlastnosti (vypiš města vzdálená od Prahy méně než 20 km) dotazy pouze na neprostorové vlastnosti (kolik lidí žije v Olomouci) dotazy kombinující oboje vlastnosti (vypiš počty dětí všech majitelů pozemků sousedících s parcelou č. 10) Použití běžných relačních dotazovacích jazyků pro zpracování dotazů na prostorová data je velmi obtížné, neboť tyto jazyky nemají pro prostorová data žádnou podporu (predikáty, operace) a neměly ani žádný vhodný datový typ (až do vzniku konceptu ADT) a tudíž data musela být ukládána do číselných a řetězcových proměnných, a proto musel uživatel přesně znát strukturu uložení prostorových dat. V některých komerčních systémech se ovšem tento způsob udržel do dneška jen s tím rozdílem, že dnes již obsahují specializované funkce a predikáty pro prostorové operace. Bylo tedy třeba navrhnout dotazovací jazyk, který by poskytoval jednoduché, intuitivní a snadno použitelné rozhraní pro dotazy i editaci obou druhů dat. Vzhledem k výše uvedenému se jako rozumné jevilo rozšířit funkcionalitu SQL o práci s prostorovými daty. Tento jazyk byl navržen v r J. Egenhoferem, aby odstranil nedostatky konvenčních databázových jazyků. Stejně jako v klasickém SQL se pracuje s příkazy ve formátu SELECT - FROM - WHERE, výsledky dotazů jsou relace. Spatial SQL neobsahuje funkcionalitu pro editování dat. 34

35 PROSTOROVÁ DOMÉNA K doménám SQL byla přidána nová doména "spatial" (prostorový) pro zajištění vysoké úrovně abstrakce prostorových dat [28]. K této doméně patří řada prostorových operací a predikátů, které budou zmíněny později. Zmíněná doména se dělí ještě na 4 poddomény "spatial_0", "spatial_1", "spatial_2", "spatial_3" pro objekty příslušných dimenzí (tedy spatial_0 pro 0-rozměrné objekty - body, atd.). Atribut z domény spatial se nazývá spatial atribut (prostorový atribut) a relace s tímto atributem spatial relation (prostorová relace). PROSTOROVÉ OPERACE Prostorové operace můžeme chápat jako funkce na prostorových objektech. Můžeme je rozdělit na: Unární prostorové operátory přistupují k jedné prostorové položce prostorové relace. o o o Topologické unární operátory - určují dimenzi, hranici a vnitřek objektu, tedy: dimension - dimenze objektu (0 pro body, 1 pro přímky/úsečky atd.) boundary - hranice objektu. interior - celý objekt mimo svou hranici (doslovně "všechny části objektu, které nejsou v jeho hranici") Tyto operátory mají specializované varianty pro jednotlivé dimenze (třeba plocha má definovány operace boundingnodes a boundingedges - pro určení ohraničujících bodů / úseček), pro 1D a 2D objekty jsou definovány boundary, boundingnodes, boundingedges, interior, interiornodes, interioredges, interiorareas. Druhá skupina unárních operátorů - aritmetické operace. Tyto závisí na dimenzi objektu. lenght (délka) pro 1D objekty area (plocha) pro 2D objekty volume (objem) pro 3D objekty Kombinací topologických a aritmetických vlastností lze získat složitější operátory: perimeter (obvod) pro mnohoúhelník extreme coordinates (extrémní souřadnice), complement (doplněk) a convex hull (konvexní obal) 35

36 Binární prostorové operátory počítají hodnotu ze dvou prostorových položek prostorové relace. o o distance (vzdálenost) - výsledkem je nezáporné reálné číslo direction (směr) - úhel udávající azimut; tyto mohou být porovnávány a odečítány k zjištění úhlu jimi sevřeného. Na výsledky těchto operací lze používat standardní agregační funkce SQL (min, avg). Prostorové operátory se zapisují v prefixové notaci - jako funkce (př. distance(potok.geometry, silnice.geometry)). Operátory se mohou vyskytnout v SELECT klauzuli, či v libovolné WHERE klauzuli jako část neprostorového predikátu. Tedy mohou se v dotazech používat na stejných místech jako agregační funkce. PROSTOROVÉ PREDIKÁTY Prostorové predikáty (spatial relationships) jsou relace (v matematickém smyslu) mezi dvěma prostorovými atributy - jejich výsledkem je tedy Boolean hodnota a mohou být přímo použity jako predikáty v klauzuli WHERE. Tyto predikáty se zapisují stejně jako ostatní v SQL - infixově; jsou definovány přímo nad generalizovanou doménou spatial. Binární topologické predikáty jsou založeny na množině průniků hranic a vnitřků dvou objektů - tyto specifikace jsou nezávislé na dimenzi a predikáty mohou být použity na dva objekty libovolných dimenzí. o o o o o o disjoint (disjunktnost objektů) meet overlap inside/contains covers/coveredby equal (totožnost objektů) Tyto predikáty byly do Spatial SQL začleněny pro zvýšení úrovně abstrakce, aby uživatel nemusel mít matematické znalosti. V závislosti na zvoleném uspořádání lze také používat predikáty left/right, north/south či over/under. DEFINICE TABULEK S PROSTOROVÝMI DATY Obdobně jako v klasickém SQL. Příklad 1. - definice tabulky mesta s řetězcovým atributem jmeno a prostorovým obsazenyprostor (zde město chápeme jako 2D objekt). 36

37 CREATE TABLE mesta (jmeno char(20) obsazenyprostor spatial_2); Příklad 2. - Může být užitečné definovat město jako mnohoúhelník (obsazenyprostor) na podrobných mapách, nebo jako bod (poloha) na méně podrobných. CREATE TABLE city (jmeno char(20) obsazenyprostor spatial_2 poloha spatial_0); VÝBĚR UKÁZÁNÍM PREDIKÁT PICK Predikát PICK umožňuje uživateli formulovat dotazy s referencí na prostorové objekty viditelné na obrazovce. Tento predikát může kvalifikovat každý prostorový atribut ve WHERE klausuli. Sémantika výběru závisí na prostorové dimenzi cíle - při odkazování na objekty vykreslené v 2D plánu. Cílem je buď 0 či 1-rozměrný objekt nejblíže ukázání a nebo 2D objekt, který místo ukázání obsahuje. Nejasnosti jsou řešeny dle toho, jaký typ objektu uživatel v dotazu používá. Jsou-li dva objekty požadovaného typu od ukázání stejně daleko (řídký případ), je uživateli nabídnut seznam možností, ze kterého může zvolit. Příklad 1. - mapa států s hranicemi a velkými městy (tyto znázorněny body), uživatel se ptá na jméno města na které kliknul. SELECT jmeno FROM mesta WHERE poloha = PICK; Příklad 2. - ukáže-li uživatel na stejné místo a zadá následující dotaz, dostane název příslušného státu. SELECT jmeno FROM staty WHERE poloha = PICK; 37

38 4. VSTUP A SPRÁVA GEOOBJEKTŮ 4.1 Vytvoření databáze (CREATE DATABASE) Prvním krokem při zakládání databáze je vytvoření nové prázdné prostorové databáze, do které později přibudou nové tabulky se záznamy, které můžeme vkládat, upravovat a dotazovat se na ně. PostGIS: Existují dvě možnosti, jak vytvořit databázi v pgadminiii. První možností je tlačítko pro SQL dotazy na liště nástrojů. Toto tlačítko není aktivní pokud neklikneme na některou již vytvořenou databázi. Obr. 18: Prostředí pgadminiii s aktivním tlačítkem pro SQL dotazy Po kliknutí na toto tlačítko se otevře nové okno pro dotazování (Query), zde se zadá příkaz CREATE DATABASE. Druhou možností je kliknout pravým tlačítkem na Databáze ve Stromu objektů nebo na záložku Upravit Nový objekt a zvolit NOVÁ DATABÁZE. V obou případech se otevře dialogové okno, ve kterém si lze navolit parametry nové databáze. Chceme vytvořit prostorovou databázi, která se bude jmenovat postgisdatabase, kódování bude UTF8 a bude vytvořena podle šablony template_postgis, která zaručí, že se jedná o prostorovou databázi a bude mít vytvořeny zásadní tabulky spatial_ref_sys a geometry_columns. Ukázka kódu, který lze zadat do okna pro SQL dotazování: PkCD: CREATE DATABASE postgisdatabase WITH ENCODING='UTF8' TEMPLATE=template_postgis CONNECTION LIMIT=-1; 38

39 MyGIS: V MySQL Query Browser se databáze označují jako Schemata. Databázi lze vytvořit tak, že klikneme pravým tlačítkem do záložky Schemata a zvolíme CREATE NEW SCHEMA. Obr. 19: Nabídka možností v záložce Schemata v nástroji MySQL Query Browser Poté už stačí novou databázi jenom pojmenovat (mygisdatabase). MySQL nevytvoří do nového schématu metadatové tabulky geometry_columns a spatial_ref_sys. Tyto tabulky se vytvoří pokud do databáze importujeme shapefile nebo si je můžeme vytvořit sami (viz. kap. 4.2) Pokud vytváříme databázi (schéma) pomocí MySQL příkazového řádku zadáme příkaz: MkCD: CREATE DATABASE mygisdatabase; SpatiaLite: Ve SpatiaLite musíme pro vytvoření databáze zvolit z nabídky FILES položku Creating a New (empty) SQLite DB a nebo tuto položku vybrat přímo z lišty nástrojů. Obr. 20: Prostředí SpatiaLite se zvýrazněným tlačítkem pro vytvoření databáze Poté už stačí novou databázi pouze pojmenovat (spatialitedatabase) a vybrat místo na disku, kam ji uložíme. Nově vytvořená databáze už obsahuje metadatové tabulky spatial_ref_sys a geometry_columns. 39

GIS Geografické informační systémy

GIS Geografické informační systémy GIS Geografické informační systémy GIS Spatial SQL Dotazy nad prostorovými daty 11 požadavků na prostorový dotazovací jazyk Prostorové operace Prostorové predikáty Příklad užití Spatial SQL Potřeba vhodného

Více

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty

Více

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

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb:

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb: Technologie Marushka Základním konceptem technologie Marushka je použití jádra, které poskytuje přístup a jednotnou grafickou prezentaci geografických dat. Jádro je vyvíjeno na komponentním objektovém

Více

Databáze v MS ACCESS

Databáze v MS ACCESS 1 z 14 19.1.2014 18:43 Databáze v MS ACCESS Úvod do databází, návrh databáze, formuláře, dotazy, relace 1. Pojem databáze Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele,

Více

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc. 1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace

Více

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

Manuál k aplikaci FieldGIS v.2.27

Manuál k aplikaci FieldGIS v.2.27 Manuál k aplikaci FieldGIS v.2.27 Petr Pala Copyright 2008 CENIA, laboratoř GIS 1. Úvod 1. Systémové požadavky 2. Části základního okna aplikace 1. Menu 1.1. File 1.2. Tools 1.3. Hlavní lišta 2. Editor

Více

Databázové systémy trocha teorie

Databázové systémy trocha teorie Databázové systémy trocha teorie Základní pojmy Historie vývoje zpracování dat: 50. Léta vše v programu nevýhody poměrně jasné Aplikace1 alg.1 Aplikace2 alg.2 typy1 data1 typy2 data2 vytvoření systémů

Více

Digitální mapa veřejné správy Plzeňského kraje - část II.

Digitální mapa veřejné správy Plzeňského kraje - část II. Příloha č. 1 Zadávací dokumentace Dodávka základního SW pro projekt DMVS PK Digitální mapa veřejné správy Plzeňského kraje - část II. Zadávací dokumentace výběrového řízení: "Dodávka základního SW pro

Více

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19 3 Obsah Novinky v tomto vydání 10 Význam základních principů 11 Výuka principů nezávisle na databázových produktech 12 Klíčové pojmy, kontrolní otázky, cvičení, případové studie a projekty 12 Software,

Více

Datový sklad KGI/APGPS. RNDr. Vilém Pechanec, Ph.D. Univerzita Palackého v Olomouci

Datový sklad KGI/APGPS. RNDr. Vilém Pechanec, Ph.D. Univerzita Palackého v Olomouci Datový sklad KGI/APGPS RNDr. Vilém Pechanec, Ph.D. Univerzita Palackého v Olomouci Univerzita Palackého v Olomouci INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ Environmentální vzdělávání rozvíjející uplatnění v praxi

Více

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

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE 2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy

Více

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo

Více

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz Databáze II 1. přednáška Helena Palovská palovska@vse.cz Program přednášky Úvod Třívrstvá architektura a O-R mapování Zabezpečení dat Role a přístupová práva Úvod Co je databáze Mnoho dat Organizovaných

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 1 4 5 Oracle průvodce správou,

Více

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou:

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou: Relační databáze Pojem databáze, druhy databází Databází se myslí uložiště dat. V době začátků využívání databází byly tyto členěny hlavně hierarchicky, případně síťově (rozšíření hierarchického modelu).

Více

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata Databáze Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu Bedřich Košata K čemu jsou databáze Ukládání dat ve strukturované podobě Možnost ukládat velké množství dat

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL 4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená

Více

Databázové systémy úvod

Databázové systémy úvod Databázové systémy úvod Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2012/13 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal

Více

Reliance 3 design OBSAH

Reliance 3 design OBSAH Reliance 3 design Obsah OBSAH 1. První kroky... 3 1.1 Úvod... 3 1.2 Založení nového projektu... 4 1.3 Tvorba projektu... 6 1.3.1 Správce stanic definice stanic, proměnných, stavových hlášení a komunikačních

Více

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

Více

Databáze SQL SELECT. David Hoksza http://siret.cz/hoksza

Databáze SQL SELECT. David Hoksza http://siret.cz/hoksza Databáze SQL SELECT David Hoksza http://siret.cz/hoksza Osnova Úvod do SQL Základní dotazování v SQL Cvičení základní dotazování v SQL Structured Query Language (SQL) SQL napodobuje jednoduché anglické

Více

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání Čtvrtek 3. listopadu Makra v Excelu Obecná definice makra: Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS Excel vykonal jako odezvu na nějakou námi definovanou

Více

BALISTICKÝ MĚŘICÍ SYSTÉM

BALISTICKÝ MĚŘICÍ SYSTÉM BALISTICKÝ MĚŘICÍ SYSTÉM UŽIVATELSKÁ PŘÍRUČKA Verze 2.3 2007 OBSAH 1. ÚVOD... 5 2. HLAVNÍ OKNO... 6 3. MENU... 7 3.1 Soubor... 7 3.2 Měření...11 3.3 Zařízení...16 3.4 Graf...17 3.5 Pohled...17 1. ÚVOD

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi. Databáze Základní pojmy Pojem databáze označuje obecně souhrn informací, údajů, dat o nějakých objektech. Úkolem databáze je hlídat dodržení všech omezení a dále poskytovat data při operacích. Objekty

Více

Mapa Česka: www.mapa-ceska.cz

Mapa Česka: www.mapa-ceska.cz Mapa Česka: www.mapa-ceska.cz Mapový portál Mapa Česka, který je dostupný na internetové adrese www.mapa-ceska.cz, byl vytvořen v roce 2014 v rámci bakalářské práce na Přírodovědecké fakultě Univerzity

Více

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4 CRM SYSTÉM KORMORÁN PŘÍRUČKA ADMINISTRÁTORA Obsah 1 Administrace systému 3 1.1 Uživatelské účty.................................. 3 1.2 Přístupová práva................................. 3 1.3 Moduly.......................................

Více

Mapový server Marushka. Technický profil

Mapový server Marushka. Technický profil Technický profil Úvodní informace Mapový aplikační server Marushka představuje novou generaci prostředků pro publikaci a využívání dat GIS v prostředí Internetu a intranetu. Je postaven na komponentové

Více

Možnosti tisku v MarushkaDesignu

Možnosti tisku v MarushkaDesignu 0 Možnosti tisku v MarushkaDesignu OBSAH 1 CÍL PŘÍKLADU...2 2 PRÁCE S PŘÍKLADEM...2 3 UKÁZKA DIALOGOVÉHO OKNA...3 4 STRUČNÝ POPIS PŘÍKLADU V MARUSHKADESIGNU...5-1 - 1 Cíl příkladu V tomto příkladu si ukážeme

Více

Business Intelligence

Business Intelligence Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma

Více

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná. Průběžná klasifikace Nová verze modulu Klasifikace žáků přináší novinky především v práci s průběžnou klasifikací. Pro zadání průběžné klasifikace ve třídě doposud existovaly 3 funkce Průběžná klasifikace,

Více

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML ROZHRANÍ ESA XML Ing. Richard Vondráček SCIA CZ, s. r. o., Thákurova 3, 160 00 Praha 6 www.scia.cz 1 OTEVŘENÝ FORMÁT Jednou z mnoha užitečných vlastností programu ESA PT je podpora otevřeného rozhraní

Více

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost

Více

Alena Malovaná, MAL305

Alena Malovaná, MAL305 Alena Malovaná, MAL305 GML WFS WMF Geografický značkovací jazyk (Geographic Markup Language - GML) Jedná se o velmi rozšířený standard pro popis geodat umožňující sdílení i integraci dat. Jeho základem

Více

1 Tabulky Příklad 3 Access 2010

1 Tabulky Příklad 3 Access 2010 TÉMA: Vytvoření tabulky v návrhovém zobrazení Pro společnost Naše zahrada je třeba vytvořit databázi pro evidenci objednávek o konkrétní struktuře tabulek. Do databáze je potřeba ještě přidat tabulku Platby,

Více

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. 2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. GEOVAP, spol. s r. o. Čechovo nábřeží 1790 530 03 Pardubice Česká republika +420 466 024 618 http://www.geovap.cz V dokumentu použité názvy programových

Více

FORTANNS. havlicekv@fzp.czu.cz 22. února 2010

FORTANNS. havlicekv@fzp.czu.cz 22. února 2010 FORTANNS manuál Vojtěch Havlíček havlicekv@fzp.czu.cz 22. února 2010 1 Úvod Program FORTANNS je software určený k modelování časových řad. Kód programu má 1800 řádek a je napsán v programovacím jazyku

Více

RELAČNÍ DATABÁZE ACCESS

RELAČNÍ DATABÁZE ACCESS RELAČNÍ DATABÁZE ACCESS 1. Úvod... 2 2. Základní pojmy... 3 3. Vytvoření databáze... 5 4. Základní objekty databáze... 6 5. Návrhové zobrazení tabulky... 7 6. Vytváření tabulek... 7 6.1. Vytvoření tabulky

Více

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087 Databázové a informační systémy Informační systém prodejny nábytku Jakub Kamrla, KAM087 1. část Funkční a nefunkční požadavky 1. K čemu má systém sloužit Jedná se o informační systém pro jednu nejmenovanou

Více

Porovnání rychlosti mapového serveru GeoServer při přístupu k různým datovým skladům

Porovnání rychlosti mapového serveru GeoServer při přístupu k různým datovým skladům Porovnání rychlosti mapového serveru GeoServer při přístupu k různým datovým skladům Bakalářská práce 2014 Autor: Adam Schreier Garant práce: Jan Růžička Obsah prezentace 1.Seznámení s řešeným problémem

Více

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Úvod do problematiky VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ Databáze je uspořádaná množina velkého množství informací (dat). Příkladem databáze je překladový slovník, seznam PSČ nebo telefonní seznam. Databáze

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh Algoritmizace prostorových úloh Vektorová data Daniela Szturcová Prostorová data Geoobjekt entita definovaná v prostoru. Znalost jeho identifikace, lokalizace umístění v prostoru, vlastností vlastních

Více

Milan Bořík, Vojtěch Honzík OPEN SOURCE GIS FUNKCE V PROSTŘEDÍ POSTGIS, TVORBA VLASTNÍCH FUNKCÍ A GRAFICKÝCH VÝSTUPŮ

Milan Bořík, Vojtěch Honzík OPEN SOURCE GIS FUNKCE V PROSTŘEDÍ POSTGIS, TVORBA VLASTNÍCH FUNKCÍ A GRAFICKÝCH VÝSTUPŮ 25. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE Milan Bořík, Vojtěch Honzík OPEN SOURCE GIS FUNKCE V PROSTŘEDÍ POSTGIS, TVORBA VLASTNÍCH FUNKCÍ A GRAFICKÝCH VÝSTUPŮ Abstrakt Open source GIS (geografický

Více

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Databáze MS-Access Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Obsah Principy a možnosti databází. Uložení dat v databázi, formáty dat, pole, záznamy, tabulky, vazby mezi záznamy. Objekty databáze

Více

Ukládání a vyhledávání XML dat

Ukládání a vyhledávání XML dat XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

RELAČNÍ DATABÁZOVÉ SYSTÉMY

RELAČNÍ DATABÁZOVÉ SYSTÉMY RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

Evidence a správa kanalizace v GIS Kompas 3.2

Evidence a správa kanalizace v GIS Kompas 3.2 IČ: 25472593 MK Consult, v.o.s. Drážďanská 493/40, 40007 Ústí nad Labem tel.,fax 47550500408, e-mail info@mkconsult.cz Evidence a správa kanalizace v GIS Kompas 3.2 Základní popis programu Kompas 3.2 Systém

Více

Publikování map na webu - WMS

Publikování map na webu - WMS Semestrální práce z předmětu Kartografická polygrafie a reprografie Publikování map na webu - WMS Autor: Ondřej Dohnal, Martina Černohorská Editor: Filip Dvořáček Praha, duben 2010 Katedra mapování a kartografie

Více

Databázové systémy. Cvičení 6: SQL

Databázové systémy. Cvičení 6: SQL Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi

Více

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu StatSoft Typy souborů ve STATISTICA Tento článek poslouží jako přehled hlavních typů souborů v programu STATISTICA, ukáže Vám jejich možnosti a tím Vám dovolí využívat program efektivněji. Jistě jste již

Více

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

Otevřený katastr (OK)

Otevřený katastr (OK) Otevřený katastr (OK) Karel Jedlička, Jan Ježek, Jiří Petrák smrcek@kma.zcu.cz, h.jezek@centrum.cz, jiripetrak@seznam.cz Západočeská univerzita v Plzni, Fakulta aplikovaných věd, katedra matematiky oddělení

Více

2. přednáška z předmětu GIS1 Data a datové modely

2. přednáška z předmětu GIS1 Data a datové modely 2. přednáška z předmětu GIS1 Data a datové modely Vyučující: Ing. Jan Pacina, Ph.D. e-mail: jan.pacina@ujep.cz Pro přednášku byly použity texty a obrázky z www.gis.zcu.cz Předmět KMA/UGI, autor Ing. K.

Více

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída: DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP Maturitní projekt Vypracoval: Denis Ptáček Třída: 4B Rok: 2014/2015 Obsah 1. Použité nástroje... 3 1.1 NetBeans

Více

POKROČILÉ POUŽITÍ DATABÁZÍ

POKROČILÉ POUŽITÍ DATABÁZÍ POKROČILÉ POUŽITÍ DATABÁZÍ Barbora Tesařová Cíle kurzu Po ukončení tohoto kurzu budete schopni pochopit podstatu koncepce databází, navrhnout relační databázi s využitím pokročilých metod, navrhovat a

Více

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) Marketingová komunikace Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Minulé soustředění úvod

Více

SQL - trigger, Databázové modelování

SQL - trigger, Databázové modelování 6. přednáška z předmětu Datové struktury a databáze (DSD) Ústav nových technologií a aplikované informatiky Fakulta mechatroniky, informatiky a mezioborových studií Technická univerzita v Liberci jan.lisal@tul.cz

Více

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např.

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např. 2 přednáška 2 října 2012 10:32 Souborově orientované uchování dat Slabý HW Není možné uchovávat "velká data" - maximálně řádově jednotky MB Na každou úlohu samostatná aplikace, která má samostatná data

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek 5 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, Spojení tabulek, agregační dotazy, jednoduché a složené

Více

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze 2.2.0.6

APS mini.ed programová nadstavba pro základní vyhodnocení docházky. Příručka uživatele verze 2.2.0.6 APS mini.ed programová nadstavba pro základní vyhodnocení docházky Příručka uživatele verze 2.2.0.6 APS mini.ed Příručka uživatele Obsah Obsah... 2 Instalace a konfigurace programu... 3 Popis programu...

Více

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou MySQL Typy tabulek Storage Engines MyISAM defaultní, neumí transakce, umí fulltext InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) MEMORY (HEAP) v paměti; neumí transakce ARCHIVE velké množství

Více

MS SQL Server 2008 Management Studio Tutoriál

MS SQL Server 2008 Management Studio Tutoriál MS SQL Server 2008 Management Studio Tutoriál Vytvoření databáze Při otevření management studia a připojením se ke konkrétnímu sql serveru mám v levé části panel s názvem Object Explorer. V tomto panelu

Více

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ ÚVOD Technologie elastické konformní transformace rastrových obrazů je realizována v rámci webové aplikace NKT. Tato webová aplikace provádí

Více

Postupy práce se šablonami IS MPP

Postupy práce se šablonami IS MPP Postupy práce se šablonami IS MPP Modul plánování a přezkoumávání, verze 1.20 vypracovala společnost ASD Software, s.r.o. dokument ze dne 27. 3. 2013, verze 1.01 Postupy práce se šablonami IS MPP Modul

Více

Datové modelování. Datové modely v GIS. Úrovně abstrakce reality

Datové modelování. Datové modely v GIS. Úrovně abstrakce reality Datové modelování Úrovně abstrakce reality Reálný svět Datový model Datová struktura Struktura datových souborů Datové modely v GIS Klasické datové modely (vznikly jako výsledek transformace mapy do GIS)

Více

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části

Více

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3aph) 2. a 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká: 2. soustředění 16.1.2009

Více

Uživatelská dokumentace

Uživatelská dokumentace Uživatelská dokumentace Verze 14-06 2010 Stahování DTMM (v rámci služby Geodata Distribution) OBSAH OBSAH...2 1. O MAPOVÉM SERVERU...3 2. NASTAVENÍ PROSTŘEDÍ...3 2.1 Hardwarové požadavky...3 2.2 Softwarové

Více

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů. Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové

Více

ANOTACE vytvořených/inovovaných materiálů

ANOTACE vytvořených/inovovaných materiálů ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a

Více

3. přednáška z předmětu GIS1 atributové a prostorové dotazy

3. přednáška z předmětu GIS1 atributové a prostorové dotazy 3. přednáška z předmětu GIS1 atributové a prostorové dotazy Vyučující: Ing. Jan Pacina, Ph.D. e-mail: jan.pacina@ujep.cz Pro přednášku byly použity texty a obrázky z www.gis.zcu.cz Předmět KMA/UGI, autor

Více

Olga Rudikova 2. ročník APIN

Olga Rudikova 2. ročník APIN Olga Rudikova 2. ročník APIN Redakční (publikační) systém neboli CMS - content management system (systém pro správu obsahu) je software zajišťující správu dokumentů, nejčastěji webového obsahu. (webová

Více

O Apache Derby detailněji. Hynek Mlnařík

O Apache Derby detailněji. Hynek Mlnařík O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila

Více

Strategie ochrany před negativními dopady povodní a erozními jevy přírodě blízkými opatřeními v České republice

Strategie ochrany před negativními dopady povodní a erozními jevy přírodě blízkými opatřeními v České republice Strategie ochrany před negativními dopady povodní a erozními jevy přírodě blízkými opatřeními v České republice Návod k prezentačnímu mapovému portálu Obsah: 1. Úvod... 3 2. Obecná část mapového portálu...

Více

Uživatelský manuál aplikace. Dental MAXweb

Uživatelský manuál aplikace. Dental MAXweb Uživatelský manuál aplikace Dental MAXweb Obsah Obsah... 2 1. Základní operace... 3 1.1. Přihlášení do aplikace... 3 1.2. Odhlášení z aplikace... 3 1.3. Náhled aplikace v jiné úrovni... 3 1.4. Změna barevné

Více

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Autor: Číslo: Anotace: Inovace a zkvalitnění výuky prostřednictvím ICT Databáze Základní seznámení s MySQL

Více

VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL

VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL Petr Štefan Václav Trunec, KP-sys, Čacké 155, Pardubice 1 Úvod Firma KP-SYS spol. s r. o. dodává na náš trh integrované

Více

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky Úterý 26. února Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených

Více

Systém elektronického rádce v životních situacích portálu www.senorady.cz

Systém elektronického rádce v životních situacích portálu www.senorady.cz Systém elektronického rádce v životních situacích portálu www.senorady.cz Obec Senorady Miroslav Patočka 2006 Obsah: 1. Úvodní informace 1.1 Informace pro uživatele 1.1.1 Přístupnost HTML, PDA, WAP, XML

Více

WNC::WebNucleatCreator

WNC::WebNucleatCreator Tomáš Dlouhý WNC::WebNucleatCreator Verze: 5.1 1 Obsah Obsah...2 Úvod...3 Novinky...3 Požadavky...4 Instalace...4 Přihlášení se do WNC...6 Moduly...7 Modul Blog...7 Modul Categories...8 Modul News...8

Více

Databázové a informační systémy Jana Šarmanová

Databázové a informační systémy Jana Šarmanová Databázové a informační systémy Jana Šarmanová Obsah Úloha evidence údajů, způsoby evidování Databázové technologie datové modely, dotazovací jazyky. Informační systémy Datové sklady Metody analýzy dat

Více

Příloha 6. Palety nástrojů

Příloha 6. Palety nástrojů Příloha 6. Palety nástrojů Palety nástrojů v IDE poskytují zkrácení pro příkazy nabídky. Příkazy jsou rozděleny do několika palet nástrojů, které mohou být nezávisle přeskupeny nebo vloženy do plovoucích

Více

1GIS2. Přednáška 3. Databáze vývoj, vlastnosti, přístupy ke zpracování informací, databázové modely, základy SQL FŽP UJEP

1GIS2. Přednáška 3. Databáze vývoj, vlastnosti, přístupy ke zpracování informací, databázové modely, základy SQL FŽP UJEP 1GIS2 Přednáška 3 Databáze vývoj, vlastnosti, přístupy ke zpracování informací, databázové modely, základy SQL FŽP UJEP Historie SŘBD papírové kartotéky uspořádávání dat podle různých kritérií zatřiďování

Více

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender VY_32_INOVACE_INF.19 Inkscape, GIMP, Blender Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Jiří Kalous Základní a mateřská škola Bělá nad Radbuzou, 2011 INKSCAPE Inkscape je open source

Více

Databáze pro evidenci výrobků

Databáze pro evidenci výrobků Databáze pro evidenci výrobků Databáze ve formátu Microsoft Access je součástí systému, který řídí automatizovanou výrobní linku. Tabulka tblcharge obsahuje data o výrobcích a je plněna automaticky řídicím

Více

aneb velice zjednodušené vysvětlení základních funkcí a možností systému Vypracoval: Tomáš Dluhoš E-mail: tomas.d@centrum.cz

aneb velice zjednodušené vysvětlení základních funkcí a možností systému Vypracoval: Tomáš Dluhoš E-mail: tomas.d@centrum.cz aneb velice zjednodušené vysvětlení základních funkcí a možností systému Vypracoval: Tomáš Dluhoš E-mail: tomas.d@centrum.cz Operační systém Windows - první operační systém Windows byl představen v roce

Více

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

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

Více

Instalace. Produkt je odzkoušen pro MS SQL server 2008 a Windows XP a Windows 7. Pro jiné verze SQL server a Windows nebyl testován.

Instalace. Produkt je odzkoušen pro MS SQL server 2008 a Windows XP a Windows 7. Pro jiné verze SQL server a Windows nebyl testován. Instalace Produkt se neinstaluje. Stačí soubor uložit na libovolné místo na Vašem počítací (klikněte pravým tlačítkem a dejte 'uložit cíl jako ), pak jen spustit. Požadavky na software Produkt je odzkoušen

Více

ArcGIS Server 10. Řešení pro sdílení geodat

ArcGIS Server 10. Řešení pro sdílení geodat ArcGIS Server 10 Řešení pro sdílení geodat ArcGIS Server 10 ArcGIS Server je komplexní nástroj, který představuje platformu pro poskytování služeb GIS umožňujících pořizování, správu a analýzu prostorových

Více