Geodatatjänster/ - GISS
Transcript of Geodatatjänster/ - GISS
h"p://www.gisgruppen.se 1
Geodatatjänster -‐ Introduk+on +ll tjänstekonceptet
Mikael Schröder
h"p://www.gisgruppen.se 2
GisGruppen • GisGruppen är ett konsultföretag som arbetar med
verksamhetsutveckling inom geografisk information och teknik.
• GisGruppen arbetar i huvudsak med förstudier,
utredningar och verksamhetsutveckling men har också lång erfarenhet av arbete med systemarkitektur, kravhantering, analyser, standardiseringsarbete samt utbildning inom GIS-området.
• GisGruppen är lokaliserad i Uppsala men tar uppdrag i
hela Sverige.
h"p://www.gisgruppen.se
Kurser, ges i samarbete m Arc?c Tiger och ULI
• Introduk?on ?ll GIS (1d) • Geografisk IT för beslutsfa"are (0,5-‐1d) • A" arbeta med open source och QGIS (1-‐2d) • A" arbeta med webb-‐GIS-‐tjänster (2d) • Grundkurs i ArcGIS (3d) • Google Earth, för skollärare (1d) • Introduk?on ?ll GeoLoca?onAPI & Openlayers/Leaflet (1-‐2d)
• Introduk?on ?ll Javascript, HTM, CSS (2-‐40d)
3
h"p://www.gisgruppen.se 4
Överblick
• Introduk?on ?ll tjänstekonceptet – GIS-‐arkitektur och tjänste-‐arkitektur – Hur fungerar webb-‐tjänster – Standarder och OGC – WMS e" exempel på geodatatjänst – Geodatatjänster / SOA och SDI
h"p://www.gisgruppen.se 5
Introduk?on ?ll tjänstekonceptet
h"p://www.gisgruppen.se
Arkitekturen hos e" ”tradi?onellt” GIS
Desktop
Webb Datalagring
Geografiskt Informa?ons System
GPS
Metadata
6
h"p://www.gisgruppen.se
Server Klient
Arkitekturen hos tjänsteorienterat GIS
Desktop
Webb
Datalagring
Metadata GPS
Standardise
rade
tjänster
WPS
CSW
WFS
WMS
Maskin-‐?ll-‐maskin kommunika?on • Geodatatjänster är ”maskin-‐?ll-‐
maskin”-‐tjänster. • Du kan inte själv använda
geodatatjänster direkt, utan måste ta hjälp av e" anpassat gränssni" som kan ny"ja dem och prata deras ”språk”.
• Geodatatjänster kan ny"jas för a"
söka, visa, hämta och uppdatera kartor, bilder och informa?on i di" eget verksamhetssystem, i en desktopklient eller på en webbsida.
8
h"p://www.gisgruppen.se
Svart låda
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
Generell princip för webb-‐tjänster
9
Gränssni" för a" interagera med tjänsten via: • Metainforma?on om tjänsten • Fördefinierad uppsä"ning av frågor med e" antal möjliga
inställningar/specifika?oner per fråga. Ställs en korrekt fråga så returneras e" svar.
• Exempel: Eniro / Hi"a: Skriv namn få ?llbaka adress och telefonnummer
Data Innehåll
h"p://www.gisgruppen.se
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
Behov av standarder för webb-‐tjänster
10
• Om var och en själv skulle definiera sina frågor och parametrar när de sä"er upp webb-‐tjänster skulle det blir svårt a" uppnå alla de möjliga samarbets-‐möjligheterna och ny"orna med webtjänster
• à Därför behövs standarder för a" underlä"a informa?onsutbytet
• Standarder är en förutsä"ning för internet så som det fungerar i dag: • Nätverksstandarder • HTTP-‐protokollet • HTML och XML à Web-‐läsare
h"p://www.gisgruppen.se 11
Öppna standarder
• Organisa?oner: – OGC – Open Geospa?al Consor?um – består av 440 företag, myndigheter och universitet
– ISO • Utbytesformat:
– XML (grunden i alla följande) – GML, Geographic Markup Language motsvarar en Shapefil
– WFS, Web Feature Service – WMS, Web Map Service – ISO 19115, Metadata standard – ISO 19131, Specifika?on av datamängder
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
www.uli.se • [email protected] 12
h"p://www.opengeospa?al.org/standards/is
h"p://www.gisgruppen.se
WMS-‐tjänster
• WMS är en standard för webtjänster som genererar kartbilder. Dessa tjänster kan sedan användas av andra I andra organisa?oner.
• WMS är e" mkt smidigt sä" a" byta informa?on mellan organisa?oner
• De flesta moderna GIS-‐program stöder WMS
• Länkar ?ll sidor som redovisar wms-‐tjänster: – h"p://projektwebbar.lansstyrelsen.se/gis/Sv/Pages/wms-‐tjanster-‐
fran-‐lansstyrelserna.aspx – h"p://www.sgu.se/produkter/geologiska-‐data/ta-‐del-‐av-‐vara-‐data/
vara-‐data-‐i-‐visningstjanster/ – h"p://www.smhi.se/forskning/forskningsomraden/hydrologi/
webprodukter-‐1.22124
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
h"p://www.gisgruppen.se
Kar"jänst
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
WMS = Web Map Service ISO 19128
14
• Gränssni" för a" interagera med tjänsten via: • Hur man ska beställa och returnera informa?on om vilka slags kartor
en server kan leverera (GetCapabili?es) • Hur man ska beställa och returnera en karta som bild eller objekt
(GetMap) • Hur man ska beställa och returnera informa?on om innehållet i en
karta, tex värdet vid en posi?on (GetFeatureInfo)
Kartbild
h"p://www.gisgruppen.se
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
WMS, exempel
• GetMap -‐ Returnerar en bild eller e" undantag
• Obligatoriska parametrar: • Version (av standarden, tex 1.3) • Request = GetMap • Layers • Styles • CSR (fd. srs, dvs. Cordinate Reference System) • BBOX (bounding Box, m koordinater) • Width • Height • Format
• Valfria parametrar: • Transparent = True/False • BGColor = True/False • Excep?ons • Time • Eleva?on
h"p://www.gisgruppen.se 16
WebbGIS-‐Klient • En WebbGIS-‐klient ny"jar webb-‐teknik (html) • En WebbGIS-‐klient är oqa en webbsida i en webbläsare.
– Men kan även vara e" desktop-‐program, eller en mobil ?llämpning.
• En HTML-‐baserad webbgis-‐klient för webbläsare byggs upp med hjälp av HTML, javascript och eventuella pluggins (Flash, Silverlight mfl.) – Finns färdiga gränssni"sbibliotek som underlä"ar både användarupplevelsen och jobbet a" sä"a samman klienten.
Desktop
Webb Datalagring
Metadata
Standardise
rade
tjä
nster
WPS CSWWFS WMS
h"p://www.gisgruppen.se 17
map.addLayer(sgu_jordart); var sgu_grus = new OpenLayers.Layer.WMS( "SGU Grus och morän", "h"p://maps.sgu.se/wmsconnector/com.esri.wms.Esrimap/wms_grusarkiv?", { srs: "EPSG:2400", layers: "Land,Moran,Grus,Sand", styles: "", format: "image/png", ?led: "true", ?lesOrigin : origin_ext_rt90, isBaseLayer: "true" }, { maxExtent: bounds, projec?on: "EPSG:3006", buffer: 0 } ); h"p://www.fmis.raa.se/cocoon/fornsok/search.html
Geografisk ”MashUp”
h"p://www.gisgruppen.se 18
Webbgränssni" för kartor
• Webbsidans gränssni" är skapat med ExtJS • Karzunk?onerna styrs via OpenLayers • Kar"jänsterna levereras från olika externa leverantörer, samt några
interna hos RAÄ • En del grundläggande kartdata och annat data ligger i RAÄ´s databas
RAÄ-‐Data
Komponenterna i Fornsök
RAÄ WMS-‐kar"jänst
SGU
LST
h"p://www.gisgruppen.se
Geodatatjänster / SOA & SDI
• SOA -‐ Service Oriented Architecture, dvs. Tjänstebaserad IT-‐arkitektur • SDI – Spa?al Data Infrastructure, dvs. Infrastruktur för Geodata
• E" sä" a" organisera och ny"ja distribuerade resurser från olika leverantörer. Resurserna är ?llgängliga som oberoende tjänster och kan ny"jas av andra program och websidor genom standardiserade anrop.
Desktop
Webb
Datalagring
Metadata
GPS
Standardise
rade
tjänster
WPS
CSW
WFS
WMS
h"p://www.gisgruppen.se
Affärsny"a med geodatatjänster
• Lä"are a" anpassa ?ll förändringar • Mashups: sä" samman det som behövs när det behövs • Minskade kostnader för integra?on mellan olika system • Minskade inlåsningseffekter (från leverantörer) • Ökade ROI i befintliga system • Nöjdare kunder
Desktop
Webb
Datalagring
Metadata
GPS
Standardise
rade
tjänster
WPS
CSW
WFS
WMS
h"p://www.gisgruppen.se
Server Klient
Arkitekturen hos tjänsteorienterat GIS
Desktop
Webb
Datalagring
Metadata GPS
Standardise
rade
tjänster
WPS
CSW
WFS
WMS
23
24
Rester…
h"p://www.gisgruppen.se
Tradi?onellt GIS
• Ti"a • Bearbeta/analysera • Digitalisera • Presentera • Strukturera/hi"a Geodata
Geodata
TiNa Bearbeta &
Analysera
Digitalisera Presentera hi"a
strukturera
hi"a
strukturera
h"p://www.gisgruppen.se
SDI = Tjänstebaserat GIS
• Konsumera WMS • Bearbeta WFS/WPS • Digitalisera WFS-‐T • Publicera tjänster • Tillgängliggöra/hi"a CSW
Geodata
WMS WFS &
WFS
WFS-‐t WMS &
WPS
TiNa Bearbeta &
Analysera
Digitalisera Presentera
h"p://www.gisgruppen.se
GML
WFS
WMS
Vektorformat
Rasterformat
Desktop GIS
Webb GIS
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
WFS & GML är vektorfiler för webben!
h"p://www.gisgruppen.se
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
GML = Geography markup language
• En texzil • En XML-‐dialekt för modellering, överföring och lagring av
geografiska data • Kan innehålla informa?on om koordinatsystem, geometri,
topologi, ?d etc. • Syqet med GML är a" det är:
• Enkel struktur • Textbaserat dvs. lä"läst • Kan transformeras • Kan valideras
• Nackdelen är a" det är väldigt utrymmeskrävande och innehåller mycket redundant informa?on (inledningstagg – avslutningstagg)
h"p://www.gisgruppen.se
Kar"jänst
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
WFS = Web Feature Service
• Gränssni" för a" interagera med tjänsten via: • Hur man ska beställa och returnera informa?on om vilka slags
geodata en server kan leverera (GetCapabili?es) • Hur man beställer strömmande geodata beskrivet i GML
(GetFeature) • Hur man skapar ny", uppdaterar eller tar bort data (Transac?on) • Hur man låser objekt i datalagret för redigering (LockFeature/
GetFeatureWithLock) • Hur man ska beställa och returnera informa?on om innehållet i
datat, tex a"ribut ?ll e" vist objekt (DescribefeatureType)
Kartdata i GML-‐format
h"p://www.gisgruppen.se
Exempel på en vektorfils uppbyggnad
yta.shp
FID 1
ID NAMN 1 Ekbacken
yta.dbf yta.shx
30
h"p://www.gisgruppen.se
<?xml version="1.0" encoding="uz-‐8" ?> <ogr:FeatureCollec?on xmlns:xsi="h"p://www.w3.org/2001/XMLSchema-‐instance" xsi:schemaLoca?on="h"p://ogr.maptools.org/ fornminne_go"land2.xsd" xmlns:ogr="h"p://ogr.maptools.org/" xmlns:gml="h"p://www.opengis.net/gml"> <gml:boundedBy> <gml:Box> <gml:coord><gml:X>714807.38101711</gml:X><gml:Y>6394049.46572817</gml:Y></gml:coord> <gml:coord><gml:X>715123.54268236</gml:X><gml:Y>6394216.9209735</gml:Y></gml:coord> </gml:Box> </gml:boundedBy> <gml:featureMember> <ogr:fornminne_go"land2 fid="F0”> <ogr:geometryProperty><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>714990.60974832996726,6394185.235616750083864 714970.331562899984419,6394175.185422440059483 714929.378659090027213,6394090.087449519895017 714990.60974832996726,6394185.235616750083864</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></ogr:geometryProperty> <ogr:OBJEKT_ID>10094300110001</ogr:OBJEKT_ID> <ogr:GEOMETRI_ID>0</ogr:GEOMETRI_ID> <ogr:GTYPE>3</ogr:GTYPE> <ogr:BENAMNING>Källunge 11:1</ogr:BENAMNING> <ogr:OBJEKTTYP>Gravfält</ogr:OBJEKTTYP> <ogr:ANTBED>Fast fornlämning</ogr:ANTBED> <ogr:URL>hNp://www.fmis.raa.se/cocoon/fornsok/visa.html?objek+d=10094300110001</ogr:URL> </ogr:fornminne_go"land2> </gml:featureMember> </ogr:FeatureCollec?on>
h"p://www.gisgruppen.se
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
GML från FMIS WFS <?xml version="1.0" encoding="uz-‐8" ?> <ogr:FeatureCollec?on xmlns:xsi="h"p://www.w3.org/2001/XMLSchema-‐instance" xsi:schemaLoca?on="h"p://ogr.maptools.org/ fornminne_go"land2.xsd" xmlns:ogr="h"p://ogr.maptools.org/" xmlns:gml="h"p://www.opengis.net/gml"> <gml:boundedBy> <gml:Box> <gml:coord><gml:X>714807.38101711</gml:X><gml:Y>6394049.46572817</gml:Y></gml:coord> <gml:coord><gml:X>715123.54268236</gml:X><gml:Y>6394216.9209735</gml:Y></gml:coord> </gml:Box> </gml:boundedBy> <gml:featureMember> <ogr:fornminne_go"land2 fid="F0”> <ogr:geometryProperty><gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>714990.60974832996726,6394185.235616750083864 714970.331562899984419,6394175.185422440059483 714929.378659090027213,6394090.087449519895017 714990.60974832996726,6394185.235616750083864</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon></ogr:geometryProperty> <ogr:OBJEKT_ID>10094300110001</ogr:OBJEKT_ID> <ogr:GEOMETRI_ID>0</ogr:GEOMETRI_ID> <ogr:GTYPE>3</ogr:GTYPE> <ogr:BENAMNING>Källunge 11:1</ogr:BENAMNING> <ogr:OBJEKTTYP>Gravfält</ogr:OBJEKTTYP> <ogr:ANTBED>Fast fornlämning</ogr:ANTBED> <ogr:URL>hNp://www.fmis.raa.se/cocoon/fornsok/visa.html?objek+d=10094300110001</ogr:URL> </ogr:fornminne_go"land2> </gml:featureMember> </ogr:FeatureCollec?on>
A"rib
ut
Geom
etri
h"p://www.gisgruppen.se
Desktop
Webb Datalagring
Metadata
GPS
Standardise
rade
tjä
nster
WPS CSWWFS WMS
Andra vik?ga OGC-‐standarder
33
• WPS = Web Processing Services, bearbetningar och analyser som tjänst. Ex: Koordina"ransforma?on, buffert, formatkonvertering
• CSW = Catalog Services for the Web, GeoPortaler/Metadatakataloger för a" söka eqer geodata tex. www.geodata.se
• KML= Keyhole Markup Language – Googleformat för presenta?on och kontroll av geodata
• SLD = Styled Layer descriptor, utseendemallar för WMS/WFS tjänster
• SOS = Sensor observa?on services, mä" och övervakningstjänster, tex. övervakning av va"en-‐ eller luqkvalitet
• WMTS= Web Map Tile Service, en tjänst som skapar indexerade småbilder (?les) av andra tjänster för a" få förbä"rad prestanda
tjänster
Exemepl på komponenter
Geoserver ArcGIS-‐server Mapserver Carmenta engine
PostGIS SDE Oracle Spa?al SQL-‐server
GeoNetwork Open Source
Gränssni"sbibliotek i JS
GeoExt JQuery
Google Earth ArcGIS MapInfo TopoCad QGIS
Kartkomponentsbibliotek i JS
OpenLayers Leaflet
Kartmotor
FME-‐server QGIS-‐server ArcGIS-‐server
HTML5
h"p://www.gisgruppen.se
Publicera Geodata som tjänst
• Öppna standarder ex. WMS, WFS mfl. • Krävs någon form av kartmotor (mapserver), tex.:
• Kartmotorn är en servertjänst som u?från indatavärden (som boundingbox, zoomnivå, s?lmallar mm) skapar kartbilder vid förfrågan. • Exempel på kartmotorer: Geoserver, Mapserver, ArcGIS-‐server, ArcIMS-‐server, MapXtreme, MapGuide, QGIS-‐server, Degree mfl.
h"p://www.gisgruppen.se 36
Serverdelen av WebbGIS
• Det finns en mängd alterna?va server-‐lösningar för WebbGIS, från många olika leverantörer. Allt eqer behov och vad som finns sedan ?digare i organisa?onen. – Tjänst-‐ och Kartmotorer – API:er – Databaser – Integra?onspla�ormar – ETL (Extraxt, transform, Load) – Verksamhetslogik
h"p://www.gisgruppen.se 37
Faktorer som påverkar WebbGIS komponenternas prestanda
• Arbetsflöde • Serverprestanda • Nätverksprestanda • Underhåll och bakåtkompa?bilitet • Skalbarhet • Interoperabilitet • Dataformat • Utskriqshantering • Anpassningar • Egenutveckling kontra COTS (Commercial of the shelf
product)
h"p://www.gisgruppen.se
Op?mering av kar"jänster • Dataop?mering
– Datamängd – index, – generalisering av komplexa features – intervall (skala olika lager)
• Kartmotorop?mering – Syles (mindre komplexa) – Cachning av externa tjänster
• Nätop?mering – Lokal cach – Tile – bildstorlek,
• Användningsop?mering – Gui och funk?onalitet som motverkar onödiga klick och uppritningar,
genomtänkt gränssni"
h"p://www.gisgruppen.se 39
Organisatoriska krav kring WebbGIS
• Ajourhållning • Metadatasä"ning • Dataägarskap • Dataprodukt (inkl. specifika?on) • Rä�ghetshantering, både tekniskt och organisatoriskt och prak?skt (vad får data användas ?ll och vem får se vad) – Spa?al rä�ghetshantering! – Vem får se vad var?
• Dataavtal och Copyright-‐märkning • Teknikfrågor: Inre/y"re miljö, synkning av data, backup-‐hantering, integra?on med övriga IT-‐system