Derivazione dei dati Spark

Panoramica

La derivazione dei dati è una funzionalità Dataplex che consente di monitorare come si spostano i dati nei sistemi: da dove provengono, dove vengono trasmessi, e le trasformazioni applicate.

Dopo aver abilitato la derivazione dei dati, Dataproc Serverless per i carichi di lavoro Spark acquisisce gli eventi di derivazione e li pubblica in Dataplex API Data Lineage. Dataproc Serverless per Spark si integra con l'API Data Lineage tramite OpenLineage, utilizzando il plug-in OpenLineage Spark.

Puoi accedere alle informazioni di derivazione tramite Dataplex, utilizzando Grafici di visualizzazione delle derivazioni e l'API Data Lineage. Per saperne di più, consulta Visualizzare i grafici della derivazione in Dataplex.

Disponibilità, funzionalità e limitazioni

Derivazione dei dati Spark, che include BigQuery. e Cloud Storage ed origini dati, è disponibile per carichi di lavoro eseguiti versioni di runtime Dataproc serverless per Spark supportate con le seguenti eccezioni e limitazioni:

  • La derivazione dei dati Spark non è fornita per:
    • Carichi di lavoro della versione 1.2 del runtime Spark di Dataproc Serverless
    • Carichi di lavoro Spark in modalità flusso
    • Connettore BigQuery versione 2 (API Spark Data Source 2)

Prima di iniziare

  1. Nella pagina del selettore progetti della console Google Cloud, seleziona il progetto da utilizzare per i carichi di lavoro Dataproc Serverless per Spark.

    Vai al selettore progetti

  2. Abilita le API Data Lineage e Data Catalog.

    Abilita le API

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per utilizzare la derivazione dei dati in Dataproc Serverless per Spark, chiedi all'amministratore di concederti seguenti ruoli IAM sull'account di servizio VM del cluster Dataproc:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.

Abilita la derivazione dei dati per un carico di lavoro batch Spark

Puoi abilitare la derivazione dei dati Spark per un carico di lavoro batch impostando la proprietà spark.dataproc.lineage.enabled su true quando invia il carico di lavoro,

Esempio di Google Cloud CLI:

gcloud dataproc batches submit pyspark FILENAME.py
    --region=REGION \
    --version=1.1 \
    --properties=spark.dataproc.lineage.enabled=true \
    other args ...

Visualizza i grafici di derivazione in Dataplex

Un grafico di visualizzazione della derivazione mostra le relazioni tra il progetto le risorse e i processi che le hanno create. Puoi visualizzare la derivazione dei dati informazioni in un visualizzazione grafico nella console Google Cloud recupera le informazioni API Data Lineage come dati JSON.

Per ulteriori informazioni, vedi Utilizzare la derivazione dei dati con i sistemi di Google Cloud .

Esempio:

Il seguente carico di lavoro Spark legge i dati da un ambiente BigQuery e scrive l'output in un'altra tabella BigQuery.

#!/usr/bin/env python

from pyspark.sql import SparkSession
import sys

spark = SparkSession \
  .builder \
  .appName('LINEAGE_BQ_TO_BQ') \
  .getOrCreate()

bucket = lineage-ol-test
spark.conf.set('temporaryGcsBucket', bucket)

source = sample.source
words = spark.read.format('bigquery') \
  .option('table', source) \
  .load()
words.createOrReplaceTempView('words')

word_count = spark.sql('SELECT word, SUM(word_count) AS word_count FROM words GROUP BY word')

destination = sample.destination
word_count.write.format('bigquery') \
  .option('table', destination) \
  .save()

Questo carico di lavoro Spark crea il seguente grafico della struttura nella UI di Dataplex:

Esempio di grafico di derivazione

Passaggi successivi