Questo documento mostra come abilitare e utilizzare la derivazione dei dati per i job Hive di Dataproc.
Abiliti la derivazione dei dati per i job Hive di Dataproc utilizzando un'azione di inizializzazione quando crei un cluster.
Quando abiliti la derivazione dei dati Hive su un cluster, i job Hive che invii al cluster acquisiscono gli eventi di derivazione dei dati e li pubblicano nel catalogo universale Dataplex.
Visualizzare le informazioni sulla derivazione
Un grafico di derivazione dei dati mostra le relazioni tra le risorse del progetto e i processi che le hanno create. Puoi accedere ai grafici di derivazione utilizzando il catalogo universale Dataplex, BigQuery Studio e Vertex AI nella Google Cloud console.
Prezzi
La derivazione dei dati Hive di Dataproc viene offerta durante l'anteprima senza costi aggiuntivi. Vengono applicati i prezzi standard di Dataproc.
Prima di iniziare
Nella Google Cloud console, nella pagina di selezione del progetto, seleziona il progetto che contiene il cluster Dataproc di cui vuoi monitorare la derivazione.
Abilita l'API Data Lineage e l'API Dataplex.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per utilizzare la derivazione dei dati in Dataproc, chiedi all'amministratore di concederti i seguenti ruoli IAM nel service account della VM del cluster Dataproc VM service account:
-
Visualizza la derivazione dei dati nel catalogo universale Dataplex o utilizza l'API Data Lineage:
Visualizzatore di derivazione dei dati (
roles/datalineage.viewer) -
Produci manualmente la derivazione dei dati utilizzando l'API:
Produttore di eventi di derivazione dei dati (
roles/datalineage.producer) -
Modifica la derivazione dei dati utilizzando l'API:
Editor di derivazione dei dati (
roles/datalineage.editor) -
Esegui tutte le operazioni sulla derivazione dei dati:
Amministratore di derivazione dei dati (
roles/datalineage.admin)
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Abilitare la derivazione dei dati Hive
Per abilitare la derivazione dei dati Hive su un cluster, specifica l'azione di inizializzazione hive-lineage.sh
quando
crei un cluster Dataproc.
Questa azione di inizializzazione è archiviata nei bucket regionali in Cloud Storage.
Esempio di creazione di cluster con gcloud CLI:
gcloud dataproc clusters create CLUSTER_NAME \
--project PROJECT_ID \
--region REGION \
--image-version IMAGE_VERSION \
--initialization-actions gs://goog-dataproc-initialization-actions-REGION/hive-lineage/hive-lineage.shSostituisci quanto segue:
- CLUSTER_NAME: il nome del cluster.
- PROJECT_ID: l' Google Cloud ID progetto. Gli ID progetto sono elencati nella sezione Informazioni sul progetto su la Google Cloud dashboard della console.
- REGION: la regione Compute Engine in cui si trova il cluster.
- IMAGE_VERSION La versione dell'immagine prevista per il cluster.
--initialization-actions: specifica un'azione di installazione che si trova in una località regionale di Cloud Storage e che abilita la derivazione dei dati Hive.- Facoltativamente, aggiungi l'azione di inizializzazione del connettore Hive-BigQuery. Se vuoi integrare le tabelle BigQuery con i carichi di lavoro Hive, devi installare il connettore Hive-BigQuery sul cluster. Consulta l' esempio di derivazione dei dati Hive con BigQuery, che esegue un'azione di inizializzazione del connettore per installare il connettore Hive-BigQuery sul cluster.
Inviare un job Hive
Quando invii un job Hive a un cluster Dataproc creato con la derivazione dei dati Hive abilitata, Dataproc acquisisce e segnala le informazioni sulla derivazione dei dati al catalogo universale Dataplex.
Esempio di invio di job Hive con gcloud CLI:
gcloud dataproc jobs submit hive \
--cluster=CLUSTER_NAME \
--project PROJECT_ID \
--region REGION \
--properties=hive.openlineage.namespace=CUSTOM_NAMESPACE \
--execute HIVE_QUERYSostituisci quanto segue:
- CLUSTER_NAME: il nome del cluster.
- PROJECT_ID: l' Google Cloud ID progetto. Gli ID progetto sono elencati nella sezione Informazioni sul progetto su la Google Cloud dashboard della console.
- REGION: la regione Compute Engine in cui si trova il cluster.
- CUSTOM_NAMESPACE: uno spazio dei nomi Hive personalizzato facoltativo che puoi specificare per identificare il job Hive.
- HIVE_QUERY: la query Hive da inviare al cluster.
Anziché specificare una query, puoi sostituire il
--execute HIVE_QUERYflag con un--file SQL_FILEflag per specificare la posizione di un file che contiene la query.
Visualizzare la derivazione nel catalogo universale Dataplex
Un grafico di derivazione mostra le relazioni tra le risorse del progetto e i processi che le hanno create. Puoi visualizzare le informazioni sulla derivazione dei dati nella Google Cloud console o recuperarle dall'API Data Lineage sotto forma di dati JSON.
Esempio di derivazione dei dati Hive con BigQuery
L'esempio in questa sezione è composto dai seguenti passaggi:
- Crea un cluster Dataproc con la derivazione dei dati Hive abilitata e il connettore Hive-BigQuery installato sul cluster.
- Esegui una query Hive sul cluster per copiare i dati tra le tabelle Hive.
- Visualizza il grafico di derivazione dei dati generato in BigQuery Studio.
Creare un cluster Dataproc
Esegui il comando seguente in una finestra del terminale locale o in Cloud Shell per creare un cluster Dataproc.
gcloud dataproc clusters create CLUSTER_NAME \ --project PROJECT_ID \ --region REGION \ --image-version IMAGE_VERSION \ --initialization-actions gs://goog-dataproc-initialization-actions-REGION/connectors/connectors.sh, gs://goog-dataproc-initialization-actions-REGION/hive-lineage/hive-lineage.sh \ --metadata hive-bigquery-connector-version=HIVE_BQ_VERSION
Note:
- CLUSTER_NAME: il nome del cluster.
- PROJECT_ID: l' Google Cloud ID progetto. Gli ID progetto sono elencati nella sezione Informazioni sul progetto su la Google Cloud dashboard della console.
- REGION: la regione Compute Engine in cui si trova il cluster.
- IMAGE_VERSION La versione dell'immagine prevista per il cluster.
--initialization-actions: queste azioni di installazione, che si trovano in Cloud Storage, installano il connettore Hive-BigQuery e abilitano la derivazione dei dati Hive.- HIVE_BQ_VERSION: specifica la
versione del connettore Hive-BigQuery.
Il flag
--metadatapassa la versione all'azione di inizializzazioneconnectors.shper installare il connettore Hive-BigQuery sul cluster.
Eseguire una query Hive
Esegui una query Hive per eseguire le seguenti azioni:
- Crea una tabella esterna
us_statescon input di dati di esempio dags://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout. - Crea una tabella gestita
us_states_copynel set di dati BigQuery specificato. - Copia tutti i dati da
us_statesaus_states_copy.
Per eseguire la query:
- In una finestra del terminale locale o in Cloud Shell,
utilizza un editor di testo, ad esempio
vionano, per copiare la seguente istruzione della query Hive in un filehive-example.sql, quindi salva il file nella directory corrente. - Invia il file
hive-example.sqlal cluster Dataproc creato in precedenza sostituendo il flag--execute HIVE_QUERYcon un flag--file SQL_FILEper specificare la posizione del filehive-example.sqlsalvato. Tieni presente che le variabili PROJECT e BQ_DATASET devono essere compilate.
Hive BigQueryStorageHandler
CREATE EXTERNAL TABLE us_states ( name STRING, post_abbr STRING ) STORED AS PARQUET LOCATION 'gs://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout'; CREATE TABLE us_states_copy ( name STRING, post_abbr STRING ) STORED BY 'com.google.cloud.hive.bigquery.connector.BigQueryStorageHandler' TBLPROPERTIES ( 'bq.table'='PROJECT.BQ_DATASET.us_states_copy' ); INSERT INTO us_states_copy SELECT * FROM us_states;
Visualizzare il grafico di derivazione dei dati
Una volta completato correttamente il job Hive, visualizza la derivazione dei dati in BigQuery Studio nella Google Cloud console:
Per informazioni sulla visualizzazione dei grafici in BigQuery Studio, consulta Visualizzare la derivazione in BigQuery. Per informazioni sulla comprensione dei grafici, consulta Modello di informazioni sulla derivazione dei dati.
Passaggi successivi
- Scopri di più sulla derivazione dei dati.