Utilizzare l'analisi geospaziale per tracciare il percorso di un uragano


Questo tutorial illustra l'analisi geospaziale. L'analisi geospaziale consente di analizzare e visualizzare facilmente i dati geospaziali in BigQuery.

Obiettivi

In questo tutorial:

  • Usa una funzione di analisi geospaziale per convertire le colonne di latitudine e longitudine in punti geografici
  • Eseguire una query che traccia il percorso di un uragano
  • Visualizza i risultati in Visualizzazione geografica di BigQuery

Costi

BigQuery è un prodotto a pagamento e in questo tutorial utilizzerai BigQuery. BigQuery offre alcune risorse gratuitamente entro limiti specifici. Per ulteriori informazioni, consulta 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.

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  4. BigQuery viene abilitato automaticamente nei nuovi progetti. Per attivare BigQuery in un progetto esistente, vai a

    Attiva l'API BigQuery.

    Abilita l'API

  5. (Facoltativo) Abilita la fatturazione per il progetto. Se non vuoi abilitare la fatturazione o fornire una carta di credito, i passaggi descritti in questo documento continueranno a funzionare. BigQuery fornisce una sandbox per eseguire i passaggi. Per maggiori informazioni, consulta Attivare la sandbox di BigQuery.

Esplora i dati di esempio

Questo tutorial utilizza un set di dati disponibile tramite il programma per set di dati pubblici di Google Cloud. Per set di dati pubblico si intende qualsiasi set di dati archiviato in BigQuery e reso disponibile al pubblico. I set di dati pubblici sono set di dati ospitati da BigQuery che puoi consultare e integrare nelle tue applicazioni. Google paga l'archiviazione di questi set di dati e fornisce l'accesso pubblico ai dati tramite un progetto. Paghi solo per le query che esegui sui dati (il primo TB al mese è gratuito, in base ai dettagli dei prezzi delle query).

Il set di dati IBTrACS (Global HurricaneTrack)

Set di dati IBTrACS (Global Hurricane Track)

Le posizioni storiche e le intensità lungo i percorsi dei cicloni tropicali globali (TC) sono fornite dall'International Best Track Archive for Climate Stewardship (IBTrACS) del NOAA. I cicloni tropicali sono noti come uragani nei bacini dell'Oceano Atlantico settentrionale e nordorientale, tifoni nel bacino dell'Oceano Pacifico nord-occidentale, cicloni nei bacini dell'Oceano Indiano settentrionale e meridionale e cicloni tropicali nel bacino dell'Oceano Pacifico sud-occidentale.

IBTrACS raccoglie dati sui TC segnalati dai centri di monitoraggio internazionali che hanno la responsabilità di prevedere e creare report sui TC (e include inoltre alcuni importanti set di dati storici). Attualmente, IBTrACS include dati di 9 diversi paesi. Storicamente, i dati che descrivono questi sistemi includevano le migliori stime della loro rotta e della loro intensità (da qui il termine, percorso migliore).

Puoi iniziare a esplorare questi dati nella console Google Cloud visualizzando i dettagli della tabella hurricanes:

Vai allo schema degli uragani

Interroga il 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 il percorso dell'uragano, esegui una query sulla posizione dell'uragano in diversi momenti.

Dettagli query

La seguente query GoogleSQL viene utilizzata per trovare il percorso 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 di 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
    La clausola SELECT seleziona tutti i dati meteorologici della tempesta e utilizza la funzione ST_GeogPoint per convertire i valori nelle colonne latitude e longitude in GEOGRAPHY tipi (punti).
  • FROM bigquery-public-data.noaa_hurricanes.hurricanes
    La clausola FROM specifica la tabella su cui viene eseguita la 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 solo in base ai punti nell'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 cronologico della tempesta.

Eseguire la query

Per eseguire la query utilizzando la console Google Cloud:

  1. Vai alla pagina BigQuery nella console Google Cloud.

    Vai alla pagina BigQuery

  2. 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
    
  3. Fai clic su Esegui.

    Il completamento della query richiede alcuni istanti. Dopo l'esecuzione della query, i risultati vengono visualizzati nel riquadro Risultati query.

    Risultati della query sull'uragano Maria in BigQuery

Visualizzare i risultati della query in visualizzazione geografica

Successivamente, potrai visualizzare i risultati utilizzando BigQuery Geo Viz, uno strumento web per la visualizzazione dei dati geospaziali in BigQuery mediante le API di Google Maps.

Avvia la visualizzazione geografica ed esegui l'autenticazione

Prima di utilizzare Geo Viz, devi autenticarti e concedere l'accesso ai dati in BigQuery.

Per configurare la visualizzazione geografica:

  1. Apri lo strumento web Geo Viz.

    Apri lo strumento web Geo Viz

  2. Nel primo passaggio, Seleziona i dati, fai clic su Autorizza.

    Pulsante di autorizzazione Geo Viz

  3. Nella finestra di dialogo Scegli un account, fai clic sul tuo Account Google.

    Finestra di dialogo Scegli account

  4. Nella finestra di dialogo di accesso, fai clic su Consenti per concedere alla visualizzazione geografica l'accesso ai tuoi dati BigQuery.

    Consenti l'accesso alla finestra di dialogo di visualizzazione geografica

Eseguire la query in Visualizzazione geografica

Dopo aver eseguito l'autenticazione e concesso l'accesso, il passaggio successivo consiste nell'eseguire la query in Geo Viz.

Per eseguire la query:

  1. Per il passaggio 1, Seleziona dati, inserisci l'ID progetto nel campo ID progetto.

  2. 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
    
  3. Fai clic su Esegui.

  4. Al termine della query, fai clic su Mostra risultati. Puoi anche fare clic sul secondo passaggio Dati.

  5. Questo ti porta al passaggio due. Nel secondo passaggio, per Colonna Geometria, scegli punto. Indica i punti corrispondenti al percorso dell'uragano Maria.

    Risultati mappati nella BigQuery Geo Viz

Formattare la visualizzazione in Visualizzazione geografica

La sezione Stile fornisce un elenco di stili visivi da personalizzare. Alcune proprietà si applicano solo a determinati tipi di dati. Ad esempio, circleRadius riguarda solo i punti.

Le proprietà degli stili supportate includono:

  • fillColor: il colore di riempimento di un poligono o di un punto. Ad esempio, è possibile utilizzare le funzioni "lineare" o "intervallo" per mappare valori numerici a un gradiente di colore.
  • fillOpacity: l'opacità di riempimento di un poligono o di un punto. I valori devono essere compresi nell'intervallo zero, ovvero uno dove 0 = trasparente e 1 = opaco.
  • strokeColor: il colore di tratto o contorno di un poligono o di una linea.
  • strokeOpacity: l'opacità del tratto o del contorno di un poligono o di una linea. I valori devono essere compresi nell'intervallo zero, ovvero uno dove 0 = trasparente e 1 = 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 valori numerici alle dimensioni in punti e 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 dei risultati). Per i valori basati sui dati, vengono utilizzati i seguenti valori per determinare il risultato:

  • 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.
  • categorical: i valori dei dati di ogni campo elencato nel dominio vengono mappati uno a uno con gli stili corrispondenti nell'intervallo.
  • interval: i valori dei dati di ciascun campo vengono arrotondati per difetto al valore più vicino nel dominio e vengono definiti con lo stile corrispondente nell'intervallo.
  • Lineare: i valori dei dati di ciascun campo vengono interpolati in modo lineare tra i valori del dominio e vengono definiti con una combinazione degli stili corrispondenti nell'intervallo.
  • field: il campo specificato nei dati viene utilizzato come input per la funzione stile.
  • domain: un elenco ordinato di valori di input di esempio di un campo. Gli input di esempio (dominio) sono abbinati a output di esempio (intervallo) in base alla funzione specificata 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.
  • intervallo: un elenco di valori di output di esempio per la regola di stile. I valori nell'intervallo devono avere lo 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:

  1. Fai clic su Aggiungi stili nel secondo passaggio oppure fai clic sul passaggio 3 Stile.

  2. Modifica il colore dei punti. Fai clic su fillColor.

  3. Nel riquadro fillColor:

    1. Fai clic su Basato sui dati.
    2. Per Funzione, scegli Lineare.
    3. In Campo, scegli usa_wind.
    4. In Dominio, inserisci 0 nella prima casella e 150 nella seconda.
    5. In Intervallo, fai clic sulla prima casella e inserisci #0006ff nella casella Esadecimale. Fai clic sulla seconda casella e inserisci #ff0000. Il colore del punto viene modificato in base alla velocità del vento. Blu per i venti più leggeri e rosso per i venti più forti.

      Aggiungere il colore di riempimento nella BigQuery Geo Viz

  4. Esamina la mappa. Se passi il mouse sopra uno dei punti, vengono visualizzati i dati relativi al meteo del punto.

    Dettagli dei punti sulla mappa

  5. Fai clic su fillOpacity.

  6. Nel campo Valore, inserisci 0,5.

    Formatta l'opacità del riempimento della mappa in BigQuery Geo Viz

  7. Esamina la mappa. Il colore di riempimento dei punti è ora semitrasparente.

  8. Modifica la dimensione dei punti in base al raggio dell'uragano. Fai clic su circleRadius.

  9. Nel riquadro circleRadius:

    1. Fai clic su Basato sui dati.
    2. Per Funzione, scegli Lineare.
    3. In Campo, scegli radius_50kt.
    4. In Dominio, inserisci 0 nella prima casella e 135 nella seconda.
    5. In Intervallo, inserisci 5 nella prima casella e 135000 nella seconda.

      Aggiungere un raggio di un cerchio in BigQuery Geo Viz

  10. Esamina la mappa. Il raggio di ogni punto ora corrisponde al raggio dell'uragano.

    Mappa finale di BigQuery Geo Viz

  11. Chiudi la visualizzazione geografica.

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.
  • In alternativa, puoi conservare il progetto per utilizzarlo in futuro.

Per eliminare il progetto:

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Passaggi successivi