Mapové servery Novák Petr Katedra informatiky a geoinformatiky Fakulta životního prostředí Univerzita J. E. Purkyně v Ústí nad Labem Prosinec 2010 1
Využití Internetu pro GIS Publikace geodat Sběr a aktualizace geodat Synchronizace geodat Webové mapové služby Webové analytické služby 2
Publikace geodat na internetu Výhody: Přístupnost široké veřejnosti Není nutný specializovaný software Kompaktnost Jednoduché uživatelské rozhraní Nevýhody: Omezené funkční možnosti Náročnější implementace Cena Nutnost kompromisů mezi kvalitou dat, objemem, časy odezvy 3
Možnosti publikace geodat na internetu Nejjednodušší způsob publikace dat prezentace výsledků projektu na statické HTML stránce Složitější způsob je publikace geodat včetně základních nástrojů pro ovládání pohledu, měřítka, vzhledu vrstev Tento model lze doplňovat o atributové, případně prostorové dotazy Obvykle jsou užitečné základní funkce, kdy je uživatel schopný označit si vybrané lokality základními editačními nástroji a provádět dotazy nad vybranými oblastmi U skutečně speciálních úloh lze řešit pomocí webového rozhraní i nejjednodušší plně formalizované a algoritmizovatelné úlohy (nejkratší cesta, nejbližší objekty stejné třídy prvků, výběry, topologická překrytí,...) 4
Co je to mapový server? Mapový server je platforma poskytující GIS služby přes internetovou síť. Nemusí jít pouze o poskytnutí dat ve formě bitmapy či vektoru, tedy mapových výstupů, ale může jít také o poskytnutí funkcí nad mapovými daty. 5
Setkali jsme se s ním někdy? Služby mapových serverů na internetu běžně používáme Například: Mapy.cz, mapy.atlas.cz, maps.google.cz, geoportal.cenia.cz, portál katastru nemovitostí, atd. 6
Architektura client-server Co je to Server? Hardwarový server: Jde o počítač, která poskytuje služby klientům Softwarový server: Jde o program, který poskytuje služby klientům definovaným komunikačním rozhraním Co je to klient? Je to počítač, který zpracovává data od serveru. Nebo to může být program, který zpracovává data poskytnutá serverem. O tyto data si musí serveru říct (vyslat požadavek) a zpět dostane odpověď. 7
Architektura mapových serverů Program poskytující geodata na principu architektury client-server Přímo nekomunikuje s klientem, ale s webovým serverem, který ho na internetu zaštiťuje a zpřístupňuje jeho rozhraní pomocí standardních protokolů Data pro Mapový server můžou být uložena v souborovém systému, nebo v databázi 8
Architektura mapových serverů - komunikace Klient zašle požadavek na server. V požadavku specifikuje například mapové vrstvy a měřítko daného území. Mapový server přijme požadavek a na základě parametrů získá příslušná data z datového zdroje Mapový server z dat vytvoří požadovaný mapový výstup. Klient obdrží výsledek dotazu v požadovaném formátu (obrázek, vektorová data, internetová stránka, ) Klientem mapového serveru může být i jiný mapový server 9
Vývoj GIS aplikací Nejdříve se data i zpracování odehrávalo výhradně na straně klienta V současnosti bývají převážně data umístěna vzdáleně a zpracovávají se až na straně klienta Budoucnost je ve zpracování i uchovávání dat na straně serveru, tedy vzdáleně a klient obdrží pouze výsledek svého dotazu a nijak je nezpracovává. Tento postup se nazývá SOA (Services Oriented Architectur) 10
ArcIMS od firmy Esri ArcGis Server od firmy Esri Geoserver (Open Source) MapGuide od firmy Autodesk MapXtreme od firmy Mapinfo UMN mapový server z univerzity v Minnesotě (Open Source) a další Používanářešení mapových serverů 11
UMN Vyvíjen na University of Minnesota Open Source projekt zdarma i pro komerční využití Srovnatelný s komerčními produkty Dostupný na: http://mapserver.org Založený na: webovém serveru Apache databázi Postgresql geografické rozšíření PostGIS 12
ArcGIS server Jde o komerční produkt společnosti Esri Dokáže implementovat veškeré GIS operace na serveru a ty poté poskytuje klientům Založen na: webovém serveru IIS Na některé z databází: Oracle, MS SQL, Informix, IBM DB2 nebo souborová databáze geografické rozšíření ArcSDE 13
ArcGIS server hlavní rysy Mezi hlavní rysy ArcGis Serveru patří: Správa prostorových dat Vizualizace dat Prostorové analýzy Editace dat na serveru Rozšiřitelnost pomocí přídavných modulů (nadstaveb), nebo programových rozhraní Java a MS.NET lze funkcionalitu serveru rozšiřovat 14
Klienti pro ArcGis Server Tlustý klient ArcGis Desktop (ArcView, ArcEditor, ArcInfo) ArcPad ArcGis Mobile Tenký klient ArcGis Explorer zdarma k dispozici Webový prohlížeč 15
Technologie webových klientů pro ArcGis server ArcGis Server poskytuje rozhraní pro 3 technologie spojené s webovými prohlížeči Jde o JavaScript, který je součástí každého moderního internetového prohlížeče. Výhodou je, že se nemusí ke klientovi nic instalovat. Ve spojení s technologií AJAX, jde o poměrně silný nástroj. K dispozici je česká verze prohlížečky JavaScript Viewer 16
Technologie webových klientů pro ArcGis server Druhou podporovanou technologií je Adobe Flex. Jde o nástroj, který pro svůj chod potřebuje RealTime prostředí firmy Adobe, tedy Adobe Flash Player. Ten je v dnešní době velmi rozšířen. Poslední podporovanou technologií je Silverlight od společnosti Microsoft. Také zde je potřeba speciální doplněk do internetového prohlížeče. Pro všechny 3 technologie se dají vytvářet aplikace komunikující s ArcGie Serverem. Každá z nich má své výhody i nevýhody. 17
Standardy spojené s mapovými servery Pro komunikaci mezi mapovým serverem a klientem je třeba definovat dva základní protokoly. Formát, ve kterém si budou data posílat, tedy formáty pro ukládání dat Způsob výměny dat, tedy formát samotné komunikace 18
Rastrový Formáty pro ukládání dat Na serveru se dle požadavku klienta z rastrových a vektorových dat vygeneruje mapový výřez, jako obrázek se odešle klientovi Technologicky jednodušší Velký datový objem, velké objemy zbytečných nebo duplicitních dat Omezené možnosti změn vzhledu Běžné rastrové formáty musí umět prohlížeč JPEG, TIFF, GIF, PNG,... 19
Vektorový Formáty pro ukládání dat Server na základě požadavku klienta připraví množinu geoprvků (pouze vektorová data), provede případný ořez a zašle klientovi Technologicky náročnější Proprietární nebo otevřený formát => nutné aby prohlížeč dokázal data interpretovat (ESRI Coverage, ESRI Shape File, ArcXML,...) Otevřené formáty GML, KML (Google Earth), XML, SVG,... 20
GML - Geographic Markup Language Geografický značkovací jazyk OGC Jazyk pro modelování, přenos a ukládání prostorových dat včetně jejich prostorových a neprostorových vlastností Je navržen zejména pro potřeby WWW a síťových služeb a používá proto jazyk XML, pro který je vytvořeno mnoho nástrojů a který je na WWW standardem Uživatelé se mohou rozhodnout, zda ukládat data přímo ve formátu GML nebo je konvertovat z jiného formátu pouze pro účely transportu 21
Komunikační technologie Aby si spolu obě komunikující strany, tedy klient i server, rozuměli, musí obě podporovat stejný komunikační protokol a dohodnout se na jeho používání. Používané komunikační protokoly: SOAP (středně těžké aplikace.net, Java, ) REST (lehké aplikace JavaScript, PHP, Perl ) OGC (aplikace odpovídající OGC standardům) WMS WFS WCS GML 22
OGC standardy Open Geospatial Consortium Inc. (OGC) je nezisková mezinárodní organizace s dobrovolným členstvím, která vede vývoj standardů pro geoprostorové a lokalizační služby. http://www.opengeospatial.org/ Členy jsou například ESRI, Oracle, Microsoft, Mapinfo, Autodesk, Bentley Řada standardů velice rozšířena (GML, Simple Features Spec for SQL), nás aktuálně zajímají standardy pro webové služby. Definují standardizovaný požadavek klienta a odpověď serveru na daný požadavek. 23
WMS Web Map Service Nejběžněji využívanou specifikací OGC konsorcia Poskytuje mapy v rastrovém formátu (server se službou WMS nemusí obsahovat pouze rastrová data, ale také vektorová data, často uložená v DBMS) Služba po požadavku klienta na mapový obsah, vybere potřebná prostorová data a z těchto pak vygeneruje rastrový obraz, který odešle klientovi Lze volit kombinaci vrstev, výsledný souřadnicový systém, parametry výřezu, rastrový formát výsledku Většina moderních sw pro GIS umožňuje integraci WMS vrstev 24
WMS Web Map Service Výhody: není nutné data spravovat, aktualizovat, stačí využívat externí službu (zdarma nebo zpoplatněnou) Nevýhody: může být pomalejší a nedostupné v závislosti na dostupnosti služby nebo připojení 25
WMS Web Map Service Základní typy dotazů (dle OGC) GetMap - Tento typ dotazu lze považovat za hlavní (primární), a to z toho důvodu, že klientovi zpřístupní mapu ve formě obrazových dat v určitém formátu. Požadavek v URL musí obsahovat parametr REQUEST=GetMap. GetCapabilities - Pokud daný klient nezná možnosti a vlastnosti nabízených dat, což se skoro ve všech případech děje, musí tyto možnosti zjistit. Proto klient při první komunikaci se serverem sestaví GetCapabilities dotaz. Požadavek musí obsahovat parametr REQUEST=GetCapabilities. Specifikace vyžaduje ještě jeden povinný parametr SERVICE=WMS GetFeatureInfo - Tento typ dotazu vrací klientovi XML soubor s atributy daného prvku na mapě o určitých souřadnicích. Požadavek musí obsahovat parametr REQUEST= GetFeatureInfo. 26
WFS- Web Feature Service Použití pro zobrazování, dotazování a manipulaci s vektorovými geoprvky Povinně musí služba umožňovat získávat informace o struktuře dat (GetCapabilities), získat (vyfiltrované) prvky (GetFeature) a získat atributová data vybraných geoprvků (DescribeFeatureType) Volitelně (pokud to umožňuje software a úložiště dat) lze geoprvky vkládat, mazat a editovat 27
WFS- Web Feature Service Klient se dotáže na strukturu poskytovaných dat Server mu jí vrátí (ve formátu XML) Klient se dotáže na vybrané prvky (na základě atributu, prostorového umístění) Server vrátí geometrii i atributy geoprvků ve formátu GML 28
WCS Web Coverage Service WCS se využívá pro přenos datových vrstev přes internet Umožňuje přenos dat v původním formátu zároveň s metadaty, potřebnými pro interpretaci V současné době jsou podporována pouze rastrová data, připojení vektorových dat se plánuje v blízké budoucnosti. Tato služba hraje důležitou roli pro standardizovaný přenos satelitních dat vyžádání snímků konkrétní oblasti k požadovanému datu 29
WPS Web Processing Service Pracují s prostorově orientovanými daty Data požadována touto službou mohou být dostupná lokálně nebo mohou být přístupná přes síť s využitím výměnných standardů, jako například Geography Markup Language (GML) nebo Geolinked Data Acces Service (GDAS). Umožňuje využívat funkce GIS software na serveru pomocí webového prohlížeče 30
Otevřené x proprietární standardy Pokud server i klient plně dodržují určitý standard, lze je bez problémů společně používat. Zaklínadlo moderních GIS interoperabilita. Výrobci si začínají uvědomovat že pouze dodržováním otevřených standardů dokáží navzájem sdílet geodata jiných systémů a integrovat je právě do toho svého. 31
Publikace dat na mapový server Projekt, který chcete publikovat na ArcGis Server musí splňovat jistá kritéria Měl by být také optimalizován pro rychlé zobrazování Zásady pro tvorbu dokumentů pro mapové služby jsou k dispozici na adrese: http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/ Publishing_map_services/00sq00000018000000/ 32
Krok 1: zorganizujte si data Nepoužíváte-li geodatabázi, uchovávejte všechny vrstvy, které budete chtít publikovat v jedné složce. Mapové služby jiných serverů (např. WMS, WFS,..) můžete používat běžným způsobem. Určete data, která budou sloužit jako podkladové mapy Statická rastrová data Statická vektorová data Určete operační vrstvy ty bude třeba rozdělit do samostatných dokumentů Data s dynamickým obsahem 33
Krok 2: Připravte si podklady v ArcGis desktop Uspořádejte vrstvy do logických skupin Odstraňte vrstvy které jsou přebytečné Vrstvám nadefinujte symboliku Vrstvám nadefinujte vhodná měřítková omezení Používejte stejný souřadnicový systém 34
Krok 3: Odstraňte případné chyby v mapovém dokumentu Pouze od verze ArcGis Desktop 9.3.1 Nástroj Map Service Publishing (View / Toolbars / Map Service Publishing) Tlačítko Analyze map zobrazuje přehled chyb a varování V kontextovém menu program nabízí nápovědu k dané chybě a případně i možnost problém přímo vyřešit. 35
Krok 4: Optimalizujte mapový dokument Podle potřeby nastavte možnosti vyhlazení prvků a popisků (anti-aliasing) Nastavte měřítková omezení pro příslušné vrstvy Pomocí tlačítka Preview Map uvidíte náhled mapy, jak bude vypadat na webovém serveru, včetně rychlosti vykreslování 36
Krok 5: Uložit k publikaci Pomocí tlačítka Save Map Service Definition uložte MSD soubor, který potom se všemi vrstvami (v jednom adresáři) může být publikován na ArcGis Serveru Budete-li mít práva k publikování na ArcGis Serveru, můžete projekt publikovat přímo z ArcGis Desktop nebo Arc Catalog tlačítkem Publish To ArcGis Server 37
Správa Mapového serveru Mapové projekty na ArcGis Serveru jsou spravovány přes internetové rozhraní (ArcGis Server Manager) nebo přes ArcCatalog Pro správu projektů na serveru je třeba mýt vytvořen účet s oprávněním agsadmin 38
Mapové servery Závěr Pracují na architektuře client-server Standardy pro ukládání dat Standardy komunikačních protokolů OGC (WMS, WFS, ) 39
Publikace na ArcGis Serveru Ukládat data do jedné složky či geodatabáze Optimalizovat data pro rychlejší zobrazování Pomocí nástroje Analyze map na panelu Map Service Publishing zkontrolovat chyby a varování a opravit je Pomocí tlačítka Save Map Service Definition uložit projekt ve formátu MSD pro publikaci na ArcGis Serveru Všechny soubory potřebné k vystavení nakopírovat do N:/GIS2/mapovy_server do složky pojmenované svým jménem Poslat mail s žádostí o vystavení na mapový server na adresu Petr.Novak@ujep.cz do předmětu zprávy napište mapserver Napište název Vámi vytvořené mapové služby a tedy i aplikace Používáte-li externí mapové služby (např. geoportal.cenia.cz) napište adresu této služby, název vrstvy a její popis ve Vašem projektu Napište stručný popis Vašeho projektu (cca 100 200 znaků) 40