Visualização do Data Studio com insights de lugares

Visão geral

Um diagrama de fluxo de trabalho que ilustra o Data Studio enviando parâmetros dinâmicos de cidade, dia e hora para o Insights de Lugares no BigQuery para gerar um mapa de calor de densidade geoespacial.

Neste documento, descrevemos como criar relatórios geoespaciais dinâmicos usando o Places Insights e o Data Studio. Aproveite o valor dos seus dados de local permitindo que as partes interessadas não técnicas respondam às próprias perguntas. Este guia mostra como transformar relatórios estáticos em ferramentas interativas no estilo de mapa de calor para análise de mercado, sem precisar escrever SQL para cada solicitação. Permita o acesso a dados de local complexos, preenchendo a lacuna entre a engenharia de dados e o Business Intelligence.

A adoção desse padrão arquitetônico oferece vários benefícios importantes:

  • Representação visual de dados:transforma os dados do Insights de Lugares em mapas e gráficos interativos que comunicam imediatamente a densidade e as tendências espaciais.
  • Análise simplificada sem SQL:permite que os membros da equipe, como analistas de mercado ou planejadores imobiliários, filtrem dados de forma dinâmica usando parâmetros predefinidos (por exemplo, alterando "Cidade" ou "Hora do dia" usando menus suspensos). Eles podem analisar os dados sem escrever uma única linha de SQL.
  • Colaboração integrada:os recursos padrão de compartilhamento do Data Studio permitem distribuir esses insights interativos com segurança.

Fluxo de trabalho da solução

O fluxo de trabalho a seguir estabelece uma arquitetura de relatórios de alto desempenho. Ele passa de uma linha de base estática para um aplicativo totalmente dinâmico, garantindo a precisão dos dados antes de introduzir complexidade.

Pré-requisitos

Antes de começar, siga estas instruções para configurar o Insights de Lugares. Você vai precisar de acesso ao Data Studio, que é uma ferramenta sem custo financeiro.

Etapa 1: estabelecer uma baseline geoespacial estática

Antes de introduzir a interatividade, estabeleça uma consulta de base e verifique se ela é renderizada corretamente no Data Studio. Use os Insights de Lugares e os recursos geoespaciais do BigQuery para agregar dados em grades hexagonais usando o sistema de indexação H3. Isso vai produzir uma saída de consulta que pode ser usada com o tipo de carrinho de mapa preenchido do Data Studio para visualização.

1.1 Conectar dados

Use a consulta estática a seguir para estabelecer a conexão inicial. Ele segmenta um local fixo (Londres) e uma categoria (Restaurantes) para validar o pipeline de dados.

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    -- Note: Change 'gb' to your target country code (e.g., 'us')
    `places_insights___gb.places`
  WHERE
    'London' IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Observação sobre agregação espacial

Essa consulta usa uma função da caixa de ferramentas de análise do CARTO (carto-os) disponível publicamente no Google Cloud BigQuery. A função H3_FROMGEOGPOINT converte pontos de localização específicos em células H3, um sistema que divide o mundo em células de grade hexagonal.

Usamos essa transformação porque o mapa preenchido do Data Studio requer polígonos (formas) para renderizar cores. Ao converter pontos em formas hexagonais, podemos visualizar a densidade de empresas em uma área específica, em vez de traçar milhares de pontos sobrepostos.

Observação sobre o limite de agregação

Todas as consultas do Insights de Lugares exigem a cláusula WITH AGGREGATION_THRESHOLD. Essa proteção de privacidade garante que os dados só sejam retornados se a contagem agregada for 5 ou mais.

No contexto dessa visualização, se uma célula de grade H3 tiver menos de 5 restaurantes, ela será omitida do conjunto de resultados e vai aparecer vazia no mapa.

Para implementar isso no Data Studio:

  1. Crie um novo Relatório em branco.
  2. Selecione BigQuery como o conector de dados.
  3. Escolha CONSULTA PERSONALIZADA no menu à esquerda e selecione o ID do projeto de faturamento.
  4. Cole a consulta de base estática acima no editor.
  5. Desmarque os parâmetros Usar SQL legado, Ativar período e Ativar endereço de e-mail do visualizador.
  6. Clique em Adicionar.

1.2 Configurar a visualização geoespacial

Depois que os dados forem conectados, configure o Data Studio para reconhecer os dados de limite do H3 corretamente:

  1. Adicione uma visualização de Mapa preenchido à tela do relatório no menu Adicionar um gráfico.
  2. Verifique se o campo h3_geo, que contém a geometria do polígono, está definido como o tipo de dados Geoespacial.
    1. Clique no ícone Editar fonte de dados (lápis) ao lado do nome da conexão.
    2. Se h3_geo estiver definido como Texto (ABC), use o menu suspenso para selecionar Geográfico > Geoespacial.
    3. Clique em Concluído.
  3. Mapeie o campo h3_index para Local (atuando como o identificador exclusivo).
  4. Mapeie o campo h3_geo para Campo geoespacial (atuando como a geometria do polígono).
  5. Mapeie o campo restaurant_count para Métrica de cor.

Isso vai renderizar um mapa da densidade de restaurantes por célula H3. O azul mais escuro (opção de cor padrão) indica uma célula com uma contagem maior de restaurantes.

Um mapa preenchido de Londres sobreposto por uma grade hexagonal, em que as células azuis mais escuras indicam uma maior concentração de restaurantes. A legenda indica contagens de densidade que variam de 5 a 1.215.

Etapa 2: implementar parâmetros dinâmicos

Para tornar o relatório interativo, vamos adicionar controles que permitem ao usuário selecionar uma das seguintes opções:

  • Localidade: controla a cidade em que o relatório se concentra.
  • Dia da semana: filtra os lugares com base no dia em que estão abertos, usando o registro regular_opening_hours no esquema.
  • Hora do dia: filtra os lugares com base no horário de funcionamento, comparando com os campos start_time e end_time.

Para isso, você vai transmitir parâmetros selecionados pelo usuário diretamente para uma consulta modificada do Insights de Lugares no ambiente de execução. No editor de fontes de dados do Data Studio, é preciso definir explicitamente esses parâmetros como variáveis tipadas.

No Data Studio, selecione o menu Recurso e clique em Gerenciar fontes de dados adicionadas. No painel que aparece, selecione EDIT na fonte de dados SQL personalizada do BigQuery que adicionamos anteriormente.

Na janela "Editar conexão", selecione ADICIONAR UM PARÂMETRO. Vamos adicionar três parâmetros com os valores abaixo.

Nome do parâmetro Tipo de dados Valores permitidos Lista de valores (precisa corresponder exatamente ao banco de dados)
p_locality Texto Lista de valores
Valor Marcador
London Londres
Manchester Manchester
Birmingham Birmingham
Glasgow Glasgow
p_day_of_week Texto Lista de valores
Valor Marcador
monday Segunda-feira
tuesday Terça-feira
wednesday Quarta-feira
thursday Quinta-feira
friday Sexta-feira
saturday Sábado
sunday Domingo
p_hour_of_day Texto Lista de valores
Valor Marcador
03:00:00 3h às 4h
08:00:00 8h às 9h
19:00:00 Das 19h às 20h

Exemplo de configuração para o parâmetro p_hour_of_day.

Interface de configuração do parâmetro p_hour_of_day mostrando a seção da lista de valores em que as strings de tempo são mapeadas para rótulos legíveis.

Para o parâmetro p_hour_of_day, preste muita atenção à coluna Value. Como a consulta SQL usa CAST(@p_hour_of_day AS TIME), os valores transmitidos pelo Data Studio precisam estar no formato HH:MM:SS estrito (relógio de 24 horas).

Depois de configurar e salvar os três parâmetros, modifique a conexão SQL personalizada do BigQuery para referenciar essas variáveis usando a sintaxe @.

Para isso, clique em "Editar conexão" e cole a consulta modificada abaixo:

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    `places_insights___gb.places`
  WHERE
    -- Dynamic locality filter based on parameter
    @p_locality IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
    AND business_status = 'OPERATIONAL'
    AND EXISTS (
      SELECT 1
      FROM UNNEST(
        CASE @p_day_of_week
          WHEN 'monday' THEN regular_opening_hours.monday
          WHEN 'tuesday' THEN regular_opening_hours.tuesday
          WHEN 'wednesday' THEN regular_opening_hours.wednesday
          WHEN 'thursday' THEN regular_opening_hours.thursday
          WHEN 'friday' THEN regular_opening_hours.friday
          WHEN 'saturday' THEN regular_opening_hours.saturday
          WHEN 'sunday' THEN regular_opening_hours.sunday
        END
      ) AS hours
      WHERE hours.start_time <= CAST(@p_hour_of_day AS TIME)
        AND hours.end_time >= TIME_ADD(CAST(@p_hour_of_day AS TIME), INTERVAL 1 HOUR)
    )
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Clique em "Reconectar" para salvar a edição. Na consulta modificada, observe as novas variáveis, como @p_hour_of_day, que se correlacionam com os nomes de parâmetros que acabamos de configurar.

Volte à tela do relatório para expor esses parâmetros ao usuário final:

  1. Adicione três controles de lista suspensa ao relatório.
  2. Para cada controle, defina o Campo de controle para corresponder aos parâmetros recém-criados:
    • Controle 1: p_locality
    • Controle 2: p_day_of_week
    • Controle 3: p_hour_of_day

O relatório final será semelhante a este: Se você mudar um valor em um dos controles suspensos, o Data Studio vai buscar os dados solicitados no Places Insights antes de mostrá-los no mapa.

O relatório interativo final mostrando um mapa de densidade de restaurantes de Glasgow com três filtros suspensos na parte de cima. O menu de hora do dia é aberto para mostrar os períodos selecionáveis.

Etapa 3: compartilhar os resultados

Use a ferramenta de compartilhamento integrada ao Data Studio para compartilhar o relatório. Isso permite que os espectadores atualizem dinamicamente a visualização com base nos parâmetros selecionados nas listas suspensas.

Conclusão

Esse padrão cria uma ferramenta de relatórios interativa e escalonável que aproveita o poder computacional do BigQuery para disponibilizar dados agregados do Insights de Lugares ao Data Studio. Essa arquitetura evita as armadilhas de tentar visualizar conjuntos de dados brutos enormes e oferece aos usuários finais a flexibilidade de explorar dados em diferentes dimensões, como tempo, local e tipo de negócio, quase em tempo real. Essa é uma ferramenta poderosa para dar às partes interessadas não técnicas a flexibilidade de explorar os dados.

Próximas etapas

Confira outras variações de relatórios dinâmicos parametrizando diferentes partes do esquema do Insights de Lugares:

  • Análise dinâmica de concorrentes:crie um parâmetro para nomes de brand para permitir que os usuários alternem instantaneamente o mapa de calor entre diferentes concorrentes para ver a saturação relativa deles em um mercado. Consulte Sobre os dados do Insights de Lugares para saber mais sobre a disponibilidade de dados de marcas.
  • Seleção interativa de locais:adicione parâmetros para price_level (por exemplo, "Moderado" x "Caro") e rating mínimo para permitir que as equipes imobiliárias filtrem dinamicamente as áreas que correspondem a perfis demográficos específicos.
  • Áreas de influência personalizadas:em vez de filtrar por nome de cidade, permita que os usuários definam áreas de estudo personalizadas.
    • Com base em raio:crie três parâmetros numéricos: p_latitude, p_longitude e p_radius_meters. As coordenadas podem ser obtidas nas APIs da Plataforma Google Maps, incluindo a API Geocoding. Na consulta, injete-os na função ST_DWITHIN:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • Baseado em polígonos:para formas personalizadas complexas (como territórios de vendas), os usuários não podem inserir texto de geometria com facilidade. Em vez disso, crie uma tabela de consulta no BigQuery com as geometrias de forma e um nome amigável (por exemplo, "Zona A"). Crie um parâmetro de texto p_zone_name no Data Studio para permitir que os usuários selecionem a zona e use uma subconsulta para recuperar a geometria da função ST_CONTAINS.

Colaboradores