Sistemi di griglia per l'analisi spaziale
Questo documento spiega lo scopo e i metodi di utilizzo dei sistemi di griglia geospaziali (come S2 e H3) in BigQuery per organizzare i dati spaziali in aree geografiche standardizzate. Inoltre, spiega come scegliere il sistema di griglia giusto per la tua applicazione. Questo documento è utile per chiunque lavori con dati spaziali ed esegua analisi spaziali in BigQuery.
Panoramica e sfide dell'utilizzo dell'analisi spaziale
L'analisi spaziale aiuta a mostrare la relazione tra entità (negozi o case) ed eventi in uno spazio fisico. Analisi spaziale che utilizzano la superficie della Terra come spazio fisico chiamato analisi geospaziali. BigQuery include funzionalità e funzioni geospaziali che ti consentono di eseguire analisi geospaziali su larga scala.
Molti casi d'uso geospaziali prevedono l'aggregazione dei dati all'interno di aree localizzate e il confronto delle aggregazioni statistiche di queste aree tra loro. Questi le aree localizzate sono rappresentate come poligoni in una tabella di database spaziale. In alcuni contesti, è chiamato geografia statistica. Il metodo di determinazione dell'estensione delle aree geografiche deve essere standardizzato per migliorare la generazione di report, l'analisi e l'indicizzazione spaziale. Ad esempio, un rivenditore potrebbe voler analizzare le variazioni demografiche nel tempo nelle aree in cui si trovano i suoi negozi o in quelle in cui sta valutando la possibilità di aprire un nuovo negozio. In alternativa, un'assicurazione potrebbe voler migliorare la propria comprensione dei rischi per le proprietà analizzando i rischi di calamità naturali prevalenti in una determinata area.
A causa delle rigide normative sulla privacy dei dati in molte aree, i set di dati che contengono le informazioni sulla posizione devono essere anonimizzate o parzialmente anonimizzate per contribuire a proteggere la privacy delle persone rappresentate nei dati. Ad esempio, potresti dover eseguire un'analisi del rischio di concentrazione geografica del credito su un set di dati contenente dati su mutui insoluti. Per anonimizzare il set di dati in modo da renderlo adatto per l'analisi conforme, devi conservare le informazioni pertinenti sulla posizione delle proprietà, ma evitare di utilizzare un indirizzo specifico o le coordinate di longitudine e latitudine.
Negli esempi precedenti, ai progettisti di queste analisi vengono presentati le seguenti sfide:
- Come tracciare i confini dell'area all'interno della quale analizzi le variazioni nel tempo?
- Come utilizzare i confini amministrativi esistenti, come le sezioni di censimento o un sistema a griglia multi-risoluzione?
Lo scopo di questo documento è rispondere a queste domande spiegando ogni opzione, descrivendo le best practice e aiutandoti a evitare errori comuni.
Insidie comuni nella scelta delle aree statistiche
I set di dati aziendali, come vendite immobiliari, campagne di marketing, spedizioni di e-commerce e polizze assicurative, sono adatti all'analisi spaziale. Spesso questi dataset contengono quella che sembra essere una comoda chiave di join spaziale, ad esempio un trattino del censimento, un codice postale o il nome di una città. Set di dati pubblici che contengono di sezioni di censimento, codici postali e città sono immediatamente disponibili, il che li induce ad avere la tentazione di usarli come confini amministrativi per i sistemi e aggregazione.
Sebbene apparentemente pratici, questi e altri confini amministrativi presentano degli svantaggi. Inoltre, questi limiti potrebbero funzionare bene nelle fasi iniziali di un progetto di analisi, ma gli svantaggi possono essere notati nelle fasi successive.
Codici postali
I codici postali vengono utilizzati per indirizzare la posta in vari paesi in tutto il mondo e, grazie a questa ubiquità, vengono spesso utilizzati per fare riferimento a località e aree in set di dati sia spaziali che non spaziali. Facendo riferimento all'esempio precedente, un mutuo, spesso è necessario anonimizzare un set di dati prima che avvenga eseguire analisi. Poiché ogni indirizzo della struttura contiene un codice postale, le tabelle di riferimento dei codici postali sono accessibili, il che rappresenta un'opzione pratica per una chiave di join per l'analisi spaziale.
Un errore nell'utilizzo dei codici postali è che non vengono rappresentati come poligoni e non esiste un'unica fonte attendibile corretta per il codice postale in queste aree. Inoltre, i codici postali non rappresentano una buona rappresentazione del reale comportamento umano. I dati relativi al codice postale più comunemente utilizzati negli Stati Uniti sono relativi a: i file TIGER/Line Shapefile degli US Census Bureau, che contiene un set di dati chiamato ZCTA5 (area di tabulazione codici postali). Questo set di dati rappresenta un'approssimazione dei confini dei codici postali ricavati dai percorsi di consegna della posta. Tuttavia, alcuni codici postali che rappresentano singoli edifici non hanno confini. Questo problema è presente anche in altri paesi, il che rende difficile formare una singola tabella di fatti globale contenente un insieme autorevole di confini dei codici postali che può essere utilizzato su sistemi e set di dati diversi.
Inoltre, in tutto il mondo non viene utilizzato un formato di codice postale standardizzato. Alcuni sono numerici, con un numero di cifre compreso tra tre e dieci, mentre altri sono alfanumerici. Inoltre, esiste una sovrapposizione tra i paesi, il che rende necessario memorizzare il paese di origine in una colonna separata insieme al codice postale. Alcune paesi non utilizzano i codici postali, complicando ulteriormente l'analisi.
Sezioni censuarie, città e contee
Esistono alcune unità amministrative, come sezioni censuarie, città e contee, che non presentano la mancanza di un confine autorevole. I confini città, ad esempio, sono nella maggior parte dei casi ben stabilite dal governo le autorità competenti. I lotti censuari sono ben definiti dal Census Bureau degli Stati Uniti e dalle sue istituzioni analoghe nella maggior parte degli altri paesi.
Uno svantaggio dell'utilizzo di questi e altri confini amministrativi è che cambiano nel tempo e non sono geograficamente coerenti tra loro. I contee e le città si fondono o si separano e a volte vengono rinominati. I lotti censuari vengono aggiornati una volta ogni dieci anni negli Stati Uniti e in momenti diversi in altri paesi. In alcuni casi, il confine geografico può cambiare, ma il relativo identificatore univoco rimane invariato, il che rende difficile analizzare e comprendere le variazioni nel tempo.
Un altro svantaggio comune ad alcuni confini amministrativi è che si tratta di aree distinte senza gerarchia geografica. Oltre a confrontare le singole aree tra loro, un requisito comune è confrontare delle aree stesse ad altre aggregazioni. Ad esempio, un rivenditore che implementa il modello di Huff potrebbe voler eseguire questa analisi utilizzando più distanze, che potrebbero non corrispondere alle aree amministrative utilizzate altrove nell'attività.
Griglie a singola e multirisoluzione
Le griglie a singola risoluzione sono costituite da unità distinte che non hanno alcuna relazione geografica con le aree più grandi che le contengono. Ad esempio, i codici postali hanno un rapporto geografico incoerente con i confini di unità amministrative più grandi, come città o contee che potrebbero contenere codici postali. Per l'analisi spaziale, è importante capire in che modo le diverse aree sono correlate tra loro senza una conoscenza approfondita della storia e della legislazione che definisce il poligono dell'area.
Le griglie a risoluzione multi-risoluzione a volte sono chiamate griglie gerarchiche perché le celle a ogni livello di zoom vengono suddivisi in celle più piccole a livelli di zoom più elevati. Le griglie multirisoluzione sono costituite da una gerarchia ben definita di unità contenute in unità più grandi. I lotti censuari, ad esempio, contengono gruppi di isolati, che a loro volta contengono isolati. Questa relazione gerarchica coerente può essere utile per l'aggregazione statistica. Ad esempio, prendendo una media di i redditi di tutti i gruppi di blocchi contenuti in un contratto, puoi mostrare il valore le entrate della sezione censita contenente i gruppi di blocco. Ciò non sarebbe possibile con i codici postali perché tutte le aree postali si trovano a una singola risoluzione. Sarebbe difficile confrontare il reddito di un appezzamento con quelli degli appezzamenti circostanti, in quanto non esiste un modo standardizzato per definire l'adiacenza o per confrontare i redditi in paesi diversi.
Sistemi di rete S2 e H3
Questa sezione fornisce una panoramica dei sistemi di rete S2 e H3.
S2
La geometria S2 è un sistema di griglia gerarchico open source sviluppati da Google e rilasciati al pubblico nel 2011. Puoi utilizzare la griglia S2 sistema per organizzare e indicizzare i dati spaziali assegnando un numero intero univoco a 64 bit a ciascuna cella. Esistono 31 livelli di risoluzione. Ogni cella è rappresentata come un quadrato ed è progettata per operazioni su geometrie sferiche (a volte chiamate geografie). Ogni quadrato è suddiviso in quattro quadrati più piccoli. Attraversamento vicino, che è la capacità di identificare le celle S2 vicine, è meno definita perché i quadrati possono avere quattro o otto vicini pertinenti, a seconda del tipo di analisi. Di seguito è riportato un esempio di celle della griglia S2 multirisoluzione:
BigQuery utilizza le celle S2 per indicizzare i dati spaziali ed espone più funzioni. Ad esempio, S2_CELLIDFROMPOINT
restituisce l'ID cella S2 che contiene un punto sulla superficie terrestre in un determinato livello.
H3
H3 è una griglia gerarchica open source sviluppato da Uber e utilizzato da Overture Maps. Ci sono 16 livelli di risoluzione del problema. Ogni cella è rappresentata da un esagono e, come S2, ogni cella è assegnato un numero intero univoco a 64 bit. Nell'esempio sulla visualizzazione delle celle H3 che coprono il Golfo del Messico, le celle H3 più piccole non sono perfettamente contenute dalle celle più grandi.
Ogni cella si suddivide in sette esagoni più piccoli. La suddivisione non è esatta, ma è adeguata per molti casi d'uso. Ogni cella condivide un bordo con sei celle vicine, semplificando l'attraversamento del vicino. Ad esempio, su ogni livello, sono presenti 12 pentagoni, che invece condividono un lato con cinque vicini anziché sei. Anche se H3 non è supportato in BigQuery, puoi aggiungere il supporto di H3 a BigQuery utilizzando la Carto Analytics Toolbox per BigQuery.
Sebbene entrambe le librerie S2 e H3 siano open source e disponibili ai sensi della licenza Apache 2, la libreria H3 ha una documentazione più dettagliata.
HEALPix
Uno schema aggiuntivo per creare una griglia sulla sfera, comunemente utilizzato nel campo dell'astronomia, è noto come HEALPix (Hierarchical Equal Area isoLatitude Pixelation). HEALPix è indipendente da una profondità di pixel gerarchica, ma il tempo di calcolo rimane costante.
HEALPix è uno schema di pixelizzazione gerarchico con aree uguali per la sfera. È utilizzata per rappresentare e analizzare dati sulla sfera celeste (o altro). Oltre a un tempo di calcolo costante, la griglia HEALPix presenta le seguenti caratteristiche:
- Le celle della griglia sono gerarchiche, in cui le relazioni padre-figlio sono viene mantenuta.
- In una gerarchia specifica, le celle sono di aree uguali.
- Le celle seguono una distribuzione iso-latitude, consentendo prestazioni più elevate per i metodi spettrali.
BigQuery non supporta HEALPix, ma numerose implementazioni in una varietà di linguaggi, tra cui JavaScript, che lo rende pratico per l'uso in BigQuery (UDF).
Esempi di casi d'uso per ogni strategia di indicizzazione
Questa sezione fornisce alcuni esempi che ti aiutano a valutare quale sia il sistema di griglie migliore per il tuo caso d'uso.
Molti casi d'uso relativi all'analisi e alla generazione di report prevedono la visualizzazione, nell'ambito per l'analisi stessa o per la segnalazione agli stakeholder aziendali. Queste visualizzazioni vengono comunemente presentate in Web Mercatore, che è la proiezione piana utilizzata da Google Maps e da molte altre applicazioni di mappatura web. Nei casi in cui la visualizzazione gioca un ruolo fondamentale, le celle H3 offrire un'esperienza di visualizzazione soggettivamente migliore. Le celle S2, soprattutto alle latitudini più elevate, tendono a sembrare più distorte rispetto a quelle H3 e non sono coerenti con le celle di latitudini più basse quando vengono presentate in una proiezione piana.
Le celle H3 semplificano l'implementazione quando il confronto con i vicini svolge un ruolo importante nell'analisi. Ad esempio, un'analisi comparativa tra le sezioni di una città potrebbe essere utile per decidere quale località è adatta per l'apertura di un nuovo negozio di vendita al dettaglio o di un centro di distribuzione. L'analisi richiede calcoli statistici per gli attributi di una determinata cella che viene confrontata con le celle adiacenti.
Le celle S2 possono funzionare meglio in analisi di natura globale, ad esempio quelle che richiedono misurazioni di distanze e angoli. Pokemon Go di Niantic utilizza le celle S2 per determinare dove sono posizionati gli asset del gioco e come distribuiti in tempo reale. L'esatta proprietà di suddivisione delle celle S2 garantisce che gli asset possono essere distribuiti uniformemente in tutto il mondo.
Passaggi successivi
- Per le best practice per il clustering spaziale, vedi Clustering spaziale su BigQuery - Best practice.
- Scopri come creare una gerarchia spaziale da dati imperfetti.
- Scopri di più sulla geometria S2 su GitHub.
- Scopri di più sulla geometria H3 su GitHub.
- Consulta gli esempi che utilizzano H3, BigQuery e Earth Engine.