Upload
leonhard-mormann
View
103
Download
0
Embed Size (px)
Citation preview
Geoinfo IIGeoinfo II
Relationale DatenbankenRelationale Datenbanken
die Architektur von ArcSDEdie Architektur von ArcSDE
C a r s t e n H i m p l e rC a r s t e n H i m p l e r B o n n , 0 3 . 0 2 . 2 0 0 3 B o n n , 0 3 . 0 2 . 2 0 0 3
P r o s e m i n a rP r o s e m i n a r
ÜbersichtÜbersicht
Relationale DatenbankenRelationale Datenbanken
ArcSDEArcSDE
ArchitekturArchitektur
DatenintegritätDatenintegrität
DatenspeicherungDatenspeicherung
Räumliche Räumliche
AnfragenAnfragen
RRELATIONALEELATIONALEGGEODATENBANKEN EODATENBANKEN
Was ist eine relationale Geodatenbank?Was ist eine relationale Geodatenbank?
Datenbank, die räumlich bezogene geographische Daten Datenbank, die räumlich bezogene geographische Daten enthältenthält
Was ist eine relationale Geodatenbank?Was ist eine relationale Geodatenbank?
Datenbank, die räumlich bezogene geographische Daten Datenbank, die räumlich bezogene geographische Daten enthältenthält
Repräsentation von Dingen als Objekte mit Eigenschaften, Repräsentation von Dingen als Objekte mit Eigenschaften, Verhalten und räumlichen Beziehungen;Verhalten und räumlichen Beziehungen;
Name, Gesamtlänge…
Flussrichtung
Breite (x,y), Tiefe (x,y),…
Rhein
Was ist eine relationale Geodatenbank?Was ist eine relationale Geodatenbank?
Datenbank, die räumlich bezogene geographische Daten Datenbank, die räumlich bezogene geographische Daten enthältenthält
Repräsentation von Dingen als Objekte mit Eigenschaften, Repräsentation von Dingen als Objekte mit Eigenschaften, Verhalten und räumlichen Beziehungen;Verhalten und räumlichen Beziehungen;
Definition von Beziehungsregeln zwischen Objekten Definition von Beziehungsregeln zwischen Objekten möglichmöglich
(referentielle Integrität)(referentielle Integrität)
Name, Gesamtlänge…
Flussrichtung
Breite (x,y), Tiefe (x,y),…
Rhein
Mindestabstand Gebäude - Ufer
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Raster datasets
Rasters
TIN datasets
Locators
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Raster datasets
Rasters
TIN datasets
Locators
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Raster datasets
Rasters
TIN datasets
Locators
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Raster datasets
Rasters
TIN datasets
Locators
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Raster datasets
Rasters
TIN datasets
Locators
Objekt:Objekt: nichträumlich nichträumlich
z.B.Grundstückseigentümerz.B.Grundstückseigentümer
Objekt class:Objekt class:
Datentabelle von ObjektenDatentabelle von Objekten
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Raster datasets
Rasters
TIN datasets
Locators
Feature:Feature: räumlich, koordiniert (x,y) räumlich, koordiniert (x,y)
Typen: Typen: Punkt, Linie, Kurve, Polygon, FlächePunkt, Linie, Kurve, Polygon, Fläche
z.B. Grundstückz.B. Grundstück
Feature Class:Feature Class:
Tabelle von Features des gleichen TypesTabelle von Features des gleichen Types
enthält feature attributes (Adresse, m²,..)enthält feature attributes (Adresse, m²,..)
unabhängig von anderen f.classesunabhängig von anderen f.classes
Alle feature classes eines featuredatasets Alle feature classes eines featuredatasets haben das gleiche Koordinatensystem!haben das gleiche Koordinatensystem!
(spatial reference)
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Raster datasets
Rasters
TIN datasets
Locators
Relationship:Relationship: verlinkt räumliche und verlinkt räumliche und nicht räumliche Dingenicht räumliche Dinge
z.B. Zuordnung von z.B. Zuordnung von Grundstück und EigentümerGrundstück und Eigentümer
Relationship class:Relationship class:
speichert Beziehungen zwischen classes speichert Beziehungen zwischen classes in Tabellenin Tabellen
Domains
Validation rules
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
Geometric networks:Geometric networks:
Benutzerdefinierte Sammlung von feature Benutzerdefinierte Sammlung von feature classesclasses
feature classes bilden ein geometrisches feature classes bilden ein geometrisches Netzwerk ausNetzwerk aus
Kanten, Knoten und Schritten („turn“)Kanten, Knoten und Schritten („turn“)
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Planar topologies:
verbinden faetures zu kontinuierlichen Flächenobjekten
erlauben faetures gemeinsame Grenzen
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Domains:
Definition von wahren Attributwerten
(text, numerisch)
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Validation rules:
erzwingen Datenintegrität durch Domänen, relationship rules, connectivity rules
Bsp.: Verbindungsregeln für verschieden dicke Wasserleitungen
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Raster data:Raster data:
kopierte Karte, Oberfläche, Gitterdaten (Temp.), kopierte Karte, Oberfläche, Gitterdaten (Temp.), LuftbilderLuftbilder
PyramidenformPyramidenform
Problem: Datengrösse!!!Problem: Datengrösse!!!
Speicherform: TabelleSpeicherform: Tabelle
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
TIN datasets:TIN datasets:
trianguliert, unregelmäßig verteilte Punkte mit z-trianguliert, unregelmäßig verteilte Punkte mit z-WertenWerten
Speicherungsform: in coverage workspacesSpeicherungsform: in coverage workspaces
Speicherung noch nicht in Speicherung noch nicht in Geodatenbanken!!!Geodatenbanken!!!
Inhalte und Daten in einer GeodatenbankInhalte und Daten in einer Geodatenbank
GEODATENBANK
feature datasets
(spatial reference)
Objekt classes
Feature classes
Relationship classes
Geom. networks
Planar topologies
Domains
Validation rules
Raster datasets
Rasters
TIN datasets
Locators
Locators:
Definition von Konvertierungsprozessen, die alphanumerische Beschreibungen geographischen features zuordnen
(Bsp.: Zuordnung Adresstabelle - Orte)
ArcSDEArcSDE
Was ist ArcSDE?Was ist ArcSDE?
ArcSDE ist keine Datenbank!ArcSDE ist keine Datenbank!
Schnittstelle zu relationalen DatenbankenSchnittstelle zu relationalen Datenbanken
Tool zum Speichern, Verwalten und BearbeitenTool zum Speichern, Verwalten und Bearbeiten
von eigenen und fremden Datenvon eigenen und fremden Daten
ArcView ArcEditor ArcInfo ArcExplorer
(Java edition)
HTML
Viewer
ArcSDE Gateway
Dateien Datenbank
ArcIMS Server
ArcGIS ArcGIS DesktopDesktop ArcIMS
ArcSDEArcSDE
Hauptproblem:Hauptproblem:
Wie verwalte und bearbeite ich eine so Wie verwalte und bearbeite ich eine so
große Datenmenge bei gleichzeitiger große Datenmenge bei gleichzeitiger
Reduzierung des Rechenaufwands?Reduzierung des Rechenaufwands?
ArcSDEArcSDE
Hauptproblem:Hauptproblem:
Wie verwalte und bearbeite ich eine so Wie verwalte und bearbeite ich eine so
große Datenmenge bei gleichzeitiger große Datenmenge bei gleichzeitiger
Reduzierung des Rechenaufwands?Reduzierung des Rechenaufwands?
Lösung:Lösung: Systemorientierte DatenverwaltungSystemorientierte Datenverwaltung
Die ArcSDE ArchitekturDie ArcSDE Architektur
Three-tier-ArchitekturThree-tier-Architektur(application server)(application server)
Two-tier-ArchitekturTwo-tier-Architektur(direct connection)(direct connection)
Die Three-tier-ArchitekturDie Three-tier-Architektur
client client applicationapplication
ArcSDE ArcSDE application application
serverserver
ErgebnisErgebnisAnfrageAnfrage
DBMSDBMS
Die Three-tier-ArchitekturDie Three-tier-Architektur
client client applicationapplication
ArcSDE ArcSDE application application
serverserver
ErgebnisErgebnisAnfrageAnfrage
DBMSDBMS
Verteilung der Verteilung der Anwendungen auf Anwendungen auf server und clientserver und client
cooperative processingcooperative processing
Die Three-tier-ArchitekturDie Three-tier-Architektur
client client applicationapplication
ArcSDE ArcSDE application application
serverserver
ErgebnisErgebnisAnfrageAnfrage
DBMSDBMS
Probleme:Probleme:ServerausfallServerausfallDatenklammerungDatenklammerung
Viele Clients:Viele Clients:VersionenVersionen
Two-tier-ArchitekturTwo-tier-Architektur
ArcSDE Client ArcSDE Client (+ server)(+ server)
DBMSDBMS
direct connectiondirect connection
Two-tier-ArchitekturTwo-tier-Architektur
ArcSDE Client ArcSDE Client (+ server)(+ server)
DBMSDBMS
direct connectiondirect connection
Performance-VorteilePerformance-Vorteile
bezüglichbezüglich
Zugriff Zugriff Verwaltungsaufwand Verwaltungsaufwand
ServerausfallServerausfall
ABER: ABER: HardwareanforderungenHardwareanforderungen
Die ArcSDE ArchitekturDie ArcSDE Architektur
Vorteil dieser Architekturen:Vorteil dieser Architekturen:
Datenverwaltung auf dir zur Verfügung Datenverwaltung auf dir zur Verfügung stehende Hardwareleistung abstimmbar.stehende Hardwareleistung abstimmbar.
DatenspeicherungDatenspeicherungArcSDE DatenintegritätArcSDE Datenintegrität
Integritätsverwaltung von:Integritätsverwaltung von:
a) Punkt, Linie, Bogen, Polygona) Punkt, Linie, Bogen, Polygon
b) speziellen Beschränkungenb) speziellen Beschränkungen
(in Datenbank nicht sinnvoll)(in Datenbank nicht sinnvoll)
z.B. Mindestbandbreitez.B. Mindestbandbreite
oderoder
Polygon mit höchstens 5 SeitenPolygon mit höchstens 5 Seiten
DatenspeicherungDatenspeicherung
in Datenbank: in Datenbank: indizierte Tabellenindizierte Tabellen
bisher:bisher: nur FID (siehe GIS I: Redundanzfreiheit) nur FID (siehe GIS I: Redundanzfreiheit)
jetzt:jetzt: FID + Typenindex zur Suchbeschleunigung FID + Typenindex zur Suchbeschleunigung
DatenspeicherungDatenspeicherung
Binary Large Object (BLOB)Binary Large Object (BLOB)BinärcodeBinärcode
Normalized SchemaNormalized SchemaKoordinatenKoordinaten
Geometry TypeGeometry TypeGeometrieGeometrie
Räumliche AnfragenRäumliche Anfragen
Eigenschaften räumlicher Objekte: Eigenschaften räumlicher Objekte: i.d.R. hoher Speicherplatzbedarfi.d.R. hoher Speicherplatzbedarf
komplexe Berechnungen (steigende Kosten und komplexe Berechnungen (steigende Kosten und CPU-Anforderungen) CPU-Anforderungen)
Räumliche AnfragenRäumliche Anfragen
Eigenschaften räumlicher Objekte: Eigenschaften räumlicher Objekte: i.d.R. hoher Speicherplatzbedarfi.d.R. hoher Speicherplatzbedarf
komplexe Berechnungen (steigende Kosten und komplexe Berechnungen (steigende Kosten und CPU-Anforderungen) CPU-Anforderungen)
Prinzip:Prinzip: angenäherte Repräsentation eines Objektes angenäherte Repräsentation eines Objektes
Filter- und Verfeinerungstechniken Filter- und Verfeinerungstechniken
(umgesetzt durch SQL)(umgesetzt durch SQL)
Räumliche AnfragenRäumliche Anfragen
Eigenschaften räumlicher Objekte: Eigenschaften räumlicher Objekte: i.d.R. hoher Speicherplatzbedarfi.d.R. hoher Speicherplatzbedarf
komplexe Berechnungen (steigende Kosten und komplexe Berechnungen (steigende Kosten und CPU-Anforderungen) CPU-Anforderungen)
Prinzip:Prinzip: angenäherte Repräsentation eines Objektes angenäherte Repräsentation eines Objektes
Filter- und Verfeinerungstechniken Filter- und Verfeinerungstechniken
(umgesetzt durch SQL)(umgesetzt durch SQL)
Ergebnis:Ergebnis: Lieferung eines wahrscheinlichen Ergebnisses Lieferung eines wahrscheinlichen Ergebnisses
schnellere und effektivere Sucheschnellere und effektivere Suche
Räumliche AnfragenRäumliche Anfragen
Window queriesWindow queries Finde alle Bonner Straßen, die den Hofgarten durchquerenFinde alle Bonner Straßen, die den Hofgarten durchqueren
Join queriesJoin queries Finde alle öffentlichen Gebäude der Stadt Bonn, die mehr als Finde alle öffentlichen Gebäude der Stadt Bonn, die mehr als
8000 m² Büroflächen haben, und innerhalb von 10 min vom 8000 m² Büroflächen haben, und innerhalb von 10 min vom Hauptbahnhof mit öffentlichen Verkehrsmitteln erreichbar sind.Hauptbahnhof mit öffentlichen Verkehrsmitteln erreichbar sind.
Problem:Problem:
Wegen Größe der Ergebnismenge exakte Fragestellung notwendig!Wegen Größe der Ergebnismenge exakte Fragestellung notwendig!
Räumliche AnfragenRäumliche Anfragen
Window queriesWindow queries Finde alle Bonner Straßen, die den Hofgarten durchquerenFinde alle Bonner Straßen, die den Hofgarten durchqueren
Join queriesJoin queries Finde alle öffentlichen Gebäude der Stadt Bonn, die mehr als Finde alle öffentlichen Gebäude der Stadt Bonn, die mehr als
8000 m² Büroflächen haben, und innerhalb von 10 min vom 8000 m² Büroflächen haben, und innerhalb von 10 min vom Hauptbahnhof mit öffentlichen Verkehrsmitteln erreichbar sind.Hauptbahnhof mit öffentlichen Verkehrsmitteln erreichbar sind.
Problem:Problem:
Wegen Größe der Ergebnismenge Wegen Größe der Ergebnismenge exakte Fragestellungexakte Fragestellung notwendig! notwendig!
Räumliche AnfragenRäumliche Anfragen
SELECT SELECT ParksParks.Name FROM Parks, Roads WHERE.Name FROM Parks, Roads WHERE
MDSYS.SDO_RELATE (MDSYS.SDO_RELATE (ParksParks..GeometryGeometry, , RoadsRoads..GeometryGeometry, ,
‘MASK=OVERLAPBDYINTERSECT‘) = TRUE‘MASK=OVERLAPBDYINTERSECT‘) = TRUE
AND Roads.AND Roads.NameName = ‚A555‘ = ‚A555‘
Umsetzung:Umsetzung: Spatial Indexing Spatial Indexing (SQL)(SQL)
Spatial IndexingSpatial Indexing
Ziel:Ziel: schnelle Lieferung eines Datenpfades durch schnelle Lieferung eines Datenpfades durch Erleichterung räumlicher SelektionErleichterung räumlicher Selektion
Spatial IndexingSpatial Indexing
Ziel:Ziel: schnelle Lieferung eines Datenpfades durch schnelle Lieferung eines Datenpfades durch Erleichterung räumlicher SelektionErleichterung räumlicher Selektion
Prinzip:Prinzip: Durchsuchung von TeildatensätzenDurchsuchung von Teildatensätzen
1. Hinzufügen von best. räuml. Datenstrukturen zum System 1. Hinzufügen von best. räuml. Datenstrukturen zum System
(vgl. Binärer Suchbaum bei Standartattributen)(vgl. Binärer Suchbaum bei Standartattributen)
2. Kartierung von räuml. Objekten in einem eindimensionalen 2. Kartierung von räuml. Objekten in einem eindimensionalen Raum Raum
Speicherung in einem eindimensionalen Index, wieSpeicherung in einem eindimensionalen Index, wie
binärer Suchbaumbinärer Suchbaum
Räumliche Anfragen erfolgen nur anhand von TabellenRäumliche Anfragen erfolgen nur anhand von Tabellen
Spatial IndexingSpatial Indexing
Umsetzung: Umsetzung:
Quad-Tree-IndexingQuad-Tree-Indexing
R-Tree-IndexingR-Tree-Indexing
Spatial IndexingSpatial Indexing
Vorraussetzung:Vorraussetzung:
kontinuierliches Datenmodel , d.h. keine Datenaufspaltungkontinuierliches Datenmodel , d.h. keine Datenaufspaltung
Bsp.: Speicherung eines Grundstückes als Polygon Bsp.: Speicherung eines Grundstückes als Polygon
oder oder
Speicherung mehrerer Polygone zu einer kontinuierlichen feature classSpeicherung mehrerer Polygone zu einer kontinuierlichen feature class
Quad-Tree-IndexingQuad-Tree-IndexingPrinzip:Prinzip: Anbringung eines eines numerierten Gitters an eine feature classAnbringung eines eines numerierten Gitters an eine feature class
Anlegung einer IndextabelleAnlegung einer Indextabelle
Inhalt: welches feature in welchen Quadranten fälltInhalt: welches feature in welchen Quadranten fällt
Index GridIndex Grid
QUADQUAD
Quad-Tree-IndexingQuad-Tree-IndexingPrinzip:Prinzip: Anbringung eines eines numerierten Gitters an eine feature classAnbringung eines eines numerierten Gitters an eine feature class
Anlegung einer IndextabelleAnlegung einer Indextabelle
Inhalt: welches feature in welchen Quadranten fälltInhalt: welches feature in welchen Quadranten fällt
Index GridIndex Grid
hierarchiches hierarchiches MusterMuster
TREETREE
Quad-Tree-IndexingQuad-Tree-IndexingPrinzip:Prinzip: Anbringung eines eines numerierten Gitters an eine feature classAnbringung eines eines numerierten Gitters an eine feature class
Anlegung einer IndextabelleAnlegung einer Indextabelle
Inhalt: welches feature in welchen Quadranten fälltInhalt: welches feature in welchen Quadranten fällt
Index GridIndex Grid
INDEXINGINDEXING
R-Tree-IndexingR-Tree-Indexing
Prinzip:Prinzip: kleinstes umschließendes Viereck kleinstes umschließendes Viereck
sinnvoll bei n-dimensionaler Datenindizierung (dynamisch)sinnvoll bei n-dimensionaler Datenindizierung (dynamisch)
Bsp.: Ölförderung (zeitabhängig)Bsp.: Ölförderung (zeitabhängig)
R-Tree-IndexingR-Tree-Indexing
aa bb
cc
dd ee
rootroot
rootroot
AA BB
aa bb cc dd ee
AA
BB
ResuméResuméWas ist anders als bisher?Was ist anders als bisher?
InformationsmengeInformationsmenge
Genauere SuchergebnisseGenauere Suchergebnisse
Schnellere (bzgl. Datenmenge) SuchergebnisseSchnellere (bzgl. Datenmenge) Suchergebnisse
Datenverwaltung auf Hardware abstimmbarDatenverwaltung auf Hardware abstimmbar
Projektbildung (Versionen)Projektbildung (Versionen)
ABER: höhere HardwareanforderungenABER: höhere Hardwareanforderungen