Uso de análise geoespacial para traçar a rota de um furacão


Neste tutorial, apresentamos a análise geoespacial. Com a análise geoespacial, você analisa e visualiza facilmente os dados geoespaciais no BigQuery.

Objetivos

Neste tutorial, você aprenderá a:

  • usar uma função de análise geoespacial para converter colunas de latitude e longitude em pontos geográficos;
  • executar uma consulta que trace o caminho de um furacão;
  • visualizar os resultados no BigQuery Geo Viz.

Custos

O BigQuery é um produto pago. O uso dele é feito neste tutorial. O BigQuery oferece alguns recursos gratuitamente até um limite específico. Para mais informações, consulte Operações gratuitas e nível gratuito do BigQuery.

Antes de começar

Antes de começar este tutorial, use o Console do Google Cloud para criar ou selecionar um projeto.

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  4. O BigQuery é ativado automaticamente em novos projetos. Para ativá-lo em um projeto atual, acesse

    Ative a API BigQuery.

    Ative a API

  5. Opcional: ative o faturamento do projeto. Se você não quiser ativar o faturamento ou informar um cartão de crédito, as etapas deste documento ainda funcionarão. O BigQuery fornece um sandbox para executar as etapas. Para mais informações, consulte Ativar o sandbox do BigQuery.

Conferir os dados da amostra

Neste tutorial, usamos um conjunto de dados disponível por meio do programa de conjuntos de dados públicos do Google Cloud. Um conjunto de dados público é qualquer um que seja armazenado no BigQuery e disponibilizado ao público geral. Os conjuntos de dados públicos são hospedados no BigQuery para você acessar e integrar a seus aplicativos. O Google paga pelo armazenamento desses conjuntos de dados e oferece acesso público a eles por meio de um projeto. Você paga somente pelas consultas feitas aos dados. O primeiro terabyte (1 TB) por mês é gratuito, sujeito aos detalhes sobre preços de consultas.

O conjunto de dados do Global Hurricane Tracks (IBTrACS)

Conjunto de dados Global Hurricane Tracks (IBTrACS)

As posições e intensidades históricas ao longo das trajetórias dos ciclones tropicais (CT) globais são fornecidas pelo International Best Track Archive for Climate Stewardship (IBTrACS) da NOAA. Os ciclones tropicais são conhecidos como furacões nas bacias Norte do Oceano Atlântico e Nordeste do Pacífico, tufões na bacia Noroeste do Oceano Pacífico, ciclones nas bacias Norte e Sul do Oceano Índico e ciclones tropicais na bacia Sudoeste do Oceano Pacífico.

O IBTrACS coleta dados sobre CTs, relatados por centros de monitoramento internacionais que têm a responsabilidade de prever e relatar esses fenômenos. Isso abrange ainda alguns conjuntos de dados históricos importantes. O IBTrACS inclui dados de nove países. Historicamente, os dados que descrevem esses sistemas incluíram as melhores estimativas da rota e da intensidade dos ciclones tropicais.

É possível começar a explorar esses dados no console do Google Cloud vendo os detalhes da tabela hurricanes:

Acessar o esquema de furacões

Consultar o caminho do furacão Maria em 2017

Nesta seção do tutorial, você faz uma consulta do GoogleSQL que localiza o caminho do furacão Maria na temporada de 2017. Para isso, você consulta o local do furacão em diferentes pontos no tempo.

Detalhes da consulta

A consulta do GoogleSQL a seguir é usada para encontrar o caminho do furacão 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

A consulta inclui as seguintes cláusulas:

  • 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
    A cláusula SELECT seleciona todos os dados meteorológicos da tempestade e usa a função ST_GeogPoint para converter os valores nas colunas latitude e longitude para tipos GEOGRAPHY (pontos).
  • FROM bigquery-public-data.noaa_hurricanes.hurricanes
    Por meio da cláusula FROM, é especificada a tabela que está sendo consultada: 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)
    A cláusula WHERE filtra os dados apenas para os pontos no Atlântico correspondentes ao furacão Maria, na temporada de furacões de 2017.
  • ORDER BY iso_time ASC
    A cláusula ORDER BY ordena os pontos para formar um caminho cronológico da tempestade.

Executar a consulta

Para executar a consulta usando o console do Google Cloud:

  1. Acesse a página do BigQuery no console do Google Cloud.

    Acesse a página do BigQuery

  2. Insira a seguinte consulta do GoogleSQL na área de texto do Editor de consultas.

    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. Clique em Executar.

    A consulta leva um momento para ser concluída. Depois que ela é executada, os resultados são exibidos no painel Resultados da consulta.

    Resultados da consulta de furacão Maria no BigQuery

Visualizar os resultados da consulta no Geo Viz

Em seguida, visualize os resultados no BigQuery Geo Viz, uma ferramenta da Web para a visualização de dados geoespaciais do BigQuery com as APIs Google Maps.

Iniciar o Geo Viz e autenticar

Antes de usar o Geo Viz, é preciso autenticar e conceder acesso aos dados do Google BigQuery.

Para configurar o Geo Viz, siga estas etapas:

  1. Abra a ferramenta da Web do Geo Viz.

    Abrir a ferramenta da Web do Geo Viz

  2. Na primeira etapa, Selecionar dados, clique em Autorizar.

    Botão de autorização do Geo Viz

  3. Na caixa de diálogo Escolher uma conta, clique na sua Conta do Google.

    Caixa de diálogo "Escolher uma conta"

  4. Na caixa de diálogo de acesso, clique em Permitir para conceder ao Geo Viz acesso aos dados do BigQuery.

    Permitir acesso à caixa de diálogo do Geo Viz

Executar a consulta no Geo Viz

Depois de autenticar e conceder acesso, a próxima etapa é executar a consulta no Geo Viz.

Para executar a consulta, faça o seguinte:

  1. Na primeira etapa, Selecionar dados, insira o ID do projeto no campo ID do projeto.

  2. Na janela de consulta, insira esta consulta do 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. Clique em Executar.

  4. Quando a consulta for concluída, clique em Mostrar resultados. Você também pode clicar na etapa dois Dados.

  5. Isso leva você à etapa dois. Nesta etapa, para a coluna Geometria, escolha ponto. Isso representa os pontos correspondentes ao caminho do furacão Maria.

    Resultados mapeados no BigQuery Viz do BigQuery

Formatar a visualização no Geo Viz

Na seção "Estilo", há uma lista de estilos visuais para personalização. Determinadas propriedades se aplicam somente a tipos de dados específicos. Por exemplo, circleRadius afeta somente pontos.

Veja as propriedades de estilo compatíveis:

  • fillColor: a cor de preenchimento de um polígono ou ponto. Por exemplo, as funções "linear" ou "intervalo" podem ser usadas para associar valores numéricos a um gradiente de cores.
  • fillOpacity: a opacidade de preenchimento de um polígono ou ponto. Os valores precisam estar na faixa 0-1, em que 0 = transparente e 1 = opaco.
  • strokeColor: a cor do traço ou contorno de um polígono ou de uma linha.
  • strokeOpacity: a opacidade do traço ou contorno do polígono ou da linha. Os valores precisam estar na faixa 0-1, em que 0 = transparente e 1 = opaco.
  • strokeWeight: a largura em pixels do traço ou contorno de um polígono ou de uma linha.
  • circleRadius: o raio, em metros, do círculo que representa um ponto. Por exemplo, uma função "linear" pode ser usada para associar valores numéricos a tamanhos de ponto e criar um gráfico de dispersão.

Cada estilo pode receber um valor global, aplicado a todos os resultados, ou um valor orientado por dados, aplicado de maneiras diferentes dependendo dos dados de cada linha do resultado. Para valores orientados por dados, o resultado é determinado pelos seguintes elementos:

  • Função: uma função usada para calcular um valor de estilo a partir dos valores de um campo.
  • Identidade: o valor dos dados de cada campo é usado como o valor de estilo.
  • Categorização: os valores dos dados de cada campo listados no domínio são associados um a um aos estilos correspondentes da faixa.
  • Intervalo: os valores dos dados de cada campo são arredondados para o valor mais próximo no domínio, e o estilo correspondente da faixa é aplicado.
  • Linear: os valores dos dados de cada campo são interpolados linearmente entre os valores do domínio, e uma mistura dos estilos correspondentes da faixa é aplicada.
  • Campo: o campo especificado nos dados é usado como entrada para a função de estilo.
  • Domínio: uma lista ordenada de uma amostra dos valores de entrada de um campo. As entradas de amostra (domínio) são associadas a saídas de amostra (faixa) com base na função fornecida e são usadas para inferir valores de estilo para todas as entradas, mesmo as não listadas no domínio. Os valores no domínio precisam ser do mesmo tipo (texto, número etc.) dos valores do campo que você está visualizando.
  • Faixa: uma lista de uma amostra de valores de saída para a regra de estilo. Os valores da faixa precisam ser do mesmo tipo (cor ou número) da propriedade de estilo que você está controlando. Por exemplo, a faixa da propriedade fillColor precisa conter apenas cores.

Para formatar o mapa, siga estas etapas:

  1. Clique em Adicionar estilos na segunda etapa ou em Estilo, na terceira.

  2. Mude a cor dos pontos. Clique em fillColor.

  3. No painel fillColor:

    1. Clique em Baseado em dados.
    2. Em Função, escolha linear.
    3. Em Campo, escolha usa_wind.
    4. Em Domínio, insira 0 na primeira caixa e 150 na segunda.
    5. Em Faixa, clique na primeira caixa e insira #0006ff na caixa Hex. Clique na segunda caixa e insira #ff0000. Isso muda a cor do ponto com base na velocidade do vento. Azul para ventos mais leves e vermelho para mais fortes.

      Adicionar cor de preenchimento ao BigQuery Geo Viz

  4. Examine o mapa. Ao passar o cursor sobre um dos pontos, os dados climáticos do ponto serão exibidos.

    Detalhes dos pontos do mapa

  5. Clique em fillOpacity.

  6. No campo Valor, insira .5.

    Formatar a opacidade do preenchimento de mapa no BigQuery Geo Viz

  7. Examine o mapa. A cor de preenchimento dos pontos agora está semitransparente.

  8. Altere o tamanho dos pontos com base no raio do furacão. Clique em circleRadius.

  9. No painel circleRadius, faça o seguinte:

    1. Clique em Baseado em dados.
    2. Em Função, escolha linear.
    3. Em Campo, escolha radius_50kt.
    4. Em Domínio, insira 0 na primeira caixa e 135 na segunda.
    5. Em Intervalo, insira 5 na primeira caixa e 135000 na segunda.

      Adicionar raio do círculo no BigQuery Geo Viz

  10. Examine o mapa. O raio de cada ponto corresponde agora ao raio do furacão.

    Mapa final do BigQuery Geo Viz

  11. Feche o Geo Viz.

Limpeza

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.

  • exclua o projeto que você criou; ou
  • mantenha o projeto para uso futuro.

Para excluir o projeto:

  1. No Console do Google Cloud, acesse a página Gerenciar recursos.

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir