Visualizzazione di Data Studio per Places Insights

Panoramica

Un diagramma del flusso di lavoro che mostra Data Studio che invia parametri dinamici per città, giorno e ora a Places Insights in BigQuery per generare una mappa di densità geospaziale.

Questo documento descrive come creare report geospaziali dinamici utilizzando Places Insights e Data Studio. Sfrutta il valore dei tuoi dati sulla posizione consentendo agli stakeholder non tecnici di rispondere alle proprie domande. Questa guida ti mostra come trasformare i report statici in strumenti interattivi in stile mappa termica per l'analisi di mercato, senza dover scrivere codice SQL per ogni richiesta. Consente l'accesso a dati sulla posizione complessi, colmando il divario tra l'ingegneria dei dati e la business intelligence.

L'adozione di questo pattern architetturale offre diversi vantaggi principali:

  • Rappresentazione visiva dei dati: trasforma i dati di Places Insights in mappe e grafici interattivi che comunicano immediatamente la densità spaziale e le tendenze.
  • Esplorazione semplificata senza SQL: consente ai membri del team, come analisti di mercato o pianificatori immobiliari, di filtrare dinamicamente i dati utilizzando parametri predefiniti (ad esempio, modificando "Città" o "Ora del giorno" utilizzando i menu a discesa). Possono esplorare i dati senza scrivere una sola riga di SQL.
  • Collaborazione senza problemi: le funzionalità di condivisione standard di Data Studio ti consentono di distribuire in modo sicuro questi approfondimenti interattivi.

Workflow della soluzione

Il seguente flusso di lavoro stabilisce un'architettura di reporting efficiente. Passa da una base di riferimento statica a un'applicazione completamente dinamica, garantendo la correttezza dei dati prima di introdurre complessità.

Prerequisiti

Prima di iniziare, segui queste istruzioni per configurare Places Insights. Avrai bisogno dell'accesso a Data Studio, uno strumento senza costi.

Passaggio 1: stabilisci una base di riferimento geospaziale statica

Prima di introdurre l'interattività, crea una query di base e assicurati che venga visualizzata correttamente in Data Studio. Utilizza Places Insights e le funzionalità geospaziali di BigQuery per aggregare i dati in griglie esagonali utilizzando il sistema di indicizzazione H3. In questo modo verrà generato un output della query che può essere utilizzato con il tipo di grafico a mappa riempita di Data Studio per la visualizzazione.

1.1 Connetti dati

Utilizza la seguente query statica per stabilire la connessione iniziale. Ha come target una località (Londra) e una categoria (Ristoranti) fisse per convalidare la pipeline di dati.

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;

Nota sull'aggregazione spaziale

Questa query utilizza una funzione di CARTO Analytics Toolbox (carto-os) disponibile pubblicamente in Google Cloud BigQuery. La funzione H3_FROMGEOGPOINT converte punti di posizione specifici in celle H3, un sistema che divide il mondo in celle di griglia esagonali.

Utilizziamo questa trasformazione perché la mappa riempita di Data Studio richiede poligoni (forme) per il rendering dei colori. Convertendo i punti in forme esagonali, possiamo visualizzare la densità delle attività in un'area specifica, anziché tracciare migliaia di punti sovrapposti.

Nota sulla soglia di aggregazione

Tutte le query di Places Insights richiedono la clausola WITH AGGREGATION_THRESHOLD. Questa protezione della privacy garantisce che i dati vengano restituiti solo se il conteggio aggregato è pari o superiore a 5.

Nel contesto di questa visualizzazione, se una cella della griglia H3 contiene meno di 5 ristoranti, questa cella viene omessa completamente dal set di risultati e apparirà vuota sulla mappa.

Per implementare questa funzionalità in Data Studio:

  1. Crea un nuovo report vuoto.
  2. Seleziona BigQuery come connettore dati.
  3. Scegli QUERY PERSONALIZZATA dal menu a sinistra e seleziona l'ID progetto di fatturazione.
  4. Incolla la query di base statica sopra nell'editor.
  5. Deseleziona i parametri Utilizza SQL precedente, Attiva intervallo di date e Attiva indirizzo email del visualizzatore.
  6. Fai clic su Aggiungi.

1.2 Configura la visualizzazione geospaziale

Una volta collegati i dati, configura Data Studio in modo che riconosca correttamente i dati dei confini H3:

  1. Aggiungi una visualizzazione Mappa riempita al canvas del report dal menu Aggiungi un grafico.
  2. Assicurati che il campo h3_geo, che contiene la geometria del poligono, sia impostato sul tipo di dati geospaziali.
    1. Fai clic sull'icona Modifica origine dati (a forma di matita) accanto al nome della connessione.
    2. Se h3_geo è impostato su Testo (ABC), utilizza il menu a discesa per selezionare Geo > Geospaziale.
    3. Fai clic su Fine.
  3. Mappa il campo h3_index su Posizione (che funge da identificatore univoco).
  4. Mappa il campo h3_geo al campo geospaziale (che funge da geometria del poligono).
  5. Mappa il campo restaurant_count alla metrica Colore.

Verrà visualizzata una mappa della densità dei ristoranti per cella H3. Il blu più scuro (opzione di colore predefinita) indica una cella con un numero maggiore di ristoranti.

Una mappa di Londra riempita e sovrapposta a una griglia esagonale, in cui le celle blu più scure indicano una maggiore concentrazione di ristoranti. La legenda indica i conteggi di densità compresi tra 5 e 1215.

Passaggio 2: implementa i parametri dinamici

Per rendere interattivo il report, aggiungeremo controlli che consentono all'utente di scegliere tra le seguenti opzioni:

  • Località: controlla la città su cui si concentra il report.
  • Giorno della settimana: filtra i luoghi in base al giorno di apertura, utilizzando il record regular_opening_hours nello schema.
  • Ora del giorno: filtra i luoghi in base all'orario di apertura confrontando i campi start_time e end_time.

Per farlo, devi passare i parametri selezionati dall'utente direttamente in una query Places Insights modificata in fase di runtime. Nell'editor delle origini dati di Data Studio, devi definire esplicitamente questi parametri come variabili tipizzate.

In Data Studio, seleziona il menu Risorsa, quindi fai clic su Gestisci origini dati aggiunte. Nel riquadro visualizzato, seleziona EDIT in corrispondenza dell'origine dati SQL personalizzato BigQuery che abbiamo aggiunto in precedenza.

Nella finestra Modifica connessione, seleziona AGGIUNGI UN PARAMETRO. Aggiungeremo tre parametri con i valori riportati di seguito.

Nome parametro Tipo di dati Valori consentiti Elenco di valori (deve corrispondere esattamente al database)
p_locality Testo Elenco di valori
Valore Etichetta
London Londra
Manchester Manchester
Birmingham Birmingham
Glasgow Glasgow
p_day_of_week Testo Elenco di valori
Valore Etichetta
monday Lunedì
tuesday Martedì
wednesday Mercoledì
thursday Giovedì
friday Venerdì
saturday Sabato
sunday Domenica
p_hour_of_day Testo Elenco di valori
Valore Etichetta
03:00:00 03:00 - 04:00
08:00:00 8:00 - 9:00
19:00:00 19:00-20:00

Configurazione di esempio per il parametro p_hour_of_day.

Interfaccia di configurazione per il parametro p_hour_of_day che mostra la sezione dell'elenco dei valori in cui le stringhe temporali vengono mappate a etichette leggibili.

Per il parametro p_hour_of_day, presta molta attenzione alla colonna Value. Poiché la query SQL utilizza CAST(@p_hour_of_day AS TIME), i valori passati da Data Studio devono essere nel formato HH:MM:SS rigoroso (orologio a 24 ore).

Dopo aver configurato e salvato tutti e tre i parametri, modifica la connessione SQL personalizzata BigQuery in modo che faccia riferimento a queste variabili utilizzando la sintassi @.

Per farlo, fai clic su Modifica connessione e incolla la query modificata di seguito:

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;

Fai clic su Riconnetti per salvare la modifica. Nella query modificata, prendi nota delle nuove variabili come @p_hour_of_day, che corrispondono ai nomi dei parametri che abbiamo appena configurato.

Torna al canvas del report per mostrare questi parametri all'utente finale:

  1. Aggiungi tre controlli Elenco a discesa al report.
  2. Per ogni controllo, imposta il campo Controllo in modo che corrisponda ai parametri che hai appena creato:
    • Controllo 1: p_locality
    • Controllo 2: p_day_of_week
    • Controllo 3: p_hour_of_day

Il report finale dovrebbe essere simile al seguente. La modifica di un valore in uno dei controlli a discesa attiverà il recupero dei dati richiesti da Places Insights prima della visualizzazione sulla mappa.

Il report interattivo finale mostra una mappa della densità dei ristoranti di Glasgow con tre filtri a discesa nella parte superiore. Il menu dell'ora del giorno viene espanso per mostrare gli intervalli di tempo selezionabili.

Passaggio 3: condividi i risultati

Utilizza lo strumento di condivisione integrato in Data Studio per condividere il report. In questo modo, gli spettatori potranno aggiornare dinamicamente la visualizzazione in base ai parametri selezionati dagli elenchi a discesa.

Conclusione

Questo pattern crea uno strumento di reporting scalabile e interattivo che sfrutta la potenza di calcolo di BigQuery per fornire dati aggregati di Places Insights a Data Studio. Questa architettura evita i problemi legati al tentativo di visualizzare enormi set di dati non elaborati e offre agli utenti finali la flessibilità di esplorare i dati in diverse dimensioni, come tempo, posizione e tipo di attività, quasi in tempo reale. Si tratta di uno strumento potente che offre agli stakeholder non tecnici la flessibilità di esplorare i dati.

Passaggi successivi

Esplora altre varianti dei report dinamici parametrizzando diverse parti dello schema di Places Insights:

  • Analisi dinamica della concorrenza:crea un parametro per i nomi di brand per consentire agli utenti di passare istantaneamente da una mappa termica a un'altra per visualizzare la saturazione relativa di un mercato. Per informazioni sulla disponibilità dei dati del brand, consulta Informazioni sui dati di Places Insights.
  • Selezione interattiva del sito:aggiungi parametri per price_level (ad es. "Moderato" anziché "Costoso") e rating minimo per consentire ai team immobiliari di filtrare dinamicamente le aree che corrispondono a profili demografici specifici.
  • Aree di utenza personalizzate:anziché filtrare in base al nome della città, consente agli utenti di definire aree di studio personalizzate.
    • Basato sul raggio:crea tre parametri numerici: p_latitude, p_longitude e p_radius_meters. Le coordinate possono essere ottenute dalle API Google Maps Platform, inclusa l'API Geocoding. Nella query, inserisci questi valori nella funzione ST_DWITHIN:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • Basato su poligoni:per forme personalizzate complesse (come i territori di vendita), gli utenti non possono inserire facilmente il testo della geometria. Crea invece una tabella di ricerca in BigQuery contenente le geometrie delle forme e un nome descrittivo (ad es. "Zona A"). Crea un parametro di testo p_zone_name in Data Studio per consentire agli utenti di selezionare la zona e utilizza una sottoquery per recuperare la geometria per la funzione ST_CONTAINS.

Collaboratori