Abfrage von Geodaten in Amazon Redshift - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Abfrage von Geodaten in Amazon Redshift

Spatial data (Geodaten) beschreibt die Position und Form einer Geometrie in einem definierten Raum (einem räumlichen Bezugssystem). Amazon Redshift unterstützt Geodaten mit den Datentypen GEOMETRY undGEOGRAPHY, die räumliche Daten und optional die Kennung des räumlichen Bezugssystems (SRID) der Daten enthalten.

Geodaten enthalten geometrische Daten, die zur Darstellung geografischer Merkmale verwendet werden können. Zu den Beispielen für diese Art von Daten zählen Wetterberichte, Wegbeschreibungen, Tweets mit geografischen Positionen, Filialstandorte und Flugrouten. Geodaten spielen eine wichtige Rolle in der Geschäftsanalyse, im Berichtswesen und in der Prognose.

Sie können räumliche Daten mit Amazon Redshift SQL Redshift-Funktionen abfragen. Geodaten enthalten geometrische Werte für ein Objekt.

Die GEOMETRY-Datentyp-Operationen arbeiten auf der kartesischen Ebene. Die Kennung des räumlichen Bezugssystems (SRID) wird zwar innerhalb des Objekts gespeichert, SRID ist jedoch lediglich eine Kennung des Koordinatensystems und spielt in den Algorithmen, die zur Verarbeitung der GEOMETRY Objekte verwendet werden, keine Rolle. Umgekehrt behandeln die Operationen für den GEOGRAPHY-Datentyp die Koordinaten in Objekten als sphärische Koordinaten auf einem Sphäroid. Dieses Sphäroid wird durch den definiertSRID, der auf ein geografisches räumliches Bezugssystem verweist. Standardmäßig werden GEOGRAPHY Datentypen mit einem Raumbezug (SRID) 4326 erstellt, der auf das World Geodetic System () 84 verweist. WGS Weitere Informationen zu SRIDs finden Sie unter Räumliches Bezugssystem in Wikipedia.

Sie können die Funktion „ST_Transform“ verwenden, um die Koordinaten aus verschiedenen räumlichen Bezugssystemen zu transformieren. Nachdem die Transformation der Koordinaten abgeschlossen ist, können Sie auch eine einfache Umwandlung zwischen den beiden verwenden, sofern die Eingabe mit der geographischen SRID Kodierung GEOMETRY erfolgt. Diese Verteilung kopiert einfach die Koordinaten ohne weitere Transformation. Beispielsweise:

SELECT ST_AsEWKT(ST_GeomFromEWKT('SRID=4326;POINT(10 20)')::geography);
st_asewkt ------------------------ SRID=4326;POINT(10 20)

Um den Unterschied zwischen GEOMETRY den beiden GEOGRAPHY Datentypen besser zu verstehen, sollten Sie erwägen, die Entfernung zwischen dem Flughafen Berlin (BER) und dem Flughafen San Francisco (SFO) mithilfe des World Geodetic System (WGS) 84 zu berechnen. Verwendung des Datentyps GEOGRAPHY, das Ergebnis wird in Metern angegeben. Wenn Sie den GEOMETRY Datentyp SRID 4326 verwenden, wird das Ergebnis in Grad angegeben, was nicht in Meter umgerechnet werden kann, da die Entfernung von einem Grad davon abhängt, wo sich die Geometrien auf dem Globus befinden.

Berechnungen zum Datentyp GEOGRAPHY werden hauptsächlich für realistische Runderdberechnungen wie die genaue Fläche eines Landes ohne Verzerrung verwendet. Aber sie sind weitaus teurer zu berechnen. Daher kann ST_Transform die Koordinaten in ein geeignetes lokal projiziertes Koordinatensystem umwandeln und die Berechnung für den Datentyp GEOMETRY schneller ausführen.

Mit Hilfe von Geodaten können Sie Abfragen ausführen, um Folgendes zu erreichen:

  • Ermitteln Sie den Abstand zwischen zwei Punkten.

  • Überprüfen Sie, ob ein Bereich (Polygon) ein weiteres enthält.

  • Überprüfen Sie, ob ein Linestring einen anderen Linestring oder ein Polygon schneidet.

Sie können den GEOMETRY-Datentyp verwenden, um die Werte von Geodaten zu speichern. Ein GEOMETRY-Wert in Amazon Redshift kann zweidimensionale (2D)-, dreidimensionale (3D)-, zweidimensionale Datentypen mit Maß (3DM) und vierdimensionale (4D) geometrisch primitive Datentypen definieren:

  • Eine zweidimensionale (2D)-Geometrie wird durch zwei kartesische Koordinaten (x, y) in einer Ebene angegeben.

  • Eine dreidimensionale (3DZ)-Geometrie wird durch zwei kartesische Koordinaten (x, y, z) in einer Ebene angegeben.

  • Eine zweidimensionale Geometrie mit Maß (3DM) wird durch drei Koordinaten (x, y, m) angegeben, wobei die ersten beiden kartesischen Koordinaten in einer Ebene und die dritte eine Messung ist.

  • Eine vierdimensionale Geometrie (4D) wird durch vier Koordinaten (x, y, z, m) angegeben, wobei die ersten drei kartesischen Koordinaten in einer Ebene und die vierte ein Maß ist.

Weitere Informationen zu geo-primitiven Datentypen finden Sie unter Well-known text representation of geometry in Wikipedia.

Sie können den GEOGRAPHY-Datentyp verwenden, um die Werte von Geodaten zu speichern. Ein GEOGRAPHY-Wert in Amazon Redshift kann zweidimensionale (2D)-, dreidimensionale (3D)-, zweidimensionale Datentypen mit Maß (3DM) und vierdimensionale (4D) geometrisch primitive Datentypen definieren:

  • Eine zweidimensionale Geometrie (2D) wird durch Längen- und Breitengradkoordinaten auf einem Sphäroid angegeben.

  • Eine dreidimensionale Geometrie (3D) wird durch Längen- und Breitengrad- sowie Höhenkoordinaten auf einem Sphäroid angegeben.

  • Eine zweidimensionale Geometrie mit Maß (3DM) wird durch drei Koordinaten (Längengrad, Breitengrad, Maß) angegeben, wobei die ersten beiden Winkelkoordinaten in einer Ebene liegen und die dritte eine Messung ist.

  • Eine vierdimensionale Geometrie (4D) wird durch vier Koordinaten (Längengrad, Breitengrad, Höhe, Maß) angegeben, wobei die ersten drei Längengrad, Breitengrad und Höhe sind und die vierte eine Messung ist.

Weitere Informationen über geografische Koordinatensysteme finden Sie unter Geographisches Koordinatensystem und Sphärisches Koordinatensystem in Wikipedia.

Die Datentypen GEOMETRY und GEOGRAPHY haben die folgenden Subtypen:

  • POINT

  • LINESTRING

  • POLYGON

  • MULTIPOINT

  • MULTILINESTRING

  • MULTIPOLYGON

  • GEOMETRYCOLLECTION

Es gibt Amazon Redshift SQL Redshift-Funktionen, die die folgenden Darstellungen geometrischer Daten unterstützen:

  • Geo JSON

  • Bekannter Text (WKT)

  • Erweiterter bekannter Text (EWKT)

  • Bekannte binäre (WKB) Darstellung

  • Erweiterte bekannte Binärdatei (EWKB)

Sie können zwischen den Datentypen GEOMETRY und GEOGRAPHY umwandeln.

Im Folgenden wird SQL eine Linienfolge von a GEOMETRY nach a umgewandelt. GEOGRAPHY

SELECT ST_AsEWKT(ST_GeomFromText('LINESTRING(110 40, 2 3, -10 80, -7 9)')::geography);
st_asewkt ---------------------------------------------- SRID=4326;LINESTRING(110 40,2 3,-10 80,-7 9)

Im Folgenden wird SQL eine Linienfolge von a nach a umgewandelt. GEOGRAPHY GEOMETRY

SELECT ST_AsEWKT(ST_GeogFromText('LINESTRING(110 40, 2 3, -10 80, -7 9)')::geometry);
st_asewkt ---------------------------------------------- SRID=4326;LINESTRING(110 40,2 3,-10 80,-7 9)

Amazon Redshift bietet viele SQL Funktionen zur Abfrage räumlicher Daten. Mit Ausnahme der ST_IsValid-Funktion, erwarten Geofunktionen, die ein GEOMETRY-Objekt als Argument annehmen, dass das GEOMETRY-Objekt ein gültiges Geometrieobjekt ist. Wenn das GEOMETRY- oder GEOGRAPHY-Objekt nicht gültig ist, ist das Verhalten der Geofunktion nicht definiert. Weitere Informationen zur Validierung finden Sie unter Geometrische Gültigkeit.

Einzelheiten zu SQL Funktionen zur Abfrage räumlicher Daten finden Sie unterGeofunktionen.

Weitere Informationen zum Laden von Geodaten finden Sie unter Eine Spalte des Datentyps oder wird GEOMETRY geladen GEOGRAPHY.