Spark-Data-Lineage

Überblick

Datenherkunft ist eine Dataplex-Funktion, mit der Sie verfolgen können, wie Daten sich durch Ihre Systeme bewegen: woher sie kommen, wohin sie übergeben werden und welche Transformationen auf sie angewendet werden.

Nachdem Sie Data Lineage aktiviert haben, erfassen Dataproc Serverless für Spark-Arbeitslasten Herkunftsereignisse und veröffentlichen sie in der Data Lineage API von Dataplex. Dataproc Serverless for Spark kann über OpenLineage mit dem OpenLineage Spark-Plug-in in die Data Lineage API eingebunden werden.

Sie können über Dataplex mithilfe von Lineage-Visualisierungsgrafiken und der Data Lineage API auf Herkunftsinformationen zugreifen. Weitere Informationen finden Sie unter Herkunftsdiagramme in Dataplex ansehen.

Verfügbarkeit, Funktionen und Einschränkungen

Data Lineage ist für Dataproc Serverless for Spark 1.x-Laufzeiten ab Laufzeitversion 1.1.50 verfügbar. Sie umfasst die Lineage-Datenquellen BigQuery und Cloud Storage-Datenquellen.

Für Folgendes wird keine Lineage-Unterstützung angeboten:

  • BigQuery-Connector-Version 2 (Version 2 der Spark-Datenquellen-API)
  • Spark-Streamingarbeitslasten

Hinweise

  1. Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl das Projekt aus, das für Ihre Dataproc Serverless for Spark-Arbeitslasten verwendet werden soll.

    Zur Projektauswahl

  2. Aktivieren Sie die Data Lineage API und die Data Catalog APIs.

    APIs aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das VM-Dienstkonto des Dataproc-Clusters zu gewähren, um die Berechtigungen zu erhalten, die Sie für die Verwendung von Data Lineage in Dataproc Serverless for Spark benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Data-Lineage für eine Spark-Batcharbeitslast aktivieren

Sie können Spark Data Lineage für eine Batcharbeitslast aktivieren. Dazu setzen Sie das Attribut spark.dataproc.lineage.enabled auf true, wenn Sie die Arbeitslast senden.

Beispiel für die Google Cloud CLI:

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

Herkunftsdiagramme in Dataplex ansehen

In einem Visualisierungsdiagramm für die Herkunft werden die Beziehungen zwischen Ihren Projektressourcen und den Prozessen, die sie erstellt haben, dargestellt. Sie können die Informationen zur Herkunft von Daten in einer Grafikvisualisierung in der Google Cloud Console ansehen oder die Informationen als JSON-Daten aus der Data Lineage API abrufen.

Weitere Informationen finden Sie unter Data Lineage mit Google Cloud-Systemen verwenden .

Example:

Die folgende Spark-Arbeitslast liest Daten aus einer BigQuery-Tabelle und schreibt die Ausgabe in eine andere BigQuery-Tabelle.

#!/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()

Diese Spark-Arbeitslast erstellt das folgende Herkunftsdiagramm in der Dataplex-UI:

Beispiel für Herkunftsdiagramm

Nächste Schritte