Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Query su dati spaziali in Amazon Redshift - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Query su dati spaziali in Amazon Redshift

I dati spaziali descrivono la posizione e la forma di una geometria in uno spazio definito (un sistema di riferimento spaziale). Amazon Redshift supporta i dati spaziali con il tipo di dati GEOMETRY e GEOGRAPHY, che contiene dati spaziali e facoltativamente l'identificatore del sistema di riferimento spaziale (SRID) dei dati.

I dati spaziali contengono dati geometrici che possono essere utilizzati per rappresentare le caratteristiche geografiche. Esempi di questo tipo di dati includono i bollettini meteorologici, le indicazioni stradali sulle mappe, i tweet con posizioni geografiche, le ubicazioni dei negozi e le tratte delle compagnie aeree. I dati spaziali svolgono un ruolo importante per le attività di analisi, di creazione di report e di previsione aziendali.

È possibile eseguire una query sui dati spaziali con le funzioni SQL di Amazon Redshift. i dati spaziali contengono i valori geometrici di un oggetto.

Le operazioni del tipo di dati GEOMETRY funzionano sul piano cartesiano. Sebbene l'identificatore di sistema di riferimento spaziale (SRID) sia memorizzato all'interno dell'oggetto, è semplicemente un identificatore del sistema di coordinate e non svolge alcun ruolo negli algoritmi utilizzati per elaborare gli oggetti GEOMETRY. Al contrario, le operazioni sul tipo di dati GEOGRAPHY utilizzano le coordinate all'interno degli oggetti come coordinate sferiche su uno sferoide. Questo sferoide è definito dallo SRID, che fa riferimento a un sistema di riferimento spaziale geografico. Per impostazione predefinita, i tipi di dati GEOGRAPHY vengono creati con riferimento spaziale (SRID) 4326, che fa riferimento al World Geodetic System (WGS) 84. Per maggiori informazioni su SRIDs, vedi Sistema di riferimento spaziale in Wikipedia.

È possibile utilizzare la funzione ST_Transform per trasformare le coordinate da diversi sistemi di riferimento spaziale. Al termine della trasformazione delle coordinate, è possibile utilizzare anche un semplice cast tra le due, purché l'input GEOMETRY sia codificato con lo SRID geografico. Questo cast copia semplicemente le coordinate senza ulteriori trasformazioni. Ad esempio:

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

Per capire meglio la differenza tra i tipi di dati GEOMETRY e GEOGRAPHY, bisogna prendere in considerazione il calcolo della distanza tra l'aeroporto di Berlino (BER) e l'aeroporto di San Francisco (SFO) utilizzando il World Geodetic System (WGS) 84. Usando il tipo di dati GEOGRAPHY, il risultato è in metri. Quando utilizzi il tipo di dati GEOMETRY con SRID 4326, il risultato è espresso in gradi, che non possono essere convertiti in metri perché la distanza di un grado dipende da dove si trovano le geometrie del globo.

I calcoli sul tipo di dati GEOGRAPHY sono utilizzati principalmente per calcoli realistici di terra rotonda come l'area precisa di un paese senza distorsioni. Ma sono molto più costosi da calcolare. Pertanto, ST_Transform può trasformare le coordinate in un sistema di coordinate locale proiettato appropriato e fare il calcolo sul tipo di dati GEOMETRY più veloce.

Utilizzando i dati spaziali, è possibile eseguire query per i seguenti scopi:

  • Individuare la distanza tra due punti;

  • Controllare se un'area (poligono) ne contiene un'altra;

  • Controllare se una linea interseca un'altra linea o un poligono.

Per contenere i valori dei dati spaziali è possibile usare il tipo di dato GEOMETRY. Un valore GEOMETRY in Amazon Redshift può definire tipi di dati primitivi geometrici bidimensionali (2D), tridimensionali (3DZ), bidimensionali con una misura (3DM) e quadridimensionali (4D):

  • Una geometria bidimensionale (2D) è specificata da due coordinate cartesiane (x, y) in un piano.

  • Una geometria tridimensionale (3DZ) è specificata da tre coordinate cartesiane (x, y, z) nello spazio.

  • Una geometria bidimensionale con misura (3DM) è specificata da tre coordinate (x, y, m), dove le prime due sono coordinate cartesiane in un piano e la terza è una misura.

  • Una geometria quadridimensionale (4D) è specificata da quattro coordinate (x, y, z, m), dove le prime tre sono coordinate cartesiane in uno spazio e la quarta è una misura.

Per ulteriori informazioni sui tipi di dati primitivi geometrici, consultare Rappresentazione geometrica tramite Well-known Text su Wikipedia.

Per contenere i valori dei dati spaziali è possibile usare il tipo di dato GEOGRAPHY. Un valore GEOGRAPHY in Amazon Redshift può definire tipi di dati primitivi geometrici bidimensionali (2D), tridimensionali (3DZ), bidimensionali con una misura (3DM) e quadridimensionali (4D):

  • Una geometria bidimensionale (2D) è specificata dalle coordinate di longitudine e latitudine su uno sferoide.

  • Una geometria tridimensionale (3DZ) è specificata dalle coordinate di longitudine, latitudine e altitudine su uno sferoide.

  • Una geometria bidimensionale con misura (3DM) è specificata da tre coordinate (longitudine, latitudine, misura), dove le prime due sono coordinate cartesiane in un piano e la terza è una misura.

  • Una geometria quadridimensionale (4D) è specificata da quattro coordinate (longitudine, latitudine, altitudine, misura), dove le prime tre sono longitudine, latitudine e altitudine e la quarta è una misura.

Per ulteriori informazioni sui sistemi di coordinate geografici, consultare Sistema di coordinate geografici e Sistema di coordinate sferico su Wikipedia.

Il tipo di dati GEOMETRY e GEOGRAPHY presenta i seguenti sottotipi:

  • POINT

  • LINESTRING

  • POLYGON

  • MULTIPOINT

  • MULTILINESTRING

  • MULTIPOLYGON

  • GEOMETRYCOLLECTION

Sono presenti delle funzioni SQL di Amazon Redshift che supportano le seguenti rappresentazioni dei dati geometrici:

  • GeoJSON

  • Well-known text (WKT)

  • Extended well-known text (EWKT)

  • Rappresentazione Well-known binary (WKB)

  • Extended well-known binary (EWKB)

È possibile eseguire il casting tra i tipi di dati GEOMETRY e GEOGRAPHY.

Il seguente codice SQL lancia una linestring da un GEOMETRY a 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)

Il seguente codice SQL lancia una linestring da un GEOGRAPHY a 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 fornisce numerose funzioni SQL per eseguire query sui dati spaziali. Ad eccezione della funzione ST_IsValid, funzioni spaziali che accettano un oggetto GEOMETRY come argomento si aspettano che questo oggetto GEOMETRY sia una geometria valida. Se l'oggetto GEOMETRY o GEOGRAPHY non è valido, il comportamento della funzione spaziale non è definito. Per ulteriori informazioni sui nomi validi, consultare Validità geometrica.

Per i dettagli sulle funzioni SQL da usare per eseguire query sui dati spaziali, consultare Funzioni spaziali.

Per i dettagli sul caricamento di dati spaziali, consultare Caricamento di una colonna definita come tipo dati GEOMETRY o GEOGRAPHY.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.