NoSQL Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 Holger Baumann, Hochschule Anhalt Agenda Status Quo – Speicherung von Geodaten in SQL-Datenbanken Datenbanken im Web Umfeld Verteilte Datenbanken Begriff und Klassifizierung NoSQL Datenbanken Beispiel: MongoDB, Geodaten in MongoDB Schlussfolgerungen Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 2 1 Speicherung von Geodaten in relationalen Datenbanken Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 3 Speicherung von Geodaten in objektrelationalen Datenbanken Geometrie Flurstück Geometrie Gebäude Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 4 2 Datenbanksysteme mit Erweiterung für Geodaten (Auswahl) Datenbanksystem Oracle PostgreSQL MS SQL Server IBM DB2 MySQL SpatialLite Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt Erweiterung zur Geodatenbank Oracle Locator und Oracle Spatial PostGIS ab Version 2008 integriert Spatial Extender und Geodetic Extender keine objektrelationale Erweiterung, aber Unterstützung von Geometrie-Datentypen, räumliche Anfragen werden teilweise unterstützt Variante der Datenbank SQLite als Geodatenbank, auch für mobile Anwendungen NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 5 Anforderungen an Datenbanken im Web-Umfeld Quelle: http://www.smartinsights.com/internet-marketing-statistics/happens-online-60-seconds Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt 6 3 Anforderungen an Datenbanken im Web-Umfeld mit Anwendungen im Web-Umfeld (Content Management, Soziale Netzwerke) entstehen geänderte Anforderungen an Datenbanksysteme: extrem große Datenmengen (teilweise Peta-Byte) Daten häufig unstrukturiert oder semistrukturiert flexible Datenbank-Schemata gefordert (Tabellen zu starr) schnelle Antwortzeiten der Datenbank hohe Verfügbarkeit Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 7 Skalierung von Datenbanken Vertikale Skalierung Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt Horizontale Skalierung NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 8 4 Definition NoSQL - Datenbanksystem NoSQL-Datenbanken sind durch folgende Punkte gekennzeichnet: Datenbankmodell ist nicht-relational schemafreies Datenmodell oder nur schwache Schemarestriktionen horizontal skalierbar häufig anderes Konsistenzmodell als bei relationalen Datenbanken (nach Kudraß: Taschenbuch Datenbanken, Kapitel 12) Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 9 Klassifizierung von NoSQL Datenbanken Key-Value Document Store Wide Column Store Graph Databases mehr als 225 verschiedene Datenbanken [siehe: http://www.nosql-database.org/] Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 10 5 Datenbank - Ranking [Quelle: http://db-engines.com/de/ranking] Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 11 Dokumentenorientierte Datenbank MongoDB humongous, „gigantisch“ Schemafreie Datenbank, Dynamisches Datenbank-Schema: Schema wird zur Laufzeit festgelegt CAP-Theorem: Konsistenz vor Verfügbarkeit, kann aber Verfügbarkeit aufrechterhalten, solange die Mehrzahl der Datenbankknoten miteinander kommunizieren verwaltet Sammlungen von JSON-ähnlichen Dokumenten Suche in jedem Feld der Datenbank möglich, Bereichssuche, über reguläre Ausdrücke und auch unterstützt durch JavaScript-Funktionen, die auf dem Datenbank-Server ausgeführt werden Unterstützung von Indizes auch von räumlichen Replikation: Master-Slave, bei Ausfall des Masters wird ein neuer Master gewählt Entwicklung seit 2009, Open Source, programmiert in C++, für viele Plattformen Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 12 6 JSON - GeoJSON RFC 7946: https://tools.ietf.org/html/rfc7946 Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 13 MongoDB Bildquelle: Masterarbeit A.Kohlrusch 2016 Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 14 7 Indizierung von Geodaten in MongoDB Index 2d: für Koordinatenpaare in der Ebene (Wertebereich -180 bis 180 !) Beschreibung der Punkte in JSON ist kein GeoJSON nur bis Version 2.2 empfohlen wenige Funktionen, keine Linien- und Flächenobjekte realisiert: GeoHash Index 2dsphere: ab Version 2.6 auch Unterstützung aller Simple Feature Geometrien (OGC) Index für Koordinatenpaare oder GeoJSON kein shared-Index Koordinatensystem ist WGS84 realisert: rekursive Quadtree-Zerlegung, binär kodiert Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 15 Raumbezogenen Daten in MongoDB Unterstützte GeoJSON-Objekte: Point LineString Polygon MultiPoint MultiLineString MultiPolygon GeometryCollection Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 16 8 Raumbezogene Operatoren in MongoDB Operator Funktion $geoWithin Dokumente innerhalb einer Geometrie $geoIntersects Dokumente, die eine Geometrie schneiden $near Dokumente im Umkreis zu einem Punkt (Abstand mit Angabe größter und kleinster Wert) $nearSphere Dokumente im Umkreis zu einem Punkt (Abstand mit Angabe größter und kleinster Wert), Berechnung sphärisch Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 17 Beispieloperation Quelle: https://docs.mongodb.com/manual/reference/operator/query/geoWithin/#examples Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 18 9 Schlussfolgerungen - Dokumentendatenbanken interessantes (anderes) Konzept, kostengünstig für große Datenmengen „Aufbewahren“ von Geodaten unproblematisch Unterstützung für Geo-Anwendungen noch sehr knapp, auf WebAnwendungen ausgerichtet, dafür möglicherweise ausreichend eingeschränkte Unterstützung von Koordinatensysteme (künftige Unterstützung von Nutzerkoordinatensystemen????) Entwicklungen noch nicht abgeschlossen! auch Couchbase-Server „beginnt“ mit Unterstützung raumbezogener Daten Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 19 Anwendungsszenarien – Kombination verschiedener Speichertechnologien Quelle: Menneric, C., Arrasz, J.: Eine Reise durch die Welt von NoSQL, 2015 Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 20 10 Anwendungsbeispiel: Zwischenspeicherung komplexer Abfragen zur Visualisierung im Web-Browser Bildquelle: Poster zur Masterarbeit A.Kohlrusch 2016 Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 21 Quellen / Literaturhinweise http://www.nosql-database.org/ Edlich u.a.: NoSQL – Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken, Hanser Verlag, 2010 Menneric, C., Arrasz, J.: Eine Reise durch die Welt von NoSQL, entwickler.press, 2015 Kudraß: Taschenbuch Datenbanken, Hanser Verlag, 2.Auflage, 2015 Kohlrusch, A.: Entwicklung und prototypische Umsetzung eines Informationssystems für die Bewertung des Risikopotenzials von Pflanzenschutzmitteln unter Einsatz von MongoDB, Masterarbeit Hochschule Anhalt, 2016 Schulz, M.: Untersuchungen zum Einsatz von Apache CouchDB als Geodatenbank, Masterarbeit Hochschule Anhalt, 2016 Prof. Dr.-Ing. Holger Baumann Hochschule Anhalt NoSQL – Andere Wege in der Speicherung von Geodaten? 9.Geofachtag Sachsen-Anhalt - 16.2.2017 22 11 Vielen Dank für die Aufmerksamkeit! 12