Caricamento di uno shapefile 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à.

Caricamento di uno shapefile in Amazon Redshift

È possibile utilizzare il comando COPY per importare gli shapefile Esri archiviati in Amazon S3 nelle tabelle Amazon Redshift. Uno shapefile memorizza le informazioni sulla posizione geometrica e sugli attributi delle caratteristiche geografiche in un formato vettoriale. Il formato shapefile può descrivere spazialmente oggetti spaziali quali punti, linee e poligoni. Per ulteriori informazioni su uno shapefile, consultare Shapefile in Wikipedia.

Il comando COPY supporta il parametro del formato dati SHAPEFILE. Per impostazione predefinita, la prima colonna dello shapefile è una colonna GEOMETRY o IDENTITY. Tutte le colonne successive seguono l'ordine specificato nello shapefile. Tuttavia, la tabella di destinazione non deve avere questo layout esatto perché è possibile utilizzare la mappatura delle colonne COPY per definire l'ordine. Per informazioni sul supporto dello shapefile del comando COPY, consultare SHAPEFILE.

In alcuni casi, la dimensione della geometria risultante potrebbe essere maggiore del massimo per la memorizzazione di una geometria in Amazon Redshift. In tal caso, è possibile utilizzare l'opzione COPY SIMPLIFY o SIMPLIFY AUTO per semplificare le geometrie durante l'importazione come riportato di seguito:

  • Specificare SIMPLIFY tolerance per semplificare tutte le geometrie durante l'importazione dati utilizzando l'algoritmo Ramer-Douglas-Peucker e la tolleranza specificata.

  • Specificare SIMPLIFY AUTO senza tolleranza per semplificare solo le geometrie che sono più grandi della dimensione massima utilizzando l'algoritmo Ramer-Douglas-Peucker. Questo approccio calcola la tolleranza minima sufficientemente grande da memorizzare l'oggetto entro il limite di dimensione massima.

  • Specificare SIMPLIFY AUTO max_tolerance per semplificare solo le geometrie che sono più grandi della dimensione massima utilizzando l'algoritmo Ramer-Douglas-Peucker e la tolleranza calcolata automaticamente. Questo approccio assicura che la tolleranza non superi la tolleranza massima.

Per informazioni sulle dimensioni massime di un valore di dati GEOMETRY, consultare Considerazioni sull'utilizzo dei dati spaziali con Amazon Redshift.

In alcuni casi, la tolleranza è sufficientemente bassa che il record non può ridursi al di sotto della dimensione massima di un valore di dati GEOMETRY. In questi casi, è possibile utilizzare l'opzione MAXERROR del comando COPY per ignorare tutti o fino a un certo numero di errori di inserimento.

Il comando COPY supporta anche il caricamento degli shapefile GZIP. Per eseguire questa operazione, specificare il parametro COPY GZIP. Con questa opzione, tutti i componenti shapefile devono essere compressi in modo indipendente e condividere lo stesso suffisso di compressione.

Se esiste un file di descrizione della proiezione (.prj) con lo shapefile, Redshift lo utilizza per determinare l'ID del sistema di riferimento spaziale (SRID). Se lo SRID è valido, alla geometria risultante viene assegnato questo SRID. Se il valore SRID associato alla geometria di input non esiste, la geometria risultante avrà il valore dello SRID uguale a zero. È possibile disabilitare il rilevamento automatico dell'ID del sistema di riferimento spaziale a livello di sessione utilizzando SET read_srid_on_shapefile_ingestion su OFF.

Eseguire query sul sistema SYS_SPATIAL_SIMPLIFYSVL_SPATIAL_SIMPLIFY per visualizzare quali record sono stati semplificati, insieme alla tolleranza calcolata. Quando si specifica SIMPLIFY tolerance, questa vista contiene un record per ogni operazione COPY. In caso contrario, contiene un record per ogni geometria semplificata. Per ulteriori informazioni, consulta SYS_SPATIAL_SIMPLIFY o SVL_SPATIAL_SIMPLIFY.

Per esempi di caricamento di uno shapefile, consultare Caricamento di uno shapefile in Amazon Redshift.