Informazioni su questo codelab
1. Introduzione
Immagina di poter preparare i dati per l'analisi più velocemente e in modo più efficiente senza dover essere un esperto di programmazione. Con BigQuery Data Preparation, questo è possibile. Questa potente funzionalità semplifica l'importazione, la trasformazione e la pulizia dei dati, mettendo la preparazione dei dati a disposizione di tutti gli esperti di dati della tua organizzazione.
Vuoi scoprire i segreti nascosti nei tuoi dati di prodotto?
Prerequisiti
- Conoscenza di base della console Google Cloud
- Conoscenza di base di SQL
Cosa imparerai a fare
- In che modo la preparazione dei dati di BigQuery può pulire e trasformare i dati non elaborati in informazioni strategiche utili, utilizzando un esempio realistico del settore della moda e della bellezza.
- Come eseguire e pianificare la preparazione dei dati per i dati puliti
Che cosa ti serve
- Un account Google Cloud e un progetto Google Cloud
- Un browser web come Chrome
2. Configurazione di base e requisiti
Configurazione dell'ambiente a tuo ritmo
- Accedi alla console Google Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.
- Il nome del progetto è il nome visualizzato per i partecipanti al progetto. Si tratta di una stringa di caratteri non utilizzata dalle API di Google. Puoi sempre aggiornarlo.
- L'ID progetto è univoco per tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo essere stato impostato). La console Cloud genera automaticamente una stringa univoca; di solito non ti interessa quale sia. Nella maggior parte dei codelab, dovrai fare riferimento al tuo ID progetto (in genere identificato come
PROJECT_ID
). Se l'ID generato non ti piace, puoi generarne un altro casuale. In alternativa, puoi provare il tuo e vedere se è disponibile. Non può essere modificato dopo questo passaggio e rimane invariato per tutta la durata del progetto. - Per tua informazione, esiste un terzo valore, un Numero progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
- Successivamente, dovrai abilitare la fatturazione nella console Cloud per utilizzare le API/risorse Cloud. La partecipazione a questo codelab non ha costi, o quasi. Per arrestare le risorse ed evitare di incorrere in fatturazione al termine di questo tutorial, puoi eliminare le risorse che hai creato o il progetto. I nuovi utenti di Google Cloud sono idonei al programma Prova senza costi di 300$.
3. Prima di iniziare
Attiva l'API
Per utilizzare Gemini in BigQuery, devi abilitare l'API Gemini for Google Cloud. In genere, questo passaggio viene eseguito da un amministratore di servizi o dal proprietario di un progetto con l'autorizzazione IAM serviceusage.services.enable
.
- Per abilitare l'API Gemini for Google Cloud, vai alla pagina Gemini for Google Cloud nel marketplace Google Cloud. Vai a Gemini per Google Cloud
- Nel selettore dei progetti, seleziona un progetto.
- Fai clic su Abilita. La pagina si aggiorna e mostra lo stato Attivato. Gemini in BigQuery è ora disponibile nel progetto Google Cloud selezionato per tutti gli utenti che dispongono delle autorizzazioni IAM richieste.
Configurare i ruoli e le autorizzazioni per sviluppare le preparazioni dei dati
- In IAM e amministrazione, seleziona IAM
- Seleziona il tuo utente e fai clic sull'icona a forma di matita per "Modifica entità principale".
Per utilizzare la preparazione dei dati di BigQuery, sono necessari i seguenti ruoli e autorizzazioni:
- Editor dati BigQuery (roles/bigquery.dataEditor)
- Consumer utilizzo dei servizi (roles/serviceusage.serviceUsageConsumer)
4. Trovare e iscriversi alla scheda "Demo di preparazione dei dati bq" in BigQuery Analytics Hub
Per questo tutorial utilizzeremo il set di dati bq data preparation demo
. Si tratta di un set di dati collegato in BigQuery Analytics Hub da cui leggeremo.
La preparazione dei dati non esegue mai la scrittura nella sorgente e ti verrà chiesto di definire una tabella di destinazione in cui scrivere. La tabella con cui lavoreremo per questo esercizio contiene solo 1000 righe per mantenere i costi minimi,ma la preparazione dei dati viene eseguita su BigQuery e verrà scalata di conseguenza.
Per trovare e iscriverti al set di dati collegato:
- Accedi ad Analytics Hub: nella console Google Cloud, vai a BigQuery.
- Nel menu di navigazione di BigQuery, seleziona "Analytics Hub" in "Governance".
- Cerca la scheda: nell'interfaccia utente di Analytics Hub, fai clic su Cerca schede.
- Digita
bq data preparation demo
nella barra di ricerca e premi Invio.
- Iscriviti alla scheda: seleziona la scheda
bq data preparation demo
dai risultati di ricerca. - Nella pagina dei dettagli della scheda, fai clic sul pulsante Iscriviti.
- Esamina le eventuali finestre di dialogo di conferma e aggiorna il progetto/il set di dati, se necessario. I valori predefiniti dovrebbero essere corretti.
- Accedi al set di dati in BigQuery: dopo aver eseguito correttamente la sottoscrizione, i set di dati all'interno della scheda verranno collegati al tuo progetto BigQuery.
Torna a BigQuery Studio.
5. Esplora i dati e avvia la preparazione dei dati
- Individua il set di dati e la tabella: nel riquadro Explorer, seleziona il progetto e poi trova il set di dati incluso nella scheda
bq data preparation demo
. Seleziona la tabellastg_product
. - Apri in Preparazione dati: fai clic sui tre puntini verticali accanto al nome della tabella e seleziona
Open in Data Preparation
.
La tabella si aprirà nell'interfaccia di Data Preparation, pronta per iniziare a trasformare i dati.
Come puoi vedere nell'anteprima dei dati di seguito, abbiamo alcune sfide relative ai dati che affronteremo, tra cui:
- La colonna del prezzo contiene sia l'importo che la valuta, il che rende difficile l'analisi.
- La colonna del prodotto combina il nome e la categoria del prodotto (separati da una barra verticale |).
Gemini analizza immediatamente i dati e suggerisce diverse trasformazioni. In questo esempio, vediamo una serie di consigli. Nei passaggi successivi applicheremo quelli di cui abbiamo bisogno.
6. Gestione della colonna Prezzo
Analizziamo la colonna Prezzo. Come abbiamo visto, contiene sia la valuta che l'importo. Il nostro obiettivo è separarli in due colonne distinte:Valuta e Importo.
Gemini ha identificato diversi consigli per la colonna Prezzo.
- Trova un consiglio simile al seguente:
Descrizione: "Questa espressione rimuove l'indicatore "USD" iniziale dal campo specificato"
REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
- Seleziona Anteprima
- Seleziona Applica
Ora, per la colonna Prezzo, converti il tipo di dati da STRING a NUMERIC.
- Trova un consiglio simile al seguente:
Descrizione: "Converte la colonna Prezzo dal tipo stringa a float64"
SAFE_CAST(Price AS float64)
- Seleziona Applica.
Ora dovresti vedere tre passaggi applicati nell'elenco dei passaggi.
7. Gestione della colonna Prodotto
La colonna del prodotto contiene sia il nome che la categoria del prodotto, separati da una barra verticale (|).
Potremmo usare di nuovo il linguaggio naturale, ma esaminiamo un'altra delle potenti funzionalità di Gemini.
Pulisci il nome del prodotto
- Seleziona la parte della categoria di una voce del prodotto, incluso il carattere
|
, ed eliminala.
Gemini riconoscerà in modo intelligente questo pattern e suggerirà una trasformazione da applicare all'intera colonna.
- Seleziona "Modifica".
Il consiglio di Gemini è perfetto: rimuove tutto ciò che segue il carattere "|", isolando efficacemente il nome del prodotto.
Ma questa volta non vogliamo sovrascrivere i dati originali.
- Nel menu a discesa della colonna di destinazione, seleziona "Crea nuova colonna".
- Imposta il nome su ProductName.
- Visualizza l'anteprima delle modifiche per assicurarti che tutto sia a posto.
- Applica la trasformazione.
Estrarre la categoria di prodotto
Utilizzando il linguaggio naturale, diremo a Gemini di estrarre la parola dopo la barra verticale (|) nella colonna Prodotto. Questo valore estratto verrà sovrascritto nella colonna esistente denominata Prodotto.
- Fai clic su
Add Step
per aggiungere un nuovo passaggio di trasformazione.
- Seleziona
Transformation
dal menu a discesa - Nel campo del prompt in linguaggio naturale, inserisci "estrae la parola dopo la barra verticale (|) nella colonna Prodotto", quindi premi Invio per generare il codice SQL.
- Lascia la colonna di destinazione impostata su "Prodotto".
- Fai clic su Applica.
La trasformazione dovrebbe restituire i seguenti risultati.
8. Unione per arricchire i dati
Spesso è consigliabile arricchire i dati con informazioni provenienti da altre origini. Nel nostro esempio, uniremo i dati di prodotto agli attributi dei prodotti estesi, stg_extended_product
, di una tabella di terze parti. Questa tabella include dettagli come il brand e la data di lancio.
- Fai clic su
Add Step
. - Seleziona
Join
- Vai alla tabella
stg_extended_product
.
Gemini in BigQuery ha scelto automaticamente la chiave di join productid per noi e ha qualificato i lati sinistro e destro poiché il nome della chiave è identico.
Nota: assicurati che il campo della descrizione riporti "Unisci per productid". Se include chiavi di join aggiuntive, sostituisci il campo della descrizione con "Unisci per productid" e seleziona il pulsante Genera nel campo della descrizione per rigenerare l'espressione di join con la seguente condizione L.
productid
= R.
productid
.
- (Facoltativo) Seleziona Anteprima per visualizzare l'anteprima dei risultati.
- Fai clic su
Apply
.
Pulizia degli attributi estesi
Anche se l'unione è andata a buon fine, i dati degli attributi estesi richiedono alcune operazioni di pulizia. La colonna LaunchDate
ha formati di data incoerenti e la colonna Brand
contiene alcuni valori mancanti.
Inizieremo con la colonna LaunchDate
.
Prima di creare qualsiasi trasformazione, controlla i consigli di Gemini.
- Fai clic sul nome della colonna
LaunchDate
. Dovresti vedere alcuni consigli generati simili a quelli nell'immagine di seguito.
- Se visualizzi un consiglio con il seguente SQL, applica il consiglio e salta i passaggi successivi.
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
- Se non vedi un consiglio corrispondente al codice SQL riportato sopra, fai clic su
Add Step
. - Seleziona
Transformation
. - Nel campo SQL, inserisci quanto segue:
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
- Imposta
Target Columns
suLaunchDate
. - Fai clic su
Apply
.
La colonna LaunchDate ora ha un formato data coerente.
9. Aggiunta di una tabella di destinazione
Il nostro set di dati è ora pulito e pronto per essere caricato in una tabella delle dimensioni del nostro data warehouse.
- Fai clic su
ADD STEP
. - Seleziona
Destination
. - Compila i parametri richiesti: Set di dati:
bq_data_preparation_demo
Tabella:DimProduct
- Fai clic su
Save
.
Ora abbiamo lavorato con le schede "Dati" e "Schema". Oltre a queste, BigQuery Data Preparation fornisce una visualizzazione "Grafico" che mostra la sequenza dei passaggi di trasformazione nella pipeline.
10. Aggiornamento A: gestione della colonna Manufacturer e creazione della tabella Error
Abbiamo anche identificato valori vuoti nella colonna Manufacturer
. Per questi record, vogliamo implementare un controllo qualità dei dati e spostarli in una tabella di errori per un'ulteriore revisione.
Creare una tabella degli errori
- Fai clic sul pulsante
More
accanto al titolostg_product data preparation
. - Nella sezione
Setting
, selezionaError Table
. - Seleziona la casella
Enable error table
, configura le impostazioni come segue:
- Set di dati: seleziona
bq_data_preparation_demo
- Tabella: inserisci
err_dataprep
- In
Define duration for keeping errors
, seleziona30 days (default)
- Fai clic su
Save
.
Configurare la convalida nella colonna Produttore
- Seleziona la colonna Produttore.
- Gemini avrà probabilmente identificato una trasformazione pertinente. Trova il consiglio che conserva solo le righe in cui il campo Produttore non è vuoto. Il codice SQL sarà simile al seguente:
Manufacturer IS NOT NULL
2.Fai clic sul pulsante "Modifica" di questo consiglio per esaminarlo.
- Seleziona l'opzione "Le righe di convalida con errori vengono inviate alla tabella degli errori" se non è selezionata
- Fai clic su
Apply
.
In qualsiasi momento puoi rivedere, modificare o eliminare le trasformazioni che hai applicato facendo clic sul pulsante "Passaggi applicati".
Elimina la colonna ProductID_1 ridondante
La colonna ProductID_1, che duplica ProductID dalla tabella unita, ora può essere eliminata.
- Vai alla scheda
Schema
- Fai clic sui tre puntini accanto alla colonna
ProductID_1
. - Fai clic su
Drop
.
Ora è tutto pronto per eseguire il job di preparazione dei dati e convalidare l'intera pipeline. Una volta ottenuti risultati soddisfacenti, possiamo pianificare l'esecuzione automatica del job.
- Prima di uscire dalla visualizzazione di preparazione dei dati, salva le preparazioni. Accanto al titolo
stg_product data preparation
, dovresti vedere un pulsanteSave
. Fai clic sul pulsante per salvare.
11. Ripulire l'ambiente
- Elimina
stg_product data preparation
- Elimina il set di dati
bq data preparation demo
12. Complimenti
Complimenti per aver completato il codelab.
Argomenti trattati
- Configurazione della preparazione dei dati
- Aprire tabelle e navigare nella preparazione dei dati
- Suddivisione delle colonne con dati numerici e descrittori delle unità
- Standardizzazione dei formati della data
- Esecuzione delle preparazioni dei dati