Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator...

22
Geodaten mit Oracle Geodaten mit Oracle Locator Locator ( ( Spatial Spatial ) in der Praxis ) in der Praxis am Beispiel der Wismut GmbH am Beispiel der Wismut GmbH Von der Erzeugung Von der Erzeugung ü ü ber die Verarbeitung bis zur Auswertung ber die Verarbeitung bis zur Auswertung Dipl.-Ing. (BA) Mathias Fritz WISMUT GmbH Abteilung Datenbanken/Modellierung Jagdschänkenstraße 29 09117 Chemnitz Tel. 0371 / 8120 446 WISMUT

Transcript of Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator...

Page 1: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

Geodaten mit OracleGeodaten mit Oracle LocatorLocator ((SpatialSpatial) in der Praxis ) in der Praxis am Beispiel der Wismut GmbHam Beispiel der Wismut GmbH

Von der Erzeugung Von der Erzeugung üüber die Verarbeitung bis zur Auswertungber die Verarbeitung bis zur Auswertung

Dipl.-Ing. (BA) Mathias Fritz

WISMUT GmbH Abteilung Datenbanken/Modellierung

Jagdschänkenstraße 2909117 Chemnitz

Tel. 0371 / 8120 446WISMUT

Page 2: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

GliederungGliederung

1. Vorstellung der Wismut 2. Allgemeine Voraussetzung3. Wie kommen die Geodaten in die Datenbank?4. Beispiele für die Nutzung in Fachanwendungen5. Probleme bei Nutzung von SDO_GEOMETRY aus

Entwicklersicht6. Nahtlose Nutzung von Geodaten in Integrationslösung

ALWIS

Page 3: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Das Unternehmen Wismut GmbHDas Unternehmen Wismut GmbH

AB

Pöhla

Aue

Ronneburg

CrossenSeelingstädt

AB

THÜRINGEN SACHSENKönigstein

DresdenGittersee

Unternehmensleitung

Die Wismut GmbH saniert die Hinterlassenschaften des Uranerzbergbaus in Sachsen und Thüringen an den

dargestellten Standorten

Page 4: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Das Unternehmen Wismut GmbHDas Unternehmen Wismut GmbHMehr als 2000 Sanierungsobjekte aller Art (Halden, Schächte, Betriebsflächen, Absetzanlagen,...)Ca. 6000 Genehmigungen zu 4000 Vorgängen mit rund 10000 Ausgangsschreiben und 7400 Dokumenten zu Nebenbestimmungen Messpunkte / -werte:– Ca. 2900 Oberflächenwasser-MPe, 3300 Grundwasser-MPe,

31000 Boden-MPe, 1200 Luft-MPe, 10 Wetterstationen– 2003 ca. 49300 Proben mit ca. 615000 Messergebnissen

Tagerisswerk und georeferenzierte Luftbilder an allen Standorten (jährlich aktualisiert)12600 Bilder für alle Sanierungsobjekte von 1964 – jetztMehr als 5300 Flurstücke mit Geometriedaten Ca. 6700 Ingenieurleistungen (Studien)

Weiterhin kaufmännische Daten und Informationen (SAP)

Page 5: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Technische Vorrausetzungen für NutzungTechnische Vorrausetzungen für Nutzung

Oracle 9i Standard Edition:– Oracle Locator als Feature enthalten

Oracle 9i Enterprise Edition:– Oracle Spatial als lizenzpflichtige Option

Unterscheidung:– Locator liefert:

• Datentyp, Indexes• Funktionen zur Selektion, „Verschneidung“

– Spatial zusätzlich z.B.: • Erweiterte Funktionen (die „neue“ Geometrien erzeugen)• Koordinaten Transformation• LRS, GeoCoding, 10g: GeoRaster

Page 6: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Was sind Geometrien?Was sind Geometrien?

Page 7: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

SDOSDO--GeometryGeometry DatentypDatentypTYPE SDO_GEOMETRY AS OBJECT (

SDO_GTYPE NUMBER,SDO_SRID NUMBER,SDO_POINT SDO_POINT_TYPE,SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY,SDO_ORDINATES SDO_ORDINATE_ARRAY,MEMBER FUNCTION GET_GTYPERETURN NUMBER DETERMINISTIC,MEMBER FUNCTION GET_DIMSRETURN NUMBER DETERMINISTIC,MEMBER FUNCTION GET_LRS_DIMRETURN NUMBER DETERMINISTIC);

Page 8: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Schritte zum Anlegen von SDOSchritte zum Anlegen von SDO--GeometryGeometry

Tabelle mit SDO Spalte erzeugen / AnfügenCREATE TABLE PPV (

PPV_NR NUMBER(7),GEOM MDSYS.SDO_GEOMETRY

);

Metadaten anlegenINSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO)

VALUES ('PPV', 'GEOM',MDSYS.SDO_DIM_ARRAY

(MDSYS.SDO_DIM_ELEMENT('X', 4500000, 5591000, 0.0005),MDSYS.SDO_DIM_ELEMENT('Y', 5430000, 5655000, 0.0005)

));

Spatial Index erzeugenCREATE INDEX IX_PPV_GEOM ON PPV(GEOM)INDEXTYPE IS MDSYS.SPATIAL_INDEX PARAMETERS ('SDO_INDX_DIMS=2');

Page 9: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Wie kommen Geodaten in die Datenbank?Wie kommen Geodaten in die Datenbank?

SDO_GEOM ETRY

Eingabe

Befehlszeilenprogramme:SHP2SDO + SQLLDR

ArcINFO über SDE(als SDO_GEOMETRY)

Cardo GeoEdit(Webbasiert)

Autodesk CAD Map

Manuelle Koordinateneingabe

Ein-/Ausgabe

Ein-/Ausgabe

Eingabe

Ein-/Ausgabe Optionale Wandlung3D -> 2D Geom Eingabe

DXF-Convert(Beibehaltung Layer,Blöcke...)

AvAlk-Converter Eingabe

Eingabe

ArcView 3.x über Erweiterung Ein-/Ausgabe

Page 10: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Wie kommen Geodaten in die Datenbank?Wie kommen Geodaten in die Datenbank?

Umwelt-datenbank

Messwerte Wasser,Luft,Boden, ODL

Geotechnik-datenbank

Bohrlochdaten, RKS etc.

Flurstücks-datenbank

Manuell (RW/HW)

ALK

GIS-Daten im Filesystem (Shape,

dxf)

Textdokumente im Filesystem

Risswerk

Sanierungs-objekte

Bild-Datenbank

Flächen-Datenbank

DXF-Converter

Acad Map

ArcView 3.x

Genehmigungs-datenbank

AvAlk-Converter

Page 11: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Wie kommen Geometrien in die Datenbank?Wie kommen Geometrien in die Datenbank?

Manuelle Eingabe (E) + Keine spezielle Software nötig (z.B. Webformular)- Wenig komfortabel

ArcView 3.x Erweiterung (E/A)+ Kein SDE notwendig- Spezialentwicklung; nicht universell

ArcInfo (SDE) (E/A)+ Einfache Nutzung in ESRI-Welt- Kompatibilität beim Zugriff auf „nicht-SDE-Layern“ in Oracle

ACAD Map (E/A)+ Einfache Nutzung aus CAD-Programm- Speichert immer 3D-Geometrie

Page 12: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Wie kommen Geometrien in die Datenbank?Wie kommen Geometrien in die Datenbank?

AvAlk-Converter (E)+ leistungsfähig

DXF-Converter (E)+ Beim Import Zerlegung von Blöcken zu Einzelelementen+ Vereinfachung der Geometrie-Typen+ Über Exportserver ist Original DXF wieder herstellbar

SHP2SDO (E)+ Schnelles Laden von vielen Geometrien per SQLLDR - nur Kommandozeile- Konvertierung des SDO_GTYPE (SDO_MIGRATE.TO_CURRENT)

Cardo-GeoEdit (E/A)+ Keine Software auf Client, nur Internet Explorer+ weitere Datenquellen (z.B. PostGIS)+ flexible Bearbeitungsfunktionen

Page 13: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Beispiele für die Nutzung in FachanwendungenBeispiele für die Nutzung in Fachanwendungen-- Beispiel 1: Einfache Abfrage: "Welche Messpunkte liegen auf der Fläche"-- 0.2 sec; 549 DatensätzeSELECT mpkt, f, rw, hw

FROM v_udb_gesamt a, geodaten bWHERE b.ppv_nr = 2040090AND sdo_relate (a.geom, b.geom,

'MASK=ANYINTERACT QUERYTYPE=WINDOW') ='TRUE'ORDER BY mpkt;

-- Beispiel 2: Einfache Abfrage: -- "Welche Messpunkte liegen im Umkreis der Fläche"-- 0.3 sec; 698 DatensätzeSELECT mpkt, f, rw, hw

FROM v_udb_gesamt a, geodaten bWHERE b.ppv_nr = 2040090AND sdo_within_distance (a.geom, b.geom, 'DISTANCE=50') = 'TRUE'

ORDER BY mpkt;

-- Beispiel 3: Einfache Abfrage mit Aggregierung-- 0.2 sec; 6 DatensätzeSELECT a.f, COUNT (*) AS anzahl

FROM v_udb_gesamt a, geodaten bWHERE b.ppv_nr = 2040090AND sdo_relate (a.geom, b.geom,

'MASK=ANYINTERACT QUERYTYPE=WINDOW') ='TRUE'GROUP BY fORDER BY f, 2;

Page 14: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Beispiele für die Nutzung in FachanwendungenBeispiele für die Nutzung in Fachanwendungen-- Beispiel 4: Histogramm von verteilten Ortdosisleistungen auf einer Fläche *-- 0.2 sec; 32 Datensätzeselect /*+ORDERED*/ distinct xaxis.odl,(vwn.anz/155)*100 as vwn_anz ,(nwn.anz/157)*100 as nwn_anz from (

select odl,id fromflaechen_adm.wnf_geom w,udbguru.odl_vwn_g owhere w.objectid=143 and sdo_relate( o.geom, w.geom,'MASK=ANYINTERACT QUERYTYPE=WINDOW')='TRUE'unionselect odl,id fromflaechen_adm.wnf_geom w,udbguru.odl_nwn_g owhere w.objectid=143 and sdo_relate( o.geom, w.geom,'MASK=ANYINTERACT QUERYTYPE=WINDOW')='TRUE'

) xaxis,(

select odl,count(*) as anz fromflaechen_adm.wnf_geom w,udbguru.odl_vwn_g owhere w.objectid=143 and sdo_relate( o.geom, w.geom,'MASK=ANYINTERACT QUERYTYPE=WINDOW')='TRUE'group by odl

) vwn,(

select odl,count(*) as anz fromflaechen_adm.wnf_geom w,udbguru.odl_nwn_g owhere w.objectid=143 and sdo_relate( o.geom, w.geom,'MASK=ANYINTERACT QUERYTYPE=WINDOW')='TRUE'group by odl

) nwn where

xaxis.odl=vwn.odl(+) andxaxis.odl=nwn.odl(+) order by 1

* Etwas umständlich, umgeht aber einen ORA-600 Fehler bei Full-Outer-Join mit Geom-Tabellen

Page 15: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Beispiele für die Nutzung in FachanwendungenBeispiele für die Nutzung in Fachanwendungen-- Beispiel 5: Nächster Nachbar (Nearest Neighbor )-- 0.2 sec ; 50 Datensätze SELECT b.mpnr as nn_mpnr, b.mpkt as nn_mpkt, round(sdo_nn_distance(1) ,2) dist

FROMv_udb_gesamt b

WHEREsdo_nn ( b.geom,

(select geom from v_udb_gesamt where mpnr=26418),'SDO_NUM_RES=50',1) = 'TRUE'

ORDER BY dist;

-- Beispiel 5: Nächster Nachbar (Nearest Neighbor )-- 0.2 sec ; 5 Datensätze SELECT b.mpnr as nn_mpnr, b.mpkt as nn_mpkt, round(sdo_nn_distance(1) ,2) dist

FROM(select * from v_udb_gesamt where f='GW') b

WHEREsdo_nn ( b.geom,

(select geom from v_udb_gesamt where mpnr=26418),'SDO_NUM_RES=50',1) = 'TRUE'

ORDER BY dist;

Aber:

Page 16: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Probleme bei der Nutzung von SDO_GEOMETRYProbleme bei der Nutzung von SDO_GEOMETRY

(Erfahrungen basieren auf Oracle 9i R2)

1. Abfrage von Windows Clients über ODBC/OLEDB– Selektierte SDO_GEOMETRY Spalte bringt OraOleDB Treiber

zum Absturz (select * from table)– Microsoft Provider liefert Fehlermeldung; unterstützt aber viele

andere Funktionen nicht– Funktionierend: OO4O (Oracle Objects 4 OLE)

beim Erweitern von bestehenden Tabellen um SDO-Spalten müssen Clientzugriffswege beachtet werden

Page 17: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Probleme bei der Nutzung von SDO_GEOMETRYProbleme bei der Nutzung von SDO_GEOMETRY

2. Problem SRID (Spatial Reference, Projektion)– In einer Tabelle können nur gleiche SRID‘s genutzt werden

• Wismut arbeitet in GK4 + GK5 würde doppelte Tabellen bedeuten

• SDO_CS zur Transformation der Koordinaten ist Bestandteil Spatial (eigene Lizenz, Enterprise Edition)

– SDE und AcadMap speichern Geometrien ohne SRID– Verschneidung (SDO_RELATE) funktioniert nur mit gleichen

(oder kompatiblen) SRID‘s • wünschenswert: Option, SRID zu ignorieren

vor Aufbau einer Geodatenbank sollte man sich generell festlegen, ob SRID‘s genutzt werden

Page 18: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Probleme bei der Nutzung von SDO_GEOMETRYProbleme bei der Nutzung von SDO_GEOMETRY

3. Verschiedene Layer-Dimensionen– Fehlermeldung bei Verschneidung von 3D und 2D

• Nur AcadMap speichert immer 3D ab– Änderung der Anordnung der Tabellen in „from“ und

„sdo_relate“ als Workaround, • dadurch aber schlechte Performance möglich

4. Verschneidung über DB-Link– Nicht sehr performant, da Domain Indexes (Spatial Index)

nicht über Instanzen wirken– Erster Parameter beim SDO_RELATE muss Index haben– Möglich, wenn Menge der „remote“-Geometrien klein ist, d.h.

nur als Abfragekriterium dient

Page 19: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Probleme bei der Nutzung von SDO_GEOMETRYProbleme bei der Nutzung von SDO_GEOMETRY

5. MERGE-Befehl– „MERGE“ = INSERT+UPDATE– Funktioniert nicht mit aktivem Domain Index – Drop und Create des Index dauert oft sehr lange

Page 20: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

Struktur von ALWIS auf Basis von Struktur von ALWIS auf Basis von cardocardo

Windows-Server zur Kartenaufbereitung und Informationsausgabe

Oracle 9i

HPUX-Server Datenhaltung und Verschneidung

Webserver

(Win2000, IIS)

MapServer

(GIS-Funktionen)

?

??

?

!!

!

!

SDE

ObjekteRisswerk,Flurstücke

Oracle 9i

Fremdsysteme, z.B. SAP

Filesystem:•Geometrien (Shape, dxf)•Textdokumente•Bilder

Intranet

Page 21: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

LiveLive--DemonstrationDemonstration

Workflow in WNF-Anwendung mit Geometrie VerarbeitungBergschadenkundliche Analyse zur Beurteilung von Gefährdung durch BergbauHoch qualitative PDF-Ausdrucke bis A0Räumliche Interpolation von Messwerten und Grundwasserständen

Page 22: Von der Erzeugung über die Verarbeitung bis zur Auswertung · Geodaten mit Oracle Locator (Spatial) in der Praxis am Beispiel der Wismut GmbH. Von der Erzeugung . ü. ber die Verarbeitung

WISMUT

EndeEnde

Danke für Ihre Aufmerksamkeit!