geoprocesiranje u oblaku
TRANSCRIPT
Geoprocesiranje u oblaku
Darko Boto i Alen Huskić
APIS IT d.o.o.
APIS IT d.o.o. – Agencija za podršku informacijskim sustavima i tehnologijamapodrška ključnim informacijskim sustavima države i Grada
• > 350 zaposlenika• Serverske platforme:
• IBM zSeries, Parallel Sysplex• IBM AIX• Linux • Sun Solaris• HP Unix• Windows
• Virtualizacija: zVM, Microsoft• Baze podataka: IMS, DB2, Oracle, Lotus
Domino, Sybase• WEB serveri : WebSphere, MS IIS, Arc
IMS, BEA Logic• > 10.000 radnih stanica • > 4.000.000 transakcija po danu
• Ministarstvo financija• Porezna uprava• Carinska uprava• Financijska policija
• SDU za e-Hrvatsku• SDU za državnu imovinu• APN• Izbori na svim razinama• Grad Zagreb
• Gradska pisarnica i kolanje dokumenata• Matice i knjiga državljana• Katastar zemljišta, GIS, adresni model• Naplata komunalne naknade, zakupa,
najma• Programi stanogradnje• Povrat imovine• Registar obveznika, objekata i naknada• Riznica, financije, plaće, ljudski resursi• E-usluge
• ZGH
Sadržaj predavanja
Što je sve potrebno da bi se u Azure cloudu napravila analiza prostornih podataka i pri tome:
• analizirati vektorske prostorne podatke,
• analizirati GRID rasterske formate,
• koristiti MSSQLSpatial prostorne funkcije.
Preduvjeti
Osnovna znanja o:
• GIS-u i prostornim podacima.– ... vektorima
– … rasterima
– … prostornim analizama
• … i Microsoft tehnologijama
Tsunami - PLIMNI VAL
Italija
Dubrovnik
Hvar
PulaIst
Vela luka
JAPAN
17 000 km – 21hTektonske ploče
seizmičke aktivnosti u japanu
IDEJA
Studijom slučaja naći način kako napraviti preventivnu prostornu (GIS) analizu razmjera utjecaja podizanja razine mora, te što je od softvera i podataka potrebno da bi se takva prostorna analiza napravila.
Napravili smo…
• Prototip web aplikacije koja prostornom analizom izračunava broj kućanstava
ugroženih dizanjem razine mora ovisno o visini plimnog vala, te koje su prometnice
u tom slučaju presječene za potrebe evakuacije stanovništva.
Ovo nije hidrodinamični prognostički model!
DEMO• geoprocessing.cloudapp.net
Geoprocesiranje
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
Funkcionalni zahtjevi za geoprocesiranje:
• Upravljački program za prostorne podatke• Projekcije – podaci u geografskom prostoru• Geometrijske operacije
Stack/Function Data driver Projection engine Topology engine
.NET GDAL/OGR, FDO Proj.NET NTS
Java GDAL/OGR, FDO Proj4J JTS
C/C++ GDAL/OGR, FDO Proj4 GEOS
Tehnologije
GDAL/OGRGDAL/OGR
MSSQLSpatialMSSQLSpatial Proj.NETProj.NETNTSNTS
AZURE SQLAZURE SQL
FO
SS
GIS
SilverLight .NET WEB appSilverLight .NET WEB appMicrosoft:
• AzureCloud • .NET framework• SilverLight
FOSS GIS:
• GDAL/OGR (lib C/C++)• NTS (lib .NET C#)• MSSQLSpatial (db extezija)• Proj.NET (lib .NET C#)
GDAL/OGR
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
• Geospatial Data Abstraction Library• 120 rasterskih i 50 vektorskih formata• 1998 – Frank Warmerdam LGPL Licence• GoogleEarth, ArcGIS Server/Desktop, FME
ETL, Autodesk MapGuide...• Transformacije i kontrola outputa• GDAL/OGR Utillities• SWIG Bindings: Perl, Python, Ruby, Java, C#• NoSWIG Bindings: VB6, R
Podaci OSM
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
• 250 000 volontera
• Import (fr, dk, it..)
• BingMaps
• Vektori
• CC A-SA 2.0
• HR.OSM
Vektori
point multipoint line mulitiline polygon multipolygon
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECTION
ANALIZA VEKTORAST_INTERSECTION
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
Rasteri
• DEM, • DSM, DTM, • DOF,• Spectral...
• ASTER GDEM• GeoTIFF – extenzija• GRID struktura• Preciznost (30m)
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECTION
ANALIZA VEKTORAST_INTERSECTION
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
Projekcije
konusna cilindrična ravninska
• PROJ4 – PROJ.NET
• 3D – 2D
• EPSG
• SRS - transformacije
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
Fullerova projekcija
Hrvatski SRS – HTRS96/TM
Hrvatski Terestrički Referentni Sustav / Transverse Mercator Projection
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
ANALIZASOFTVER I PODACI
ANALIZASOFTVER I PODACI
Priprema podataka
PRIPREMA PODATAKA
PRIPREMA PODATAKA
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
GEOTIFFRGB band 1
GEOTIFFRGB band 1
PRIPREMA PODATAKA
PRIPREMA PODATAKA
Bojanje rastera
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
• GDALDEM• Prolazi pixel po pixel i ovisno o vrijednosti
visine boji pixel pripadajućom r,g,b bojom
LOAD PODATAKAOGR
LOAD PODATAKAOGR
GEOTIFFRGB band 1
GEOTIFFRGB band 1
PRIPREMA PODATAKA
PRIPREMA PODATAKA
Poligonizacija
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
AZURE SQL SPATIAL
AZURE SQL SPATIAL
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
• Gdal.Polygonize• Kontrola outputa – preko 50 izlaznih formata• Shapefile, GML, GeoJSON, KML, CSV.... raster vektori
AZURE SQL SPATIAL
AZURE SQL SPATIAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
Load podataka OGR
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECTION
ANALIZA VEKTORAST_INTERSECTION
GEOTIFFRGB band 1
GEOTIFFRGB band 1
PRIKAZ REZULTATA
PRIKAZ REZULTATA
ANALIZAANALIZA
geometry_columns
oidf_table_catalogf_table_schemaf_table_namef_geometry_columncoord_dimensionsridtype
feature_table
<table name><geometry_column><atributes>
spatial_ref_sys
sridauth_nameauth_sidsrtextproj4text
•Ogr2ogr (.exe)
•OGC Simple Feature
•“WHERE” uvjeti
•Rezanje polygona
•MSSQL ODBC driver
Geometrijske operacije
PROSTORNI ODNOSI:contains, within, covers, intersects, disjoint, crosses, overlaps, touches, equals
FUNKCIJE PREKLAPANJA:intersection, difference, union, symmetric difference, unary union
polygon overlays A intersection B A union B A diference B A symDiference B
PRIKAZ REZULTATA
PRIKAZ REZULTATA
AZURE SQL SPATIAL
AZURE SQL SPATIAL
• Presjek građevina i područja ugroženosti
STIntersects
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
ANALIZAANALIZA
PRIKAZ REZULTATA
PRIKAZ REZULTATA
AZURE SQL SPATIAL
AZURE SQL SPATIAL
• Presjek građevina i područja ugroženosti
STIntersects
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECTION
ANALIZA VEKTORAST_INTERSECTION
GEOTIFFRGB band 1
GEOTIFFRGB band 1
ANALIZAANALIZA
PRIKAZ REZULTATA
PRIKAZ REZULTATA
AZURE SQL SPATIAL
AZURE SQL SPATIAL
Rezultati
PRIPREMA PODATAKA
PRIPREMA PODATAKA
BOJANJE RASTERA GDAL
BOJANJE RASTERA GDAL
POLIGONIZACIJAGDAL/OGR
POLIGONIZACIJAGDAL/OGR
LOAD PODATAKAOGR
LOAD PODATAKAOGR
ANALIZA VEKTORAST_INTERSECT
ANALIZA VEKTORAST_INTERSECT
GEOTIFFRGB band 1
GEOTIFFRGB band 1
ANALIZAANALIZA
FOSS GIS .NET Stack
MapWindowMapWindow
GeoAPI.NETGeoAPI.NET
NTSNTSMSSQLSpatialMSSQLSpatial
Nhibernate.SpatialNhibernate.Spatial GeoTools.NETGeoTools.NETProj.NETProj.NET
MonoGISMonoGIS
MapWindow ActiveX
MapWindow ActiveX
SharpMapSharpMap
FOSS GIS .NET Stack
Alati i biblioteke:• MapWindow – Desktop GIS alat (framework)• MapWindow ActiveX – MapWindow Core API• GeoAPI - Framework baziran na OGC/ISO standardima (SFS)• GeoTools.NET – Skup .NET klasa za manipuliranje prostornim podacima• NHibernate.Spatial – Prostorna ekstenzija za NHibernate• SharpMap – WEB Map Renderer, WEB/Desktop app framework• MonoGIS – GIS na Mono platformi
Zajednica:• Projekti izašli iz “One Man Project” faze• Debugiranje• Portanje Java stack-a
Povezani sadržaji
• OSM OpenStreetMap• ASTER GDEM Advanced Spaceborne Thermal
Emission and Reflection Radiometer• GDAL/OGR Geospatial Data Abstraction Library• MSSQLSpatial MSSQQL Spatial Extension• CORIE – FOSS Hidrodynamic Model