Úvod do PostGIS Jan Ježek
Přehled probírané látky Co je to PostGIS, PostgreSQL Úloha PostGIS v konceptu GIS řešení Praktické ukázky Instalace Vytváření a import dat Vizualizace (Klientské aplikace) Prostorové dotazy Indexace, tuning
Co je to PostGIS a PostgreSQL PostgreSQL = relační databázový systém (RDBMS) PostGIS = podpora prostorových objektů a operací s nimi pro PostgreSQL (PostgreSQL ma typy pro geometrii, ale ty nelze využít pro GIS)
PostGIS a PostgreSQL http://www.postgresql.org/ http://postgis.refractions.net/ Open Source! (BSD license + GNU)
Co je to PostGIS a PostgreSQL Datové typy PostgreSQL – float, int, varchar...... Datové typy PostGIS – geometry = Point, LineString, Polygon
Co je to PostGIS a PostgreSQL Funkce PostgreSQL – floor(dp or numeric), acos(x), substring(string [from int] [for int])... Funkce PostGIS – geometry = ST_Length(geometry), ST_Buffer(geometry, double, [integer]), ST_Intersection(geometry, geometry)....
K čemu je PostGIS ?
K čemu je PostGIS Databáze je lepší než soubor Umožňuje jednotnou správu dat Umožňuje jednotný přístup k datům Umožňuje přenést analytické operace na stranu serveru Umožňuje kombinaci s dalšími dat. zdroji
Další prostorové databázové systémy ArcSDE Oracle Spatial MySQL PostGIS
PostGIS, ArcSDE, Oracle Spatial http://www.google.cz/trends?q=postgis%2C+arcsde%2C+oracle+spatial
Trocha Historie Červen 2001 – verze 0.1 Červenec 2001 – verze 0.5 Prostorové datové typy uchovávány v GiST Červenec 2001 – verze 0.5 Provázání s UMN Mapserverem Květen 2007 – verze 1.2 Podpora specifikace OpenGIS SF-SQL Zvýšení výkonu a doplnění analytických funkcí
PostGIS v GIS (OGC) Web Pages
PostGIS v GIS Web Pages (Open Layers) ? GeoServer PostGIS
Instalace PostGIS
Instalace PostGIS PostgreSQL Windows Instalátor PostGIS Instalace = rozšíření o systémové knihovny (dll/so) (Geos, Proj atd....) Instalace db. prvků do konkrétní databáze
Instalace PostGIS PostGIS Knihovny – PROJ, GEOS.... http://trac.osgeo.org/proj/ http://trac.osgeo.org/geos/ file:///usr/share/postgresql-8.2-postgis/
Instalace PostGIS Tabulky PostGIS spatial_ref_sys geometry_columns
Instalace PostGIS Vytvoření databáze – student .... host: git.zcu.cz port: 5433 databáze pdb1-n jméno/heslo – student1/studen1 ...
Klientské aplikace pro PostgreSQL+PostGIS PgAdmin PhpPgAdmin (http://www.hsrs.cz/phppgadmin2/) Open Office API Prog. jazyků - Java, Python, C++, .....
GIS klienti pro PostGIS Desktop uDig, QuantumGIS, JUMP, gvSIG, ArcMAP?? ..... Server Geoserver, UMN MapServer
Ukládání dat
Ukládání dat Ruční vytvoření pomocí SQL create table points (pt geometry, name varchar); insert into points values ('POINT(0 0)', 'Origin'); insert into points values ('POINT(5 0)', 'X Axis'); insert into points values ('POINT(0 5)', 'Y Axis'); select name, ST_AsText(pt), ST_Distance(pt, 'POINT(5 5)') from points;
Import dat z Shape File shp2pgsql Vstup je .shp Výstup je .sql shp2pgsql –i –s 4326 –D mesta.shp mesta > mesta.sql Vstup je .shp Výstup je .sql SQL soubor lze načíst do PostgreSQL (PgAdmin, psql, PhpPgAdmin)
Import dat z ShapeFile ogr2ogr QuantumGIS 1 Shp = 1 tabulka DEMO!
Vizualizace dat – připojení k PostGIS uDig QGIS gvSIG CadCorp SIS* FME Viewer* GeoServer MapServer
Cvičení – atributové dotazy: Jednoduché dotazy – QGIS, uDig Další dotazy: vypočtěte průměrnou výměru obcí ve Vašem okrese vyberte 5 obcí s nějvětší výměrou ve Vašem okrese Vypočtěte celkovou déku řek na území ČR.