Analizzare i tuoi dati

Last reviewed 2023-08-08 UTC

Questo documento del framework dell'architettura Google Cloud illustra alcuni dei principi fondamentali e delle best practice per l'analisi dei dati in Google Cloud. Scoprirai alcuni dei principali servizi di analisi dei dati e come possono aiutarti nelle varie fasi del ciclo di vita dei dati. Queste best practice ti aiutano a soddisfare le tue esigenze di analisi dei dati e a creare la progettazione del tuo sistema.

Principi fondamentali

Le aziende vogliono analizzare i dati e generare insight strategici a partire da questi dati. Google Cloud offre vari servizi utili per l'intero ciclo di vita dei dati, dall'importazione dati ai report e alla visualizzazione. La maggior parte di questi servizi è completamente gestita e alcuni sono serverless. Puoi anche creare e gestire un ambiente di analisi dei dati sulle VM di Compute Engine, ad esempio per ospitare autonomamente Apache Hadoop o Beam.

La tua particolare attenzione, l'esperienza del team e la prospettiva strategica ti aiutano a determinare quali servizi Google Cloud adotti per supportare le tue esigenze di analisi dei dati. Ad esempio, Dataflow consente di scrivere trasformazioni complesse con un approccio serverless, ma per le esigenze di calcolo e di elaborazione è necessario affidarsi a una versione "guidata" delle configurazioni. In alternativa, Dataproc consente di eseguire le stesse trasformazioni, ma di gestire i cluster e di ottimizzare i job in autonomia.

Nella progettazione del tuo sistema, pensa alla strategia di elaborazione utilizzata dai tuoi team, ad esempio estrazione, trasformazione, caricamento (ETL) o estrazione, caricamento, trasformazione (ELT). La progettazione del sistema deve considerare anche se è necessario elaborare l'analisi in batch o l'analisi dei flussi di dati. Google Cloud fornisce una piattaforma dati unificata e consente di creare un data lake o un data warehouse per soddisfare le tue esigenze aziendali.

Servizi chiavi

La seguente tabella fornisce una panoramica generale dei servizi di analisi di Google Cloud:

Servizio Google Cloud Descrizione
Pub/Sub Base semplice, affidabile e scalabile per l'analisi dei flussi e i sistemi di calcolo basati su eventi.
Dataflow Un servizio completamente gestito per trasformare e arricchire i dati in modalità flusso (in tempo reale) e batch (storico).
Dataprep di Trifacta Servizio dati intelligente per esplorare in modo visivo, pulire e preparare dati strutturati e non strutturati per l'analisi.
Dataproc Servizio cloud veloce, facile da utilizzare e completamente gestito per eseguire cluster Apache Spark e Apache Hadoop.
Cloud Data Fusion Servizio di integrazione dei dati completamente gestito, creato per il cloud che consente di creare e gestire pipeline di dati ETL/ELT. Cloud DataFusion fornisce un'interfaccia grafica e una vasta libreria open source di connettori e trasformazioni preconfigurati.
BigQuery Data warehouse serverless, a basso costo e completamente gestito, in grado di scalare con le tue esigenze di archiviazione e potenza di calcolo. BigQuery è un database ANSI SQL e a colonne che può analizzare da terabyte a petabyte di dati.
Cloud Composer Servizio di orchestrazione del flusso di lavoro completamente gestito che consente di creare, pianificare e monitorare le pipeline su cloud e in data center on-premise.
Catalogo dati Servizio di gestione dei metadati completamente gestito e scalabile che ti aiuta a scoprire, gestire e comprendere tutti i tuoi dati.
Looker Studio Servizio di analisi visiva completamente gestito che può aiutarti a estrarre insight dai dati tramite dashboard interattive.
Looker Piattaforma aziendale che connette, analizza e visualizza i dati in ambienti multi-cloud.
Dataform Prodotto completamente gestito per la collaborazione, la creazione e il deployment di pipeline di dati e per garantire la qualità dei dati.
Dataplex Servizio di data lake gestito che gestisce, monitora e regolamenta centralmente i dati di data lake, data warehouse e data mart utilizzando controlli coerenti.
AnalyticsHub Piattaforma che scambia in modo efficiente e sicuro asset di analisi dei dati all'interno della tua organizzazione per affrontare le sfide legate all'affidabilità e al costo dei dati.

Ciclo di vita dei dati

Quando crei la progettazione del sistema, puoi raggruppare i servizi di analisi dei dati di Google Cloud in base allo spostamento generale dei dati in qualsiasi sistema o al ciclo di vita dei dati.

Il ciclo di vita dei dati include le fasi e i servizi di esempio seguenti:

Le fasi e i servizi seguenti si applicano all'intero ciclo di vita dei dati:

  • L'integrazione dei dati include servizi come Data Fusion.
  • Gestione e governance dei metadati include servizi come Data Catalog.
  • La gestione del flusso di lavoro include servizi come Cloud Composer.

Importazione dati

Applica al tuo ambiente le seguenti best practice per l'importazione dati.

Determina l'origine per l'importazione dei dati

I dati in genere provengono da un altro cloud provider o servizio oppure da una località on-premise:

Valuta come vuoi elaborare i tuoi dati dopo averli importati. Ad esempio, Storage Transfer Service scrive dati solo in un bucket Cloud Storage e BigQuery Data Transfer Service scrive i dati solo in un set di dati BigQuery. Cloud Data Fusion supporta più destinazioni.

Identifica le origini dati in flussi o batch

Valuta come utilizzare i dati e identifica i casi d'uso in flussi o in batch. Ad esempio, se esegui un servizio di flussi di dati globale con requisiti di bassa latenza, puoi utilizzare Pub/Sub. Se hai bisogno dei dati per l'analisi e la generazione di report, puoi trasmettere flussi di dati in BigQuery.

Se devi trasmettere flussi di dati da un sistema come Apache Kafka in un ambiente on-premise o in un altro ambiente cloud, utilizza il modello Dataflow da Kafka a BigQuery. Per i carichi di lavoro batch, il primo passo solitamente consiste nell'importare i dati in Cloud Storage. Utilizza lo strumento gsutil o Storage Transfer Service per importare i dati.

Importa i data con strumenti automatizzati

Lo spostamento manuale dei dati da altri sistemi al cloud può rappresentare una sfida. Se possibile, utilizza strumenti che consentono di automatizzare i processi di importazione dati. Ad esempio, Cloud Data Fusion fornisce connettori e plug-in per importare i dati da origini esterne mediante una GUI di trascinamento. Se i tuoi team vogliono scrivere del codice, Data Flow o BigQuery possono aiutarti ad automatizzare limportazione dati. Pub/Sub può aiutare sia con un approccio low-code che con un approccio code-first. Per importare i dati nei bucket di archiviazione, utilizza gsutil per dimensioni dei dati fino a 1 TB. Per importare quantità di dati superiori a 1 TB, utilizza Storage Transfer Service.

Usa gli strumenti di migrazione per importare da un altro data warehouse

Se devi eseguire la migrazione da un altro sistema di data warehouse, come Teradata, Netezza o Redshift, puoi utilizzare l'assistenza per la migrazione di BigQuery Data Transfer Service. BigQuery Data Transfer Service fornisce anche trasferimenti di terze parti che consentono di importare i dati in base a una pianificazione da origini esterne. Per ulteriori informazioni, consulta gli approcci dettagliati alla migrazione per ogni data warehouse.

Stima le tue esigenze di importazione di dati

Il volume di dati che devi importare ti aiuta a determinare quale servizio utilizzare nella progettazione del sistema. Per l'importazione di dati in modalità flusso, Pub/Sub scala fino a decine di gigabyte al secondo. I requisiti di capacità, archiviazione e regione per i tuoi dati ti aiutano a determinare se Pub/Sub Lite è un'opzione migliore per la progettazione del tuo sistema. Per ulteriori informazioni, consulta Scegliere Pub/Sub o Pub/Sub Lite.

Per l'importazione in batch di dati, stima la quantità totale di dati da trasferire e la velocità desiderata. Esamina le opzioni di migrazione disponibili, tra cui una stima in tempo e il confronto tra trasferimenti online e offline.

Usa gli strumenti adeguati per l'importazione regolare di dati in base a una pianificazione

Storage Transfer Service e BigQuery Data Transfer Service consentono entrambi di pianificare i job di importazione. Per un controllo granulare dei tempi di importazione o del sistema di origine e di destinazione, utilizza un sistema di gestione dei flussi di lavoro come Cloud Composer. Se preferisci un approccio più manuale, puoi utilizzare Cloud Scheduler e Pub/Sub per attivare una funzione Cloud Functions.
Se vuoi gestire l'infrastruttura di computing, puoi utilizzare il comando gsutil con cron per un trasferimento di dati fino a 1 TB. Se utilizzi questo approccio manuale anziché Cloud Composer, segui le best practice per lo script di trasferimenti di produzione.

Esamina le esigenze di importazione di dati da server FTP/SFTP

Se hai bisogno di un ambiente senza codice per importare i dati da un server FTP/SFTP, puoi utilizzare i plug-in per la copia FTP. Se vuoi modernizzare e creare una soluzione di flusso di lavoro a lungo termine, Cloud Composer è un servizio completamente gestito che consente di leggere e scrivere da varie origini e sink.

Usa connettori Apache Kafka per importare i dati

Se utilizzi Pub/Sub, Dataflow o BigQuery, puoi importare i dati utilizzando uno dei connettori Apache Kafka. Ad esempio, il connettore open source Kafka per Pub/Sub consente di importare i dati da Pub/Sub o Pub/Sub Lite.

Risorse aggiuntive

Archiviazione dei dati

Applica le seguenti best practice per l'archiviazione dei dati al tuo ambiente.

Scegli il datastore appropriato per le tue esigenze

Per scegliere il tipo di soluzione di archiviazione da utilizzare, esamina e comprendi l'utilizzo dei dati downstream. I seguenti casi d'uso comuni per i tuoi dati forniscono suggerimenti sul prodotto Google Cloud da utilizzare:

Caso d'uso dei dati Consiglio sul prodotto
Basato su file Filestore
Basato sugli oggetti Cloud Storage
Bassa latenza Bigtable
Serie temporale Bigtable
Cache online Memorystore
Elaborazione delle transazioni Cloud SQL
Business intelligence (BI) e analisi BigQuery
Elaborazione dei dati in modalità batch Cloud Storage

Bigtable se i dati in entrata sono serie temporali e hai bisogno dell'accesso a bassa latenza.

BigQuery se utilizzi SQL.

Esamina le tue esigenze di struttura dei dati

Per la maggior parte dei dati non strutturati, come documenti e file di testo, file audio e video o log, l'archiviazione basata su oggetti è la scelta più adatta. Puoi quindi caricare ed elaborare i dati dall'archiviazione di oggetti quando ne hai bisogno.

Per i dati semistrutturati, come XML o JSON, i tuoi casi d'uso e i pattern di accesso ai dati guidano la tua scelta. Puoi caricare questi set di dati in BigQuery per il rilevamento automatico dello schema. Se hai requisiti di bassa latenza, puoi caricare i tuoi dati JSON in Bigtable. Se hai requisiti legacy o se le tue applicazioni funzionano con database relazionali, puoi anche caricare i set di dati in un archivio relazioni.

Per i dati strutturati, ad esempio CSV, Parquet, Avro o ORC, puoi utilizzare BigQuery se hai requisiti di BI e analisi che utilizzano SQL. Per ulteriori informazioni, consulta Come caricare i dati in batch. Se vuoi creare un data lake su tecnologie e standard aperti, puoi utilizzare Cloud Storage.

Esegui la migrazione dei dati e riduci i costi per HDFS

Cerca modi per spostare i dati HDFS (Distributed File System) Hadoop da on-premise o da un altro cloud provider a un sistema di archiviazione di oggetti più economico. Cloud Storage è la scelta più comune adottata dalle aziende come datastore alternativo. Per informazioni sui vantaggi e sugli svantaggi di questa scelta, consulta Confronto tra HDFS e Cloud Storage.

Puoi trasferire i dati con un metodo push o pull. Entrambi i metodi utilizzano il comando hadoop distcp. Per ulteriori informazioni, consulta Migrazione dei dati HDFS da on-premise a Google Cloud.

Puoi anche utilizzare il connettore Cloud Storage open source per consentire ai job Hadoop e Spark di accedere ai dati in Cloud Storage. Il connettore è installato per impostazione predefinita sui cluster Dataproc e può essere installato manualmente su altri cluster.

Usa l'archiviazione a oggetti per creare un data lake coerente

Un data lake è un repository centralizzato progettato per archiviare, elaborare e proteggere grandi quantità di dati strutturati, semistrutturati e non strutturati. Puoi utilizzare Cloud Composer e Cloud Data Fusion per creare un data lake.

Per creare una piattaforma dati moderna, puoi utilizzare BigQuery come origine dati centrale anziché Cloud Storage. BigQuery è un data warehouse moderno con separazione tra archiviazione e computing. Un data lake basato su BigQuery consente di eseguire analisi tradizionali da BigQuery nella console Cloud. Consente inoltre di accedere ai dati archiviati da altri framework come Apache Spark.

Risorse aggiuntive

Elabora e trasforma i dati

Applica le seguenti best practice per l'analisi dei dati al tuo ambiente quando elabori e trasformi i dati.

Esplora i software open source che puoi utilizzare in Google Cloud

Molti servizi Google Cloud utilizzano software open source per semplificare la transizione. Google Cloud offre soluzioni gestite e serverless con API aperte e compatibili con framework open source per ridurre i vincoli al fornitore.

Dataproc è un servizio gestito compatibile con Hadoop che ti consente di ospitare software open source con un carico operativo minimo. Dataproc include il supporto per Spark, Hive, Pig, Presto e Zookeeper. Fornisce inoltre Hive Metastore come servizio gestito per essere rimosso come single point of failure nell'ecosistema Hadoop.

Puoi eseguire la migrazione a Dataflow se attualmente utilizzi Apache Beam come motore di elaborazione dei flussi e dei batch. Dataflow è un servizio completamente gestito e serverless che utilizza Apache Beam. Usa Dataflow per scrivere job in Beam, ma lascia che Google Cloud gestisca l'ambiente di esecuzione.

Se utilizzi CDAP come piattaforma di integrazione dei dati, puoi eseguire la migrazione a Cloud Data Fusion per un'esperienza completamente gestita.

Determina le tue esigenze di elaborazione dei dati ETL o ELT

L'esperienza e le preferenze del tuo team aiutano a determinare la progettazione del sistema per l'elaborazione dei dati. Google Cloud consente di utilizzare sistemi di elaborazione dei dati ETL tradizionali o ELT più moderni.

Utilizza il framework appropriato per il tuo caso d'uso dei dati

I casi d'uso dei dati determinano quali strumenti e framework usare. Alcuni prodotti Google Cloud sono progettati per gestire tutti i seguenti casi d'uso dei dati, mentre altri supportano al meglio un solo caso d'uso particolare.

  • Per un sistema di elaborazione dati batch, puoi elaborare e trasformare i dati in BigQuery con un'interfaccia SQL familiare. Se hai una pipeline esistente in esecuzione su Apache Hadoop o Spark on-premise o in un altro cloud pubblico, puoi utilizzare Dataproc.
    • Puoi usare Dataflow se vuoi un'interfaccia di programmazione unificata per casi d'uso in batch e in flussi. Ti consigliamo di modernizzare e utilizzare Dataflow per ETL e BigQuery per ELT.
  • Per le pipeline di dati di flussi di dati, utilizzi un servizio gestito e serverless come Dataflow che fornisce windowing, scalabilità automatica e modelli. Per ulteriori informazioni, consulta Creazione di pipeline di dati pronte per la produzione con Dataflow.

  • Per casi d'uso in tempo reale, come l'analisi di serie temporali o l'analisi di video in streaming, utilizza Dataflow.

Mantieni il controllo futuro sul tuo motore di esecuzione

Per ridurre al minimo i vincoli al fornitore e poter utilizzare una piattaforma diversa in futuro, utilizza il modello di programmazione Apache Beam e Dataflow come soluzione serverless gestita. Il modello di programmazione Beam ti consente di modificare il motore di esecuzione sottostante, ad esempio passando da Dataflow ad Apache Flink o Apache Spark.

Usa Dataflow per importare dati da più origini

Per importare dati da più origini, ad esempio Pub/Sub, Cloud Storage, HDFS, S3 o Kafka, utilizza Dataflow. Dataflow è un servizio serverless gestito che supporta i modelli Dataflow, che consente ai tuoi team di eseguire i modelli da diversi strumenti.

Dataflow Prime fornisce scalabilità automatica orizzontale e verticale delle macchine utilizzate nel processo di esecuzione di una pipeline. Fornisce inoltre diagnostica e consigli intelligenti per identificare i problemi e suggerire come risolverli.

Scopri, identifica e proteggi i dati sensibili

Utilizza Sensitive Data Protection per ispezionare e trasformare dati strutturati e non strutturati. Sensitive Data Protection funziona per i dati che si trovano ovunque in Google Cloud, ad esempio in Cloud Storage o nei database. Puoi classificare, mascherare e tokenizzare i dati sensibili per continuare a utilizzarli in modo sicuro per l'elaborazione downstream. Utilizza Sensitive Data Protection per eseguire azioni come scansionare i dati BigQuery o anonimizzare e reidentificare le PII in set di dati su larga scala.

Modernizza i tuoi processi di trasformazione dei dati

Utilizza Dataform per scrivere trasformazioni dei dati come codice e per iniziare a utilizzare il controllo della versione per impostazione predefinita. Puoi anche adottare best practice per lo sviluppo di software come CI/CD, test delle unità e controllo della versione al codice SQL. Dataform supporta tutti i principali prodotti e database di data warehouse su cloud, come PostgreSQL.

Risorse aggiuntive

Analisi dei dati e data warehouse

Applica le seguenti best practice per l'analisi dei dati e il data warehouse al tuo ambiente.

Verifica le tue esigenze di archiviazione dei dati

Data lake e data warehouse non si escludono a vicenda. I data lake sono utili per l'archiviazione e l'elaborazione di dati non strutturati e semi-strutturati. I data warehouse sono ideali per l'analisi e la BI.

Rivedi le tue esigenze di dati per determinare dove archiviare i tuoi dati e quale prodotto Google Cloud è il più appropriato per elaborare e analizzare i tuoi dati. Prodotti come BigQuery possono elaborare PB di dati e crescere di pari passo con le tue esigenze.

Identifica le opportunità per la migrazione da un data warehouse tradizionale a BigQuery

Esamina i data warehouse tradizionali attualmente in uso nel tuo ambiente. Per ridurre la complessità e potenzialmente ridurre i costi, identifica le opportunità per eseguire la migrazione dei tuoi data warehouse tradizionali a un servizio Google Cloud come BigQuery. Per ulteriori informazioni e scenari di esempio, consulta Migrazione dei data warehouse a BigQuery.

Pianifica l'accesso federato ai dati

Esamina i requisiti relativi ai dati e come potresti avere bisogno di interagire con altri prodotti e servizi. Identifica le tue esigenze di federazione dei dati e crea una progettazione del sistema appropriata.

Ad esempio, BigQuery consente di definire tabelle esterne in grado di leggere i dati da altre origini, come Bigtable, Cloud SQL, Cloud Storage o Google Drive. Puoi unire queste origini esterne con tabelle archiviate in BigQuery.

Usa gli slot flessibili di BigQuery per fornire capacità burst on demand

A volte hai bisogno di capacità aggiuntiva per eseguire analisi sperimentali o esplorative che richiedono molte risorse di calcolo. BigQuery consente di ottenere capacità di calcolo aggiuntiva sotto forma di slot flessibili. Questi slot flessibili sono utili quando c'è un periodo di domanda elevata o quando vuoi completare un'analisi importante.

Comprendi le differenze nello schema se esegui la migrazione a BigQuery

BigQuery supporta gli schemi star e snowflake, ma per impostazione predefinita utilizza campi nidificati e ripetuti. I campi nidificati e ripetuti possono essere più facili da leggere e correlare rispetto ad altri schemi. Se i dati sono rappresentati in uno schema a stella o a fiocco di neve e vuoi eseguire la migrazione a BigQuery, rivedi la progettazione del tuo sistema per individuare eventuali modifiche necessarie a processi o analisi.

Risorse aggiuntive

Report e visualizzazione

Applica le seguenti best practice per la generazione di report e la visualizzazione al tuo ambiente.

Usa BigQuery BI Engine per visualizzare i tuoi dati

BigQuery BI Engine è un servizio di analisi in memoria rapido. Puoi utilizzare BI Engine per analizzare i dati archiviati in BigQuery con tempi di risposta alle query di frazioni di secondo e con elevata contemporaneità. BI Engine è integrato nell'API BigQuery. Utilizza la capacità di BI Engine prenotata per gestire i prezzi on demand o a costo fisso in base alle tue esigenze. BI Engine può inoltre funzionare con altre applicazioni BI o dashboard personalizzate che richiedono tempi di risposta inferiori al secondo.

Modernizza i tuoi processi di BI con Looker

Looker è una moderna piattaforma aziendale per BI, applicazioni di dati e analisi incorporate. Puoi creare modelli di dati coerenti in base ai tuoi dati in modo rapido e preciso e puoi accedere ai dati all'interno dei datastore transazionali e analitici. Looker può anche analizzare i tuoi dati su più database e cloud. Se disponi di strumenti e processi BI esistenti, ti consigliamo di modernizzare e utilizzare una piattaforma centrale come Looker.

Risorse aggiuntive

Usa strumenti di gestione del flusso di lavoro

L'analisi dei dati coinvolge molti processi e servizi. Durante il ciclo di vita dell'analisi dei dati, i dati si spostano in diversi strumenti e pipeline di elaborazione. Per gestire e mantenere pipeline di dati end-to-end, utilizza strumenti di gestione del flusso di lavoro appropriati. Cloud Composer è uno strumento di gestione del flusso di lavoro completamente gestito basato sul progetto open source Apache Airflow.

Puoi utilizzare Cloud Composer per avviare pipeline Dataflow e per utilizzare i modelli di flusso di lavoro Dataproc. Cloud Composer può anche aiutarti a creare una pipeline CI/CD per testare, sincronizzare ed eseguire il deployment dei DAG o utilizzare una pipeline CI/CD per i flussi di lavoro di elaborazione dati. Per ulteriori informazioni, guarda il video Cloud Composer: best practice per lo sviluppo.

Risorse di migrazione

Se esegui già una piattaforma di analisi dei dati e vuoi eseguire la migrazione di alcuni o tutti i carichi di lavoro in Google Cloud, esamina le seguenti risorse di migrazione per trovare best practice e indicazioni:

Passaggi successivi

Scopri le best practice di progettazione dei sistemi per l'IA e il machine learning di Google Cloud, tra cui:

Esplora altre categorie nel framework dell'architettura come affidabilità, eccellenza operativa e sicurezza, privacy e conformità.