26
® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Embed Size (px)

Citation preview

Page 1: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

®

GIS und relationale Datenbanken:

Arc/Info SDE und Oracle 8i Spatial

GIS und relationale Datenbanken:

Arc/Info SDE und Oracle 8i Spatial

Page 2: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

ÜbersichtÜbersicht

• Relationale Datenbanken

• Grenzen von Relationalen Datenbanken

• Oracle 8i Spatial

• ArcSDE

• Relationale Datenbanken

• Grenzen von Relationalen Datenbanken

• Oracle 8i Spatial

• ArcSDE

Page 3: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

RDBMS Relationale Datenbanken Managment Systeme

RDBMS Relationale Datenbanken Managment Systeme

• Alle Informationen werden in Tabellen gespeichert

• In jedem Feld befindet sich eine (atomare) Information

• Jeder Datensatz wird mit einem eindeutigen Schlüssel (Primary Key) versehen (z.B. ID)

• Beziehungen zwischen Datensätzen werden über Fremdschlüssel realisiert

• Indizierung von Feldern zur Steigerung der Geschwindigkeit bei der Datensatzsuche

• Abfragesprache SQL (Structured Query Language)

• Alle Informationen werden in Tabellen gespeichert

• In jedem Feld befindet sich eine (atomare) Information

• Jeder Datensatz wird mit einem eindeutigen Schlüssel (Primary Key) versehen (z.B. ID)

• Beziehungen zwischen Datensätzen werden über Fremdschlüssel realisiert

• Indizierung von Feldern zur Steigerung der Geschwindigkeit bei der Datensatzsuche

• Abfragesprache SQL (Structured Query Language)

Page 4: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

RDBMS Relationale Datenbanken Managment Systeme

RDBMS Relationale Datenbanken Managment Systeme

FremdschlüsselFremdschlüssel

PrimärschlüsselPrimärschlüssel

Page 5: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Grenzen von RDBMSGrenzen von RDBMS

• Keine komplexen Objekte in Feldern

• Komplexe Objekte müssen auf mehrere Spalten oder gar Relationen verteilt werden

• Alle Operationen basieren auf Tabellenstruktur

• Es sind keine direkten Operationen mit Objekten möglich

• Beispiel GIS:

• Keine komplexen Objekte in Feldern

• Komplexe Objekte müssen auf mehrere Spalten oder gar Relationen verteilt werden

• Alle Operationen basieren auf Tabellenstruktur

• Es sind keine direkten Operationen mit Objekten möglich

• Beispiel GIS: KörperKörper

FlächenFlächen

KnotenKnoten KantenKanten

Page 6: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Bisherige GIS-SystemeBisherige GIS-Systeme

• Getrennte Speicherung von Geometrie und Sachdaten– Sachdaten/Topologie in Shapefiles

– Geometrie/Attribute in RDBMS

– Gründe:

– Mangel an OO-DBMS

– Performance (räumliche Indizes)

• Geometrie in BLOB-Feldern– Keine Datenbankoperationen mit Blob-Feldern möglich

– GIS-System ist für die Arbeit mit diesen Daten notwendig

• Getrennte Speicherung von Geometrie und Sachdaten– Sachdaten/Topologie in Shapefiles

– Geometrie/Attribute in RDBMS

– Gründe:

– Mangel an OO-DBMS

– Performance (räumliche Indizes)

• Geometrie in BLOB-Feldern– Keine Datenbankoperationen mit Blob-Feldern möglich

– GIS-System ist für die Arbeit mit diesen Daten notwendig

Page 7: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Neue GIS-SystemeNeue GIS-Systeme

• Ideale Lösung– Eine Datenbank für alle Daten

• Kommerzielle Systeme– Oracle 8i Spatial

– Esri ArcSDE

– IBM DB2 Spatial Extender

– Informix Spatial DataBlade

• Oracle 8i– Keine Größenbegrenzung (mehrere Terrabyte möglich)

– Automatische Aufteilung auf Teildatenbankenz.B. nach Staaten, Regionen oder anderen Kriterien

– Orientiert sich weitestgehend an OGC SQL Spezifikationen

• Ideale Lösung– Eine Datenbank für alle Daten

• Kommerzielle Systeme– Oracle 8i Spatial

– Esri ArcSDE

– IBM DB2 Spatial Extender

– Informix Spatial DataBlade

• Oracle 8i– Keine Größenbegrenzung (mehrere Terrabyte möglich)

– Automatische Aufteilung auf Teildatenbankenz.B. nach Staaten, Regionen oder anderen Kriterien

– Orientiert sich weitestgehend an OGC SQL Spezifikationen

Page 8: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

PointPoint

PolygonPolygon Polygon Polygon with holewith hole

Self-crossingSelf-crossingline strings line strings

ZulässigZulässig

Self-crossingSelf-crossingpolygonspolygons

Nicht zulässigNicht zulässig

Oracle 8i - Primitive Geometrie TypenOracle 8i - Primitive Geometrie Typen

Line stringLine stringArc lineArc linestringstring

CompoundCompoundline stringline string

CompoundCompoundpolygonpolygon

OptimizedOptimizedpolygonspolygons

circlecirclerectanglrectanglee

®

Page 9: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i - Erstellung von ObjektenOracle 8i - Erstellung von Objekten

(10,10)(10,10)(10,10)(10,10)

(20,25)(20,25)(20,25)(20,25)

(30,10)(30,10)(30,10)(30,10) (40,10)(40,10)(40,10)(40,10)

SQL> INSERT INTO LINES VALUES ( 2> attribute_1, …. attribute_n, 3> MDSYS.SDO_GEOMETRY ( 4> 2002, null, null, 5> MDSYS.SDO_ELEM_INFO_ARRAY (1,2,1), 6> MDSYS.SDO_ORDINATE_ARRAY ( 7> 10,10, 20,25, 30,10, 40,10)) 8> );

SQL> INSERT INTO LINES VALUES ( 2> attribute_1, …. attribute_n, 3> MDSYS.SDO_GEOMETRY ( 4> 2002, null, null, 5> MDSYS.SDO_ELEM_INFO_ARRAY (1,2,1), 6> MDSYS.SDO_ORDINATE_ARRAY ( 7> 10,10, 20,25, 30,10, 40,10)) 8> );

®

Page 10: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Shapefile → Oracle 8i - ConverterShapefile → Oracle 8i - Converter

• Verwendet den Oracle „SQL*Loader“

• Verarbeitet Attribute (.DBF) ebenso wie Geometrie (.SHP and .SHX)

• Erstellt ein SQL-Skript zur Generierung einer Spatial-Tabelle

• Unterteilt große Daten automatisch in vom „SQL-Loader“ verarbeitbare SQL-Scripts

• Wird nicht offiziell unterstützt

• Verwendet den Oracle „SQL*Loader“

• Verarbeitet Attribute (.DBF) ebenso wie Geometrie (.SHP and .SHX)

• Erstellt ein SQL-Skript zur Generierung einer Spatial-Tabelle

• Unterteilt große Daten automatisch in vom „SQL-Loader“ verarbeitbare SQL-Scripts

• Wird nicht offiziell unterstützt

®

Page 11: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Spatial IndizierungSpatial Indizierung

• Basiert auf „Quad Tree Decomposition“

• Indiziert Punkte, Linien und Polygone

• Zwei unterschiedliche Methoden– Fixed tiling

– Hybrid tiling

• Der Vorgang der Indizierung nennt sicht „tessellation“ (Überlappungsfreie und vollständige Abdeckung des Raumes)

• Die Ergebnisse eines Tessellation-Prozesses werden in einem „spatial index“ gespeichert

• Basiert auf „Quad Tree Decomposition“

• Indiziert Punkte, Linien und Polygone

• Zwei unterschiedliche Methoden– Fixed tiling

– Hybrid tiling

• Der Vorgang der Indizierung nennt sicht „tessellation“ (Überlappungsfreie und vollständige Abdeckung des Raumes)

• Die Ergebnisse eines Tessellation-Prozesses werden in einem „spatial index“ gespeichert

®

Page 12: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Quad Tree - TessellationQuad Tree - Tessellation

Fixed Tile DecompositionFixed Tile Decomposition

Hybrid Tile DecompositionHybrid Tile Decomposition

Page 13: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i – Auffinden von ObjektenDatenbank nach „Fixed Tiling Tesselation“Oracle 8i – Auffinden von Objekten

Datenbank nach „Fixed Tiling Tesselation“

T1 T2 T7

T3 T4

T5 T6 T8 T9

®

Page 14: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i – Auffinden von Objekten1. Filterschritt: Grobfilterung

Oracle 8i – Auffinden von Objekten1. Filterschritt: Grobfilterung

T1 T2 T7

T3 T4

T5 T6 T8 T9

®

Page 15: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i – Auffinden von Objekten2. Filterschritt: exakte Filterung

Oracle 8i – Auffinden von Objekten2. Filterschritt: exakte Filterung

T1 T2 T7

T3 T4

T5 T6 T8 T9

®

Page 16: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Egenhoefer 4-SchnittmodellEgenhoefer 4-Schnittmodell

AABB AA

BB1 0

0 0

1 0

0 0

Page 17: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Egenhoefer 9-SchnittmodellEgenhoefer 9-Schnittmodell

AABB AA

BB1 0 1

0 0 1

1 1 1

1 0 1

0 0 1

0 1 1

Page 18: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

A

B

A

B

AB

AB

A

BA B

A

B

ContainsInside

CoversCovered by

Touch

OverlapBoundaries Intersect

OverlapBoundaries Disjoint

Equal

Disjoint

Oracle 8i - Topologische RelationenOracle 8i - Topologische Relationen

®

Page 19: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

• Einfache Geometrietypen• Einfache Geometrietypen

Oracle 8i – Beispiele für BufferingOracle 8i – Beispiele für Buffering

• Gruppen von Geometrietypen• Gruppen von Geometrietypen

®

Page 20: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i – BeispielOracle 8i – Beispiel

select c.city from cities c, interstates i where highway = 'I 170' and mdsys.sdo_relate ( c.location, mdsys.sdo_geom.sdo_buffer ( i.geom, 0.5, 0.00000005), 'mask=ANYINTERACT querytype=WINDOW' ) = 'TRUE';

select c.city from cities c, interstates i where highway = 'I 170' and mdsys.sdo_relate ( c.location, mdsys.sdo_geom.sdo_buffer ( i.geom, 0.5, 0.00000005), 'mask=ANYINTERACT querytype=WINDOW' ) = 'TRUE';

Suche alle Städte in einem Bereich um Highway I 170Suche alle Städte in einem Bereich um Highway I 170

®

Page 21: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

ArcSDE – Universelle DatenschnittstelleArcSDE – Universelle Datenschnittstelle

• Server für den Zugriff auf Geo-Daten (über Dienste)

• Zugriff auf die Daten übers Netzwerk / Internet

• Erleichtert den Übergang zu RDBMS

• 2 Module– SDE Server for Coverages

– SDE Server for DBMS

• Server für den Zugriff auf Geo-Daten (über Dienste)

• Zugriff auf die Daten übers Netzwerk / Internet

• Erleichtert den Übergang zu RDBMS

• 2 Module– SDE Server for Coverages

– SDE Server for DBMS

Page 22: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

ArcSDE – Universelle DatenschnittstelleArcSDE – Universelle Datenschnittstelle

• Zugriff auf die Daten in Tabellenform mit komplexen Objekten in Feldern

• Programmierschnittstelle (C, C++, VisualBasic, ...)

• Zugriff auf Daten aus verschiedensten Systemen(ArcInfo, ArcView, IMS, AutoCad, MicroStation, ...)

• Zugriff auf die Daten in Tabellenform mit komplexen Objekten in Feldern

• Programmierschnittstelle (C, C++, VisualBasic, ...)

• Zugriff auf Daten aus verschiedensten Systemen(ArcInfo, ArcView, IMS, AutoCad, MicroStation, ...)

Page 23: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

ArcSDE Server for CoveragesArcSDE Server for Coverages

• Nutzt die ArcInfo Datenformate

• Es ist keine Konvertierung notwendig

• Nutzt die ArcInfo Datenformate

• Es ist keine Konvertierung notwendig

Page 24: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

ArcSDE Server for DBMSArcSDE Server for DBMS

• Speichert die Daten in üblichen RDBMS(wie z.b Oracle, IBM DB2, Informix, MS SQL-Server, Sybase usw.)

• Nutzt eventuell vorhandene Spatial-Funktionen der Datenbanken– Oracle 8i Spatial

– IBM DB2 Spatial Extender

– Informix Spatial DataBlade

• Speichert die Daten in üblichen RDBMS(wie z.b Oracle, IBM DB2, Informix, MS SQL-Server, Sybase usw.)

• Nutzt eventuell vorhandene Spatial-Funktionen der Datenbanken– Oracle 8i Spatial

– IBM DB2 Spatial Extender

– Informix Spatial DataBlade

Page 25: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

®

EndeEnde

Page 26: ® GIS und relationale Datenbanken: Arc/Info SDE und Oracle 8i Spatial

Oracle 8i – OGC SpezifikationenOracle 8i – OGC Spezifikationen

Oracle OGC

Point Point

Point Cluster Multipoint

Curve

Circle

Optimized Rectangle

LineString LineString, Line, Linear Ring

Arc Strings MultiCurve

Compound Line String MultiLineString

Surface

Polygon Polygon

ArcPolygon

MultiSurface

Compound Polygon MultiPolygon