1. Introduzione
Immagina di poter preparare i dati per l'analisi in modo più rapido ed efficiente senza dover essere un esperto di programmazione. Con la preparazione dei dati di BigQuery, tutto questo è realtà. Questa potente funzionalità semplifica l'importazione, la trasformazione e la pulizia dei dati, mettendo la preparazione dei dati nelle mani di tutti i professionisti dei dati della tua organizzazione.
Vuoi scoprire i segreti nascosti nei dati di prodotto?
Prerequisiti
- Una conoscenza di base di Google Cloud Console
- Una conoscenza di base di SQL
Cosa imparerai a fare
- In che modo la preparazione dei dati BigQuery può pulire e trasformare i dati non elaborati in business intelligence strategica, utilizzando un esempio realistico del settore della moda e della bellezza.
- Come eseguire e pianificare la preparazione dei 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 autonomo
- 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 a questo progetto. È una stringa di caratteri non utilizzata dalle API di Google. Puoi sempre aggiornarlo.
- L'ID progetto è univoco in tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo l'impostazione). La console Cloud genera automaticamente una stringa univoca, di solito non ti interessa di cosa si tratta. Nella maggior parte dei codelab, dovrai fare riferimento all'ID progetto (in genere identificato come
PROJECT_ID). Se l'ID generato non ti piace, puoi generarne un altro casuale. In alternativa, puoi provare a crearne uno e vedere se è disponibile. Non può essere modificato dopo questo passaggio e rimane per tutta la durata del progetto. - Per tua informazione, esiste un terzo valore, un numero di progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
- Successivamente, devi abilitare la fatturazione in Cloud Console per utilizzare le risorse/API Cloud. Completare questo codelab non costa molto, se non nulla. Per arrestare le risorse ed evitare addebiti oltre a quelli previsti in questo tutorial, puoi eliminare le risorse che hai creato o il progetto. I nuovi utenti di Google Cloud possono beneficiare del programma prova senza costi di 300$.
3. Prima di iniziare
Abilita l'API
Per usare Gemini in BigQuery, devi abilitare l'API Gemini for Google Cloud. In genere, questo passaggio viene eseguito da un amministratore dei servizi o dal Project Owner con l'autorizzazione IAM serviceusage.services.enable.
- Per abilitare l'API Gemini for Google Cloud, vai alla pagina Gemini for Google Cloud in Google Cloud Marketplace. Vai a Gemini in 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 ruoli e autorizzazioni per sviluppare preparazioni dei dati
- In IAM e amministrazione, seleziona IAM.

- Seleziona l'utente e fai clic sull'icona a forma di matita per "Modifica principal".

Per utilizzare BigQuery Data Preparation, devi disporre dei seguenti ruoli e autorizzazioni:
- Editor dati BigQuery (roles/bigquery.dataEditor)
- Consumer utilizzo dei servizi (roles/serviceusage.serviceUsageConsumer)
4. Trovare e abbonarsi alla scheda "bq data preparation demo" 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 i dati.
La preparazione dei dati non scrive mai di nuovo nell'origine e ti chiederemo di definire una tabella di destinazione in cui scrivere. La tabella con cui lavoreremo per questo esercizio ha solo 1000 righe per ridurre al minimo i costi,ma la preparazione dei dati viene eseguita su BigQuery e verrà scalata di conseguenza.
Per trovare e abbonarti 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" nella sezione "Governance".

- Cerca la scheda: nell'interfaccia utente di Analytics Hub, fai clic su Cerca schede."
- Digita
bq data preparation demonella barra di ricerca e premi Invio.

- Iscriviti alla scheda: seleziona la scheda
bq data preparation demodai risultati di ricerca. - Nella pagina dei dettagli della scheda, fai clic sul pulsante Iscriviti.
- Esamina le finestre di dialogo di conferma e aggiorna il progetto/dataset, se necessario. I valori predefiniti dovrebbero essere corretti.

- Accedi al set di dati in BigQuery: una volta eseguita 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 individua il set di dati incluso nell'elenco
bq data preparation demo. Seleziona la tabellastg_product. - Apri in Data Preparation: fai clic sui tre puntini verticali accanto al nome della tabella e seleziona
Open in Data Preparation.
Si aprirà la tabella nell'interfaccia di preparazione dei dati, pronta per iniziare a trasformare i dati.

Come puoi vedere nell'anteprima dei dati riportata di seguito, abbiamo alcune sfide da affrontare, tra cui:
- La colonna Prezzo contiene sia l'importo che la valuta, il che rende difficile l'analisi.
- La colonna 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 che ci servono.

6. Gestione della colonna Prezzo
Analizziamo la colonna Prezzo. Come abbiamo visto, contiene sia la valuta che l'importo. Il nostro obiettivo è separare questi valori in due colonne distinte:Valuta e Importo.
Gemini ha identificato diversi consigli per la colonna Prezzo.
- Trova un consiglio che dica qualcosa di simile a:
Descrizione: "Questa espressione rimuove "USD " dal campo specificato"
REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
- Seleziona Anteprima.

- Seleziona Applica
Successivamente, per la colonna Price, converti il tipo di dati da STRING a NUMERIC.
- Trova un consiglio che dica qualcosa di simile a:
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 Prodotto contiene sia il nome che la categoria del prodotto, separati da una barra verticale (|).
Anche se potremmo usare di nuovo il linguaggio naturale, esploriamo un'altra delle potenti funzionalità di Gemini.
Pulisci il nome del prodotto
- Seleziona la parte della categoria di una voce di 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 suggerimento di Gemini è perfetto: rimuove tutto ciò che segue il carattere "|", isolando di fatto 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, chiederemo 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 Stepper aggiungere un nuovo passaggio di trasformazione.

- Seleziona
Transformationdal menu a discesa. - Nel campo del prompt in linguaggio naturale, inserisci "extract the word after the pipe (|) in the Product column." (estrai la parola dopo la barra verticale (|) nella colonna Prodotto), quindi premi Invio per generare l'SQL.

- Lascia la colonna Target impostata su "Prodotto".
- Fai clic su Applica.
La trasformazione dovrebbe restituire i seguenti risultati.

8. Unione per arricchire i dati
Spesso, è utile arricchire i dati con informazioni provenienti da altre origini. Nel nostro esempio, uniremo i dati di prodotto agli attributi di prodotto estesi, stg_extended_product, da 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 e ha qualificato i lati sinistro e destro, poiché il nome della chiave è identico.
Nota: assicurati che nel campo Descrizione sia presente la dicitura "Join by productid". Se include chiavi di join aggiuntive, sovrascrivi il campo della descrizione con "Join by productid" e seleziona il pulsante di generazione 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
L'unione è stata eseguita correttamente, ma i dati degli attributi estesi richiedono una pulizia. La colonna LaunchDate ha formati di data incoerenti e la colonna Brand contiene alcuni valori mancanti.
Inizieremo esaminando la colonna LaunchDate.

Prima di creare trasformazioni, controlla i suggerimenti di Gemini.
- Fai clic sul nome della colonna
LaunchDate. Dovresti visualizzare alcuni consigli generati simili a quelli nell'immagine qui sotto.

- Se vedi 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 all'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 ColumnssuLaunchDate. - Fai clic su
Apply.
La colonna LaunchDate ora ha un formato di 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 nel nostro data warehouse.
- Fai clic su
ADD STEP. - Seleziona
Destination. - Compila i parametri richiesti: Set di dati:
bq_data_preparation_demoTabella: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 visivamente la sequenza di passaggi di trasformazione nella pipeline.

10. Bonus A: gestione della colonna Produttore e creazione della tabella degli errori
Abbiamo anche identificato valori vuoti nella colonna Manufacturer. Per questi record, vogliamo implementare un controllo della qualità dei dati e spostarli in una tabella degli errori per un'ulteriore revisione.
Creare una tabella degli errori
- Fai clic sul pulsante
Moreaccanto al titolo distg_product data preparation. - Nella sezione
Setting, selezionaError Table. - Seleziona la casella
Enable error tablee configura le impostazioni nel seguente modo:
- 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.

Configura la convalida nella colonna Produttore
- Seleziona la colonna Produttore.
- Gemini avrà probabilmente identificato una trasformazione pertinente. Trova il suggerimento che mantiene solo le righe in cui il campo Produttore non è vuoto. Avrà un SQL simile a:
Manufacturer IS NOT NULL
2.Fai clic sul pulsante "Modifica" di questo consiglio per esaminarlo.

- Se non è selezionata, seleziona l'opzione "Le righe di convalida con errori vengono inviate alla tabella degli errori"
- Fai clic su
Apply.
In qualsiasi momento, puoi rivedere, modificare o eliminare le trasformazioni che hai applicato facendo clic sul pulsante "Passaggi applicati".

Pulire la colonna ridondante ProductID_1
La colonna ProductID_1, che duplica ProductID della tabella unita, può ora essere eliminata.
- Vai alla scheda
Schema - Fai clic sui tre puntini accanto alla colonna
ProductID_1. - Fai clic su
Drop.
Ora siamo pronti per eseguire il job di preparazione dei dati e convalidare l'intera pipeline. Una volta soddisfatti dei risultati, 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. Pulizia dell'ambiente
- Elimina
stg_product data preparation - Elimina il set di dati
bq data preparation demo
12. Complimenti
Congratulazioni per aver completato il codelab.
Argomenti trattati
- Configurazione della preparazione dei dati
- Apertura delle tabelle e navigazione nella preparazione dei dati
- Suddivisione delle colonne con dati numerici e descrittori di unità
- Standardizzazione dei formati di data
- Esecuzione delle preparazioni dei dati