Questo tutorial introduce l'analisi geospaziale. L'analisi geospaziale ti consente di analizzare e visualizzare facilmente i dati geospaziali in BigQuery.
Obiettivi
In questo tutorial:
- Utilizza una funzione di analisi geospaziale per convertire le colonne di latitudine e longitudine in punti geografici
- Eseguire una query che traccia la traiettoria di un uragano
- Visualizza i risultati in BigQuery Geo Viz
Costi
BigQuery è un prodotto a pagamento e in questo tutorial sostieni costi di utilizzo di BigQuery. BigQuery offre alcune risorse gratuitamente entro limiti specifici. Per ulteriori informazioni, vedi Operazioni gratuite e livello gratuito di BigQuery.
Prima di iniziare
Prima di iniziare questo tutorial, utilizza la console Google Cloud per creare o selezionare un progetto.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
- BigQuery viene attivato automaticamente nei nuovi progetti.
Per attivare BigQuery in un progetto esistente, vai a
Enable the BigQuery API.
- (Facoltativo) Abilita la fatturazione per il progetto. Se non vuoi attivare la fatturazione o fornire una carta di credito, i passaggi descritti in questo documento funzionano comunque. BigQuery ti offre una sandbox per eseguire i passaggi. Per saperne di più, vedi Attiva la sandbox di BigQuery.
Esplorare i dati di esempio
Questo tutorial utilizza un set di dati disponibile tramite il Google Cloud programma per i set di dati pubblici. Un set di dati pubblico è un set di dati archiviato in BigQuery e reso disponibile al pubblico. I set di dati pubblici sono set di dati che BigQuery ospita per consentirti di accedervi e integrarli nelle tue applicazioni. Google paga lo spazio di archiviazione di questi set di dati e fornisce l'accesso pubblico ai dati utilizzando un progetto. Paghi solo le query che esegui sui dati (il primo TB al mese è gratuito, in base ai dettagli dei prezzi delle query).
Set di dati Global Hurricane Tracks (IBTrACS)
Set di dati Global Hurricane Tracks (IBTrACS)
Le posizioni e le intensità storiche lungo le traiettorie dei cicloni tropicali (TC) globali sono fornite dall'International Best Track Archive for Climate Stewardship (IBTrACS) della NOAA. I cicloni tropicali sono noti come uragani nei bacini dell'oceano Atlantico settentrionale e del Pacifico nordorientale, tifoni nel bacino dell'oceano Pacifico nordoccidentale, cicloni nei bacini dell'oceano Indiano settentrionale e meridionale e cicloni tropicali nel bacino dell'oceano Pacifico sudoccidentale.
IBTrACS raccoglie dati sui cicloni tropicali segnalati dai centri di monitoraggio internazionali che hanno la responsabilità di prevedere e segnalare i cicloni tropicali (e include anche alcuni importanti set di dati storici). IBTrACS include dati di 9 paesi diversi. Storicamente, i dati che descrivono questi sistemi hanno incluso le migliori stime della loro traiettoria e intensità (da cui il termine migliore traiettoria).
Puoi iniziare a esplorare questi dati nella console Google Cloud visualizzando i dettagli della tabella hurricanes
:
Esegui una query sul percorso dell'uragano Maria nel 2017
In questa sezione del tutorial, esegui una query GoogleSQL che trova il percorso dell'uragano Maria nella stagione 2017. Per tracciare la traiettoria dell'uragano, devi interrogare la posizione dell'uragano in momenti diversi.
Dettagli query
La seguente query GoogleSQL viene utilizzata per trovare la traiettoria dell'uragano Maria.
SELECT ST_GeogPoint(longitude, latitude) AS point, name, iso_time, dist2land, usa_wind, usa_pressure, usa_sshs, (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt, (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt FROM `bigquery-public-data.noaa_hurricanes.hurricanes` WHERE name LIKE '%MARIA%' AND season = '2017' AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'), ST_GeogPoint(longitude, latitude), 10) ORDER BY iso_time ASC
Le clausole della query eseguono le seguenti operazioni:
SELECT ST_GeogPoint(longitude, latitude) AS point, name, iso_time, dist2land, usa_wind, usa_pressure, usa_sshs, (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt, (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt
- La clausola
SELECT
seleziona tutti i dati meteo della tempesta e utilizza la funzioneST_GeogPoint
per convertire i valori nelle colonnelatitude
elongitude
in tipiGEOGRAPHY
(punti).
FROM
bigquery-public-data.noaa_hurricanes.hurricanes
- La clausola
FROM
specifica la tabella sottoposta a query:hurricanes
.
WHERE name LIKE '%MARIA%' AND season = '2017' AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'), ST_GeogPoint(longitude, latitude), 10)
- La clausola
WHERE
filtra i dati in modo da includere solo i punti dell'Atlantico corrispondenti all'uragano Maria nella stagione degli uragani del 2017.
ORDER BY iso_time ASC
- La clausola
ORDER BY
ordina i punti in modo da formare un percorso della tempesta cronologico.
Esegui la query
Per eseguire la query utilizzando la console Google Cloud :
Vai alla pagina BigQuery nella console Google Cloud .
Inserisci la seguente query GoogleSQL nell'area di testo Editor query.
SELECT ST_GeogPoint(longitude, latitude) AS point, name, iso_time, dist2land, usa_wind, usa_pressure, usa_sshs, (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt, (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt FROM `bigquery-public-data.noaa_hurricanes.hurricanes` WHERE name LIKE '%MARIA%' AND season = '2017' AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'), ST_GeogPoint(longitude, latitude), 10) ORDER BY iso_time ASC
Fai clic su Esegui.
Il completamento della query richiede alcuni istanti. Dopo l'esecuzione della query, i risultati vengono visualizzati nel riquadro Risultati query.
Visualizzare i risultati della query in Geo Viz
Successivamente, visualizza i risultati utilizzando BigQuery Geo Viz, uno strumento web per la visualizzazione dei dati geospaziali in BigQuery utilizzando le API di Google Maps.
Avvia GeoViz ed esegui l'autenticazione
Prima di utilizzare Geo Viz, devi autenticarti e concedere l'accesso ai dati in BigQuery.
Per configurare Geo Viz:
Apri lo strumento web Geo Viz.
Nel passaggio 1, Seleziona dati, fai clic su Autorizza.
Nella finestra di dialogo Scegli un account, fai clic sul tuo Account Google.
Nella finestra di dialogo di accesso, fai clic su Consenti per concedere a Geo Viz l'accesso ai tuoi dati BigQuery.
Eseguire la query in Geo Viz
Dopo aver eseguito l'autenticazione e concesso l'accesso, il passaggio successivo consiste nell'eseguire la query in Geo Viz.
Per eseguire la query:
Per il passaggio 1, Seleziona dati, inserisci l'ID progetto nel campo ID progetto.
Nella finestra della query, inserisci la seguente query GoogleSQL.
SELECT ST_GeogPoint(longitude, latitude) AS point, name, iso_time, dist2land, usa_wind, usa_pressure, usa_sshs, (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt, (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt FROM `bigquery-public-data.noaa_hurricanes.hurricanes` WHERE name LIKE '%MARIA%' AND season = '2017' AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'), ST_GeogPoint(longitude, latitude), 10) ORDER BY iso_time ASC
Fai clic su Esegui.
Al termine della query, fai clic su Mostra risultati. Puoi anche fare clic sul passaggio 2 Dati.
In questo modo, passerai al passaggio 2. Nel passaggio 2, per Colonna geometria, scegli Punto. In questo modo vengono tracciati i punti corrispondenti alla traiettoria dell'uragano Maria.
Formattare la visualizzazione in Geo Viz
La sezione Stile fornisce un elenco di stili visivi per la personalizzazione. Alcune proprietà si applicano solo a determinati tipi di dati. Ad esempio, circleRadius
interessa solo i punti.
Le proprietà di stile supportate includono:
- fillColor: il colore di riempimento di un poligono o di un punto. Ad esempio, le funzioni "lineare" o "intervallo" possono essere utilizzate per mappare i valori numerici a un gradiente di colore.
- fillOpacity: l'opacità di riempimento di un poligono o di un punto. I valori devono essere
compresi tra 0 e 1, dove
0
= trasparente e1
= opaco. - strokeColor: il colore del tratto o del contorno di un poligono o di una linea.
- strokeOpacity: l'opacità del tratto o del contorno del poligono o della linea.
I valori devono essere compresi tra 0 e 1, dove
0
= trasparente e1
= opaco. - strokeWeight: lo spessore del tratto o del contorno in pixel di un poligono o di una linea.
- circleRadius: il raggio del cerchio che rappresenta un punto in metri. Ad esempio, una funzione "lineare" può essere utilizzata per mappare i valori numerici alle dimensioni dei punti per creare uno stile di grafico a dispersione.
A ogni stile può essere assegnato un valore globale (applicato a ogni risultato) o un valore basato sui dati (applicato in modi diversi a seconda dei dati in ogni riga di risultati). Per i valori basati sui dati, per determinare il risultato vengono utilizzati i seguenti elementi:
- Funzione: una funzione utilizzata per calcolare un valore di stile dai valori di un campo.
- identity: il valore dei dati di ogni campo viene utilizzato come valore di stile.
- Categorici: i valori dei dati di ogni campo elencato nel dominio sono mappati uno a uno con gli stili corrispondenti nell'intervallo.
- intervallo: i valori dei dati di ogni campo vengono arrotondati per difetto al valore più vicino nel dominio e vengono poi formattati con lo stile corrispondente nell'intervallo.
- Lineare: i valori dei dati di ogni campo vengono interpolati linearmente tra i valori nel dominio e vengono poi stilizzati con una combinazione degli stili corrispondenti nell'intervallo.
- field: il campo specificato nei dati viene utilizzato come input per la funzione di stile.
- domain: un elenco ordinato di valori di input di esempio di un campo. Gli input di esempio (dominio) vengono accoppiati agli output di esempio (intervallo) in base alla funzione fornita e vengono utilizzati per dedurre i valori di stile per tutti gli input (anche quelli non elencati nel dominio). I valori nel dominio devono avere lo stesso tipo (testo, numero e così via) dei valori del campo che stai visualizzando.
- range: un elenco di valori di output di esempio per la regola di stile. I valori nell'intervallo devono essere dello stesso tipo (colore o numero) della proprietà di stile che stai controllando. Ad esempio, l'intervallo della proprietà
fillColor
deve contenere solo colori.
Per formattare la mappa:
Fai clic su Aggiungi stili nel passaggio 2 o sul passaggio 3 Stile.
Cambia il colore dei tuoi punti. Fai clic su fillColor.
Nel riquadro fillColor:
- Fai clic su Basato sui dati.
- Per Funzione, scegli lineare.
- Per Campo, scegli
usa_wind
. - In Dominio, inserisci
0
nella prima casella e150
nella seconda. Per Intervallo, fai clic sulla prima casella e inserisci
#0006ff
nella casella Esadecimale. Fai clic sulla seconda casella e inserisci#ff0000
. Questo cambia il colore del punto in base alla velocità del vento. Il blu indica venti più leggeri e il rosso venti più forti.
Esamina la mappa. Se tieni il puntatore sopra uno dei tuoi punti, vengono visualizzati i dati meteo del punto.
Fai clic su fillOpacity.
Nel campo Valore, inserisci .5.
Esamina la mappa. Il colore di riempimento dei punti ora è semitrasparente.
Modifica le dimensioni dei punti in base al raggio dell'uragano. Fai clic su circleRadius.
Nel riquadro circleRadius:
- Fai clic su Basato sui dati.
- Per Funzione, scegli lineare.
- Per Campo, scegli
radius_50kt
. - In Dominio, inserisci
0
nella prima casella e135
nella seconda. Per Intervallo, inserisci
5
nella prima casella e135000
nella seconda.
Esamina la mappa. Il raggio di ogni punto ora corrisponde al raggio dell'uragano.
Chiudi Geo Viz.
Esegui la pulizia
Per evitare che al tuo Account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.
- Puoi eliminare il progetto che hai creato.
- Oppure puoi conservare il progetto per un uso futuro.
Per eliminare il progetto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Passaggi successivi
- Per scoprire di più su come visualizzare le opzioni per l'analisi geospaziale, consulta Visualizzare i dati geospaziali.
- Per lavorare con i dati geospaziali, consulta Utilizzare i dati geospaziali.
- Per scoprire di più sulle funzioni geografiche che puoi utilizzare nell'analisi geospaziale, consulta Funzioni geografiche in GoogleSQL.