Auf dieser Seite wird beschrieben, wie Sie einen Dataplex Universal Catalog-Scan zur Datenqualität erstellen.
Weitere Informationen zu Datenqualitätsscans finden Sie unter Automatische Datenqualität.
Hinweise
-
Enable the Dataplex API.
- Optional: Wenn Sie möchten, dass Dataplex Universal Catalog Empfehlungen für Datenqualitätsregeln basierend auf den Ergebnissen eines Datenprofilscans generiert, erstellen und führen Sie den Datenprofilscan aus.
Erforderliche Rollen
Wenn Sie einen Datenqualitätsscan für eine BigQuery-Tabelle ausführen möchten, benötigen Sie die Berechtigung zum Lesen der BigQuery-Tabelle und die Berechtigung zum Erstellen eines BigQuery-Jobs in dem Projekt, das zum Scannen der Tabelle verwendet wird.
Wenn sich die BigQuery-Tabelle und der Datenqualitätsscan in verschiedenen Projekten befinden, müssen Sie dem Dataplex Universal Catalog-Dienstkonto des Projekts, das den Datenqualitätsscan enthält, die Leseberechtigung für die entsprechende BigQuery-Tabelle erteilen.
Wenn sich die Datenqualitätsregeln auf zusätzliche Tabellen beziehen, muss das Dienstkonto des Scanprojekts Leseberechtigungen für dieselben Tabellen haben.
Bitten Sie Ihren Administrator, dem Dienstkonto des Dataplex Universal Catalog die IAM-Rolle „BigQuery-Datenbearbeiter“ (
roles/bigquery.dataEditor
) für das Dataset und die Tabelle mit den Ergebnissen zuzuweisen, damit Sie die Berechtigungen erhalten, die Sie zum Exportieren der Scanergebnisse in eine BigQuery-Tabelle benötigen. Dadurch werden die folgenden Berechtigungen gewährt:bigquery.datasets.get
bigquery.tables.create
bigquery.tables.get
bigquery.tables.getData
bigquery.tables.update
bigquery.tables.updateData
Wenn die BigQuery-Daten in einem Dataplex Universal Catalog-Lake organisiert sind, weisen Sie dem Dataplex Universal Catalog-Dienstkonto die IAM-Rollen „Dataplex Metadata Reader“ (
roles/dataplex.metadataReader
) und „Dataplex Viewer“ (roles/dataplex.viewer
) zu. Alternativ benötigen Sie alle der folgenden Berechtigungen:dataplex.lakes.list
dataplex.lakes.get
dataplex.zones.list
dataplex.zones.get
dataplex.entities.list
dataplex.entities.get
dataplex.operations.get
Wenn Sie eine externe BigQuery-Tabelle aus Cloud Storage scannen, weisen Sie dem Dataplex Universal Catalog-Dienstkonto die Rolle „Storage-Objekt-Betrachter“ (
roles/storage.objectViewer
) für den Bucket zu. Alternativ können Sie dem Dataplex Universal Catalog-Dienstkonto die folgenden Berechtigungen zuweisen:storage.buckets.get
storage.objects.get
Wenn Sie die Ergebnisse des Datenqualitätsscans als Metadaten des Dataplex Universal Catalog veröffentlichen möchten, benötigen Sie die IAM-Rolle „BigQuery-Datenbearbeiter“ (
roles/bigquery.dataEditor
) für die Tabelle und die Berechtigungdataplex.entryGroups.useDataQualityScorecardAspect
für die@bigquery
-Eintragsgruppe am selben Ort wie die Tabelle. Alternativ muss Ihnen die Rolle „Dataplex Catalog Editor“ (roles/dataplex.catalogEditor
) für die Eintragsgruppe@bigquery
am selben Standort wie die Tabelle zugewiesen werden.Alternativ benötigen Sie alle der folgenden Berechtigungen:
bigquery.tables.get
– auf dem Tischbigquery.tables.update
– auf dem Tischbigquery.tables.updateData
– auf dem Tischbigquery.tables.delete
– auf dem Tischdataplex.entryGroups.useDataQualityScorecardAspect
– in der Eintragsgruppe@bigquery
Alternativ benötigen Sie alle der folgenden Berechtigungen:
dataplex.entries.update
– in der Eintragsgruppe@bigquery
dataplex.entryGroups.useDataQualityScorecardAspect
– in der Eintragsgruppe@bigquery
Wenn Sie auf Spalten zugreifen müssen, die durch BigQuery-Zugriffsrichtlinien auf Spaltenebene geschützt sind, weisen Sie dem Dataplex Universal Catalog-Dienstkonto Berechtigungen für diese Spalten zu. Der Nutzer, der einen Datenscan erstellt oder aktualisiert, benötigt auch Berechtigungen für die Spalten.
Wenn für eine Tabelle BigQuery-Zugriffsrichtlinien auf Zeilenebene aktiviert sind, können Sie nur Zeilen scannen, die für das Dataplex Universal Catalog-Dienstkonto sichtbar sind. Die Zugriffsberechtigungen des einzelnen Nutzers werden für Richtlinien auf Zeilenebene nicht ausgewertet.
Erforderliche Rollen für die Datenprüfung
Wenn Sie die automatische Datenqualität verwenden möchten, bitten Sie Ihren Administrator, Ihnen eine der folgenden IAM-Rollen zuzuweisen:
- Vollständiger Zugriff auf
DataScan
-Ressourcen: Dataplex-DataScan-Administrator (roles/dataplex.dataScanAdmin
) - So erstellen Sie
DataScan
-Ressourcen: Dataplex DataScan Creator (roles/dataplex.dataScanCreator
) für das Projekt - Schreibzugriff auf
DataScan
-Ressourcen: Dataplex-DataScan-Bearbeiter (roles/dataplex.dataScanEditor
) - Lesezugriff auf
DataScan
-Ressourcen mit Ausnahme von Regeln und Ergebnissen: Dataplex DataScan-Betrachter (roles/dataplex.dataScanViewer
) - Lesezugriff auf
DataScan
-Ressourcen, einschließlich Regeln und Ergebnissen: Dataplex DataScan DataViewer (roles/dataplex.dataScanDataViewer
)
In der folgenden Tabelle sind die DataScan
-Berechtigungen aufgeführt:
Name der Berechtigung | Gewährt die Berechtigung für Folgendes: |
---|---|
dataplex.datascans.create |
DataScan erstellen |
dataplex.datascans.delete |
DataScan löschen |
dataplex.datascans.get |
Betriebsmetadaten wie ID oder Zeitplan ansehen, aber nicht Ergebnisse und Regeln |
dataplex.datascans.getData |
DataScan -Details ansehen, einschließlich Regeln und Ergebnissen |
dataplex.datascans.list |
DataScan s auflisten |
dataplex.datascans.run |
DataScan ausführen |
dataplex.datascans.update |
DataScan -Beschreibung aktualisieren |
dataplex.datascans.getIamPolicy |
Aktuelle IAM-Berechtigungen für den Scan ansehen |
dataplex.datascans.setIamPolicy |
IAM-Berechtigungen für den Scan festlegen |
Regeln für die Datenqualität definieren
Sie können Datenqualitätsregeln mithilfe von integrierten Regeln oder benutzerdefinierten SQL-Prüfungen definieren. Wenn Sie die Google Cloud CLI verwenden, können Sie diese Regeln in einer JSON- oder YAML-Datei definieren.
Die Beispiele in den folgenden Abschnitten zeigen, wie verschiedene Regeln für die Datenqualität definiert werden. Mit den Regeln wird eine Beispielstabelle mit Daten zu Kundentransaktionen validiert. Angenommen, die Tabelle hat das folgende Schema:
Spaltenname | Spaltentyp | Spaltenbeschreibung |
---|---|---|
transaction_timestamp | Zeitstempel | Zeitstempel der Transaktion. Die Tabelle ist nach diesem Feld partitioniert. |
customer_id | String | Eine Kundennummer im Format von 8 Buchstaben gefolgt von 16 Ziffern. |
transaction_id | String | Die Transaktions-ID muss in der Tabelle eindeutig sein. |
currency_id | String | Eine der unterstützten Währungen.Der Währungstyp muss mit einer der verfügbaren Währungen in der Dimensionstabelle dim_currency übereinstimmen.
|
Menge | float | Transaktionsbetrag |
discount_pct | float | Rabattprozentsatz Dieser Wert muss zwischen 0 und 100 liegen. |
Regeln für die Datenqualität mit integrierten Regeltypen definieren
Die folgenden Beispielregeln basieren auf integrierten Regeltypen. Sie können Regeln basierend auf integrierten Regeltypen mit der Google Cloud -Konsole oder der API erstellen. Dataplex Universal Catalog empfiehlt möglicherweise einige dieser Regeln.
Spaltenname | Regeltyp | Vorgeschlagene Dimension | Regelparameter |
---|---|---|---|
transaction_id |
Eindeutigkeitsprüfung | Eindeutigkeit | Threshold: Not Applicable (Grenzwert: 500) |
amount |
NULL-Prüfung | Vollständigkeit | Threshold: 100% (Grenzwert: 500) |
customer_id |
Prüfung mit regulären Ausdrücken (Regex) | Gültigkeit | Regulärer Ausdruck: ^[0-9]{8}[a-zA-Z]{16}$ Schwellenwert: 100%
|
currency_id |
Wertesatzprüfung | Gültigkeit | Gruppe: USD,JPY,INR,GBP,CAN Grenzwert: 100%
|
Regeln für Datenqualität mit benutzerdefinierten SQL-Regeln definieren
Verwenden Sie das folgende Framework, um benutzerdefinierte SQL-Regeln zu erstellen:
Wenn Sie eine Regel erstellen, die jeweils eine Zeile auswertet, erstellen Sie einen Ausdruck, der die Anzahl der erfolgreichen Zeilen generiert, wenn Dataplex Universal Catalog die Abfrage
SELECT COUNTIF(CUSTOM_SQL_EXPRESSION) FROM TABLE
auswertet. Dataplex Universal Catalog vergleicht die Anzahl der erfolgreichen Zeilen mit dem Schwellenwert.Wenn Sie eine Regel erstellen, die zeilenübergreifend ausgewertet wird oder eine Tabellenbedingung verwendet, erstellen Sie einen Ausdruck, der Erfolg oder Fehler zurückgibt, wenn Dataplex Universal Catalog die Abfrage
SELECT IF(CUSTOM_SQL_EXPRESSION) FROM TABLE
auswertet.Wenn Sie eine Regel erstellen, mit der der ungültige Status eines Datasets ausgewertet wird, geben Sie eine Anweisung an, die ungültige Zeilen zurückgibt. Wenn Zeilen zurückgegeben werden, schlägt die Regel fehl. Lassen Sie das abschließende Semikolon in der SQL-Anweisung weg.
Sie können in einer Regel mit dem Datenreferenzparameter
${data()}
auf eine Datenquellentabelle und alle zugehörigen Vorbedingungsfilter verweisen, anstatt die Quellentabelle und ihre Filter explizit zu erwähnen. Beispiele für Precondition-Filter sind Zeilenfilter, Stichprobenprozentsätze und inkrementelle Filter. Beim Parameter${data()}
wird zwischen Groß- und Kleinschreibung unterschieden.
Die folgenden Beispielregeln basieren auf benutzerdefinierten SQL-Regeln.
Regeltyp | Regelbeschreibung | SQL-Ausdruck |
---|---|---|
Zeilenbedingung | Prüft, ob der Wert von discount_pct zwischen 0 und 100 liegt.
|
0 < discount_pct UND discount_pct < 100
|
Zeilenbedingung | Prüfen Sie, ob currency_id eine der unterstützten Währungen ist.
|
currency_id in (select id from my_project_id.dim_dataset.dim_currency)
|
Tabellenbedingung | Aggregierter SQL-Ausdruck, mit dem geprüft wird, ob der durchschnittliche discount_pct zwischen 30% und 50 % liegt.
|
30<avg(discount) AND avg(discount) <50
|
Zeilenbedingung | Prüft, ob ein Datum nicht in der Zukunft liegt. | TIMESTAMP(transaction_timestamp) < CURRENT_TIMESTAMP()
|
Tabellenbedingung |
Eine benutzerdefinierte BigQuery-Funktion (UDF), um zu prüfen, ob der durchschnittliche Transaktionsbetrag pro Land unter einem vordefinierten Wert liegt. Erstellen Sie die (JavaScript-)UDF mit dem folgenden Befehl:
CREATE OR REPLACE FUNCTION myProject.myDataset.average_by_country ( country STRING, average FLOAT64) RETURNS BOOL LANGUAGE js AS R""" if (country = "CAN" && average < 5000){ return 1 } else if (country = "IND" && average < 1000){ return 1 } else { return 0 } """; |
Beispielregel zum Prüfen des durchschnittlichen Transaktionsbetrags für country=CAN .
myProject.myDataset.average_by_country( "CAN", (SELECT avg(amount) FROM myProject.myDataset.transactions_table WHERE currency_id = 'CAN' )) |
Tabellenbedingung | Eine BigQuery ML-PREDICT-Klausel zum Erkennen von Anomalien in discount_pct . Es wird geprüft, ob ein Rabatt auf Grundlage von customer , currency und transaction angewendet werden soll. Die Regel prüft, ob die Vorhersage mindestens 99% der Zeit mit dem tatsächlichen Wert übereinstimmt. Annahme: Das ML-Modell wird vor der Verwendung der Regel erstellt. Erstellen Sie das ML-Modell mit dem folgenden Befehl:
CREATE MODEL model-project-id.dataset-id.model-name OPTIONS(model_type='logistic_reg') AS SELECT IF(discount_pct IS NULL, 0, 1) AS label, IFNULL(customer_id, "") AS customer, IFNULL(currency_id, "") AS currency, IFNULL(amount, 0.0) AS amount FROM `data-project-id.dataset-id.table-names` WHERE transaction_timestamp < '2022-01-01'; |
Mit der folgenden Regel wird geprüft, ob die Vorhersagegenauigkeit über 99 % liegt.
SELECT accuracy > 0.99 FROM ML.EVALUATE (MODEL model-project-id.dataset-id.model-name, ( SELECT customer_id, currency_id, amount, discount_pct FROM data-project-id.dataset-id.table-names WHERE transaction_timestamp > '2022-01-01'; ) ) |
Zeilenbedingung | Eine BigQuery ML-Vorhersagefunktion zum Erkennen von Anomalien in discount_pct . Die Funktion prüft anhand von customer , currency und transaction , ob ein Rabatt angewendet werden soll.
Mit der Regel werden alle Fälle ermittelt, in denen die Vorhersage nicht übereinstimmte.
Annahme: Das ML-Modell wird vor der Verwendung der Regel erstellt. Erstellen Sie das ML-Modell mit dem folgenden Befehl:
CREATE MODEL model-project-id.dataset-id.model-name OPTIONS(model_type='logistic_reg') AS SELECT IF(discount_pct IS NULL, 0, 1) AS label, IFNULL(customer_id, "") AS customer, IFNULL(currency_id, "") AS currency, IFNULL(amount, 0.0) AS amount FROM `data-project-id.dataset-id.table-names` WHERE transaction_timestamp < '2022-01-01'; |
Mit der folgenden Regel wird geprüft, ob die Rabattvorhersage für jede Zeile mit dem tatsächlichen Rabatt übereinstimmt.
IF(discount_pct > 0, 1, 0) =(SELECT predicted_label FROM ML.PREDICT( MODEL model-project-id.dataset-id.model-name, ( SELECT customer_id, currency_id, amount, discount_pct FROM data-project-id.dataset-id.table-names AS t WHERE t.transaction_timestamp = transaction_timestamp LIMIT 1 ) ) ) |
SQL-Assertion | Prüft, ob der discount_pct für heute größer als 30% ist. Dazu wird geprüft, ob es Zeilen mit einem Rabattprozentsatz kleiner oder gleich 30 gibt. |
SELECT * FROM my_project_id.dim_dataset.dim_currency WHERE discount_pct <= 30 AND transaction_timestamp >= current_date() |
SQL-Assertion (mit Parameter für Datenreferenz) | Prüft, ob der Der Datumsfilter Der Datenreferenzparameter |
SELECT * FROM ${data()} WHERE discount_pct > 30 |
Datenqualitätsregeln mit der gcloud CLI definieren
In der folgenden Beispiel-YAML-Datei werden einige der Regeln aus den Beispielregeln mit integrierten Typen und den Beispielregeln für benutzerdefiniertes SQL verwendet. Diese YAML-Datei enthält auch andere Spezifikationen für den Datenqualitäts-Scan, z. B. Filter und den Prozentsatz für das Sampling. Wenn Sie die gcloud CLI zum Erstellen oder Aktualisieren eines Datenqualitäts-Scans verwenden, können Sie eine YAML-Datei wie diese als Eingabe für das Argument --data-quality-spec-file
verwenden.
rules:
- uniquenessExpectation: {}
column: transaction_id
dimension: UNIQUENESS
- nonNullExpectation: {}
column: amount
dimension: COMPLETENESS
threshold: 1
- regexExpectation:
regex: '^[0-9]{8}[a-zA-Z]{16}$'
column : customer_id
ignoreNull : true
dimension : VALIDITY
threshold : 1
- setExpectation :
values :
- 'USD'
- 'JPY'
- 'INR'
- 'GBP'
- 'CAN'
column : currency_id
ignoreNull : true
dimension : VALIDITY
threshold : 1
- rangeExpectation:
minValue : '0'
maxValue : '100'
column : discount_pct
ignoreNull : true
dimension : VALIDITY
threshold : 1
- rowConditionExpectation:
sqlExpression : 0 < `discount_pct` AND `discount_pct` < 100
column: discount_pct
dimension: VALIDITY
threshold: 1
- rowConditionExpectation:
sqlExpression : currency_id in (select id from `my_project_id.dim_dataset.dim_currency`)
column: currency_id
dimension: VALIDITY
threshold: 1
- tableConditionExpectation:
sqlExpression : 30 < avg(discount_pct) AND avg(discount_pct) < 50
dimension: VALIDITY
- rowConditionExpectation:
sqlExpression : TIMESTAMP(transaction_timestamp) < CURRENT_TIMESTAMP()
column: transaction_timestamp
dimension: VALIDITY
threshold: 1
- sqlAssertion:
sqlStatement : SELECT * FROM `my_project_id.dim_dataset.dim_currency` WHERE discount_pct > 100
dimension: VALIDITY
samplingPercent: 50
rowFilter: discount_pct > 100
postScanActions:
bigqueryExport:
resultsTable: projects/my_project_id/datasets/dim_dataset/tables/dim_currency
notificationReport:
recipients:
emails:
- '222larabrown@gmail.com'
- 'cloudysanfrancisco@gmail.com'
scoreThresholdTrigger:
scoreThreshold: 50
jobFailureTrigger: {}
jobEndTrigger: {}
catalogPublishingEnabled: true
Datenqualitätsscan erstellen
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf Datenqualitätsscan erstellen.
Füllen Sie im Fenster Scan definieren die folgenden Felder aus:
Optional: Geben Sie einen Anzeigenamen ein.
Geben Sie eine ID ein. Weitere Informationen finden Sie unter Konventionen für Ressourcennamen.
Optional: Geben Sie eine Beschreibung ein.
Klicken Sie im Feld Tabelle auf Durchsuchen. Wählen Sie die Tabelle aus, die gescannt werden soll, und klicken Sie dann auf Auswählen. Es werden nur Standard-BigQuery-Tabellen unterstützt.
Wählen Sie für Tabellen in multiregionalen Datasets eine Region aus, in der der Datenscan erstellt werden soll.
Wenn Sie die Tabellen durchsuchen möchten, die in Dataplex Universal Catalog-Lakes organisiert sind, klicken Sie auf In Dataplex-Lakes suchen.
Wählen Sie im Feld Umfang die Option Inkrementell oder Gesamte Daten aus.
- Wenn Sie Inkrementell auswählen: Wählen Sie im Feld Zeitstempelspalte eine Spalte vom Typ
DATE
oderTIMESTAMP
aus Ihrer BigQuery-Tabelle aus, die zunimmt, wenn neue Datensätze hinzugefügt werden, und mit der neue Datensätze identifiziert werden können. Das kann eine Spalte sein, mit der die Tabelle partitioniert wird.
- Wenn Sie Inkrementell auswählen: Wählen Sie im Feld Zeitstempelspalte eine Spalte vom Typ
Wenn Sie Ihre Daten filtern möchten, klicken Sie das Kästchen Zeilen filtern an. Geben Sie einen Zeilenfilter an, der aus einem gültigen SQL-Ausdruck besteht, der als Teil einer
WHERE
-Klausel in GoogleSQL-Syntax verwendet werden kann. Beispiel:col1 >= 0
Der Filter kann eine Kombination aus mehreren Spaltenbedingungen sein. Beispiel:col1 >= 0 AND col2 < 10
.Wenn Sie Ihre Daten stichprobenartig erfassen möchten, wählen Sie in der Liste Probegröße einen Prozentsatz für die Stichprobenerhebung aus. Wählen Sie einen Prozentwert zwischen 0,0% und 100,0% mit bis zu drei Dezimalstellen aus. Bei größeren Datasets sollten Sie einen niedrigeren Prozentsatz für die Stichprobenerhebung auswählen. Wenn Sie beispielsweise für eine 1-PB-Tabelle einen Wert zwischen 0, 1% und 1, 0 % eingeben, werden beim Datenqualitäts-Scan 1 bis 10 TB an Daten als Stichprobe verwendet. Bei inkrementellen Datenscans wird für den Datenqualitätsscan das Sampling auf das letzte Inkrement angewendet.
Wenn Sie die Ergebnisse des Datenqualitätsscans als Metadaten in Dataplex Universal Catalog veröffentlichen möchten, wählen Sie das Kästchen Ergebnisse in BigQuery und Dataplex Catalog veröffentlichen aus.
Die neuesten Scanergebnisse können Sie auf dem Tab Datenqualität auf den BigQuery- und Dataplex Universal Catalog-Seiten für die Quelltabelle ansehen. Informationen dazu, wie Sie Nutzern Zugriff auf die veröffentlichten Scanergebnisse gewähren, finden Sie im Abschnitt Zugriff auf Ergebnisse des Datenprofilscans gewähren in diesem Dokument.
Wählen Sie im Bereich Zeitplan eine der folgenden Optionen aus:
Wiederholen: Führen Sie den Datenqualitätsscan nach einem Zeitplan aus: stündlich, täglich, wöchentlich, monatlich oder benutzerdefiniert. Geben Sie an, wie oft und zu welcher Uhrzeit der Scan ausgeführt werden soll. Wenn Sie „benutzerdefiniert“ auswählen, geben Sie den Zeitplan im Cron-Format an.
On-Demand: Führen Sie den Datenqualitätsscan bei Bedarf aus.
Klicken Sie auf Weiter.
Definieren Sie im Fenster Regeln für Datenqualität die Regeln, die für diesen Datenqualitätsscan konfiguriert werden sollen.
Klicken Sie auf Regeln hinzufügen und wählen Sie eine der folgenden Optionen aus.
Profilbasierte Empfehlungen: Erstellen Sie Regeln anhand von Empfehlungen, die auf einem vorhandenen Datenprofilscan basieren.
Spalten auswählen: Wählen Sie die Spalten aus, für die Sie empfohlene Regeln erhalten möchten.
Scanprojekt auswählen: Wenn sich der Datenprofilscan in einem anderen Projekt als dem Projekt befindet, in dem Sie den Datenqualitätsscan erstellen, wählen Sie das Projekt aus, aus dem Profilscans abgerufen werden sollen.
Profilergebnisse auswählen: Wählen Sie ein oder mehrere Profilergebnisse aus und klicken Sie dann auf OK. Dadurch wird eine Liste mit vorgeschlagenen Regeln erstellt, die Sie als Ausgangspunkt verwenden können.
Klicken Sie das Kästchen für die Regeln an, die Sie hinzufügen möchten, und dann auf Auswählen. Nach der Auswahl werden die Regeln Ihrer aktuellen Regelliste hinzugefügt. Anschließend können Sie die Regeln bearbeiten.
Integrierte Regeltypen: Erstellen Sie Regeln aus vordefinierten Regeln. Liste der vordefinierten Regeln
Spalten auswählen: Wählen Sie die Spalten aus, für die Sie Regeln auswählen möchten.
Regeltypen auswählen: Wählen Sie die Regeltypen aus, die Sie verwenden möchten, und klicken Sie dann auf OK. Die angezeigten Regeltypen hängen von den ausgewählten Spalten ab.
Klicken Sie das Kästchen für die Regeln an, die Sie hinzufügen möchten, und dann auf Auswählen. Nach der Auswahl werden die Regeln der aktuellen Regelliste hinzugefügt. Anschließend können Sie die Regeln bearbeiten.
Prüfregel für SQL-Zeilen: Erstellen Sie eine benutzerdefinierte SQL-Regel, die auf jede Zeile angewendet wird.
Wählen Sie unter Dimension eine Dimension aus.
Wählen Sie unter Bestandene Mindestanzahl einen Prozentsatz der Datensätze aus, die die Prüfung bestehen müssen.
Wählen Sie unter Spaltenname eine Spalte aus.
Geben Sie im Feld SQL-Ausdruck angeben einen SQL-Ausdruck ein, der als boolescher Wert
true
(bestanden) oderfalse
(nicht bestanden) ausgewertet wird. Weitere Informationen finden Sie unter Unterstützte benutzerdefinierte SQL-Regeltypen und in den Beispielen unter Regeln für die Datenqualität definieren.Klicken Sie auf Hinzufügen.
Prüfregel für SQL-Aggregate: Erstellen Sie eine benutzerdefinierte SQL-Regel für Tabellenbedingungen.
Wählen Sie unter Dimension eine Dimension aus.
Wählen Sie unter Spaltenname eine Spalte aus.
Geben Sie im Feld SQL-Ausdruck angeben einen SQL-Ausdruck ein, der als boolescher Wert
true
(bestanden) oderfalse
(nicht bestanden) ausgewertet wird. Weitere Informationen finden Sie unter Unterstützte benutzerdefinierte SQL-Regeltypen und in den Beispielen unter Regeln für die Datenqualität definieren.Klicken Sie auf Hinzufügen.
SQL-Assertion-Regel: Erstellen Sie eine benutzerdefinierte SQL-Assertion-Regel, um den ungültigen Status der Daten zu prüfen.
Wählen Sie unter Dimension eine Dimension aus.
Optional: Wählen Sie unter Spaltenname eine Spalte aus.
Geben Sie im Feld SQL-Anweisung angeben eine SQL-Anweisung ein, die Zeilen zurückgibt, die dem ungültigen Status entsprechen. Wenn Zeilen zurückgegeben werden, schlägt die Regel fehl. Lassen Sie das abschließende Semikolon in der SQL-Anweisung weg. Weitere Informationen finden Sie unter Unterstützte benutzerdefinierte SQL-Regeltypen und in den Beispielen unter Regeln für die Datenqualität definieren.
Klicken Sie auf Hinzufügen.
Optional: Sie können jeder Datenqualitätsregel einen benutzerdefinierten Namen zuweisen, der für Monitoring und Benachrichtigungen verwendet wird, sowie eine Beschreibung. Bearbeiten Sie dazu eine Regel und geben Sie die folgenden Details an:
- Regelname: Geben Sie einen benutzerdefinierten Regelnamen mit bis zu 63 Zeichen ein. Der Regelname kann Buchstaben (a–z, A–Z), Ziffern (0–9) und Bindestriche (-) enthalten und muss mit einem Buchstaben beginnen und mit einer Ziffer oder einem Buchstaben enden.
- Beschreibung: Geben Sie eine Regelbeschreibung mit maximal 1.024 Zeichen ein.
Wiederholen Sie die vorherigen Schritte, um dem Datenqualitätsscan weitere Regeln hinzuzufügen. Klicken Sie anschließend auf Weiter.
Optional: Exportieren Sie die Scanergebnisse in eine BigQuery-Standardtabelle. Führen Sie im Abschnitt Scanergebnisse in BigQuery-Tabelle exportieren folgende Schritte aus:
Klicken Sie im Feld BigQuery-Dataset auswählen auf Durchsuchen. Wählen Sie ein BigQuery-Dataset aus, in dem die Ergebnisse des Datenqualitätsscans gespeichert werden sollen.
Geben Sie im Feld BigQuery-Tabelle die Tabelle an, in der die Ergebnisse des Datenqualitätsscans gespeichert werden sollen. Wenn Sie eine vorhandene Tabelle verwenden, muss sie mit dem Schema der Exporttabelle kompatibel sein. Wenn die angegebene Tabelle nicht vorhanden ist, wird sie von Dataplex Universal Catalog erstellt.
Optional: Fügen Sie Labels hinzu. Labels sind Schlüssel/Wert-Paare, mit denen Sie verwandte Objekte zusammen oder mit anderen Google Cloud -Ressourcen gruppieren können.
Optional: Richten Sie E-Mail-Benachrichtigungsberichte ein, um Personen über den Status und die Ergebnisse eines Datenqualitätsscan-Jobs zu informieren. Klicken Sie im Bereich Benachrichtigungsbericht auf
E-Mail-ID hinzufügen und geben Sie bis zu fünf E-Mail-Adressen ein. Wählen Sie dann die Szenarien aus, für die Sie Berichte senden möchten:- Wert für Qualität (<=): Ein Bericht wird gesendet, wenn ein Job mit einem Datenqualitätsfaktor abgeschlossen wird, der niedriger als der angegebene Zielwert ist. Geben Sie einen Ziel-Qualitätsfaktor zwischen 0 und 100 ein.
- Job failures (Jobfehler): Ein Bericht wird gesendet, wenn der Job selbst fehlschlägt, unabhängig von den Ergebnissen der Datenqualität.
- Jobabschluss (Erfolg oder Fehler): Sendet einen Bericht, wenn der Job beendet wird, unabhängig von den Ergebnissen zur Datenqualität.
Klicken Sie auf Erstellen.
Nachdem Sie den Scan erstellt haben, können Sie ihn jederzeit ausführen, indem Sie auf Run now (Jetzt ausführen) klicken.
gcloud
Verwenden Sie zum Erstellen eines Datenqualitätsscans den Befehl gcloud dataplex datascans create data-quality
.
Wenn die Quelldaten in einem Dataplex Universal Catalog-Lake organisiert sind, fügen Sie das Flag --data-source-entity
ein:
gcloud dataplex datascans create data-quality DATASCAN \
--location=LOCATION \
--data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
--data-source-entity=DATA_SOURCE_ENTITY
Wenn die Quelldaten nicht in einem Dataplex Universal Catalog-Lake organisiert sind, fügen Sie das Flag --data-source-resource
ein:
gcloud dataplex datascans create data-quality DATASCAN \
--location=LOCATION \
--data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
--data-source-resource=DATA_SOURCE_RESOURCE
Ersetzen Sie die folgenden Variablen:
DATASCAN
: Der Name des Datenqualitäts-Scans.LOCATION
: Die Google Cloud Region, in der der Datenqualitätsscan erstellt werden soll.DATA_QUALITY_SPEC_FILE
: Der Pfad zur JSON- oder YAML-Datei, die die Spezifikationen für den Datenqualitäts-Scan enthält. Die Datei kann eine lokale Datei oder ein Cloud Storage-Pfad mit dem Präfixgs://
sein. Mit dieser Datei geben Sie die Datenqualitätsregeln für den Scan an. Sie können in dieser Datei auch zusätzliche Details angeben, z. B. Filter, den Prozentsatz für das Sampling und Aktionen nach dem Scannen, z. B. den Export nach BigQuery oder das Senden von E‑Mail-Benachrichtigungsberichten. Weitere Informationen finden Sie in der Dokumentation zur JSON-Darstellung und in der YAML-Beispieldarstellung.DATA_SOURCE_ENTITY
: Die Dataplex Universal Catalog-Entität, die die Daten für den Datenqualitätsscan enthält. Beispiel:projects/test-project/locations/test-location/lakes/test-lake/zones/test-zone/entities/test-entity
DATA_SOURCE_RESOURCE
: Der Name der Ressource, die die Daten für den Datenqualitäts-Scan enthält. Beispiel://bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table
REST
Verwenden Sie die dataScans.create
-Methode, um einen Datenqualitätsscan zu erstellen.
Wenn Sie Regeln für den Datenqualitätsscan anhand von Regelempfehlungen erstellen möchten, die auf den Ergebnissen eines Datenprofilscans basieren, rufen Sie die Empfehlungen auf, indem Sie die dataScans.jobs.generateDataQualityRules
-Methode für den Datenprofilscan aufrufen.
Tabellenschema exportieren
Wenn Sie die Ergebnisse des Datenqualitätsscans in eine vorhandene BigQuery-Tabelle exportieren möchten, muss diese mit dem folgenden Tabellenschema kompatibel sein:
Spaltenname | Datentyp der Spalte | Name des Unterfelds (falls zutreffend) |
Datentyp des Unterfelds | Modus | Beispiel |
---|---|---|---|---|---|
data_quality_scan | struct/record |
resource_name |
string |
nullable | //dataplex.googleapis.com/projects/test-project/locations/europe-west2/datascans/test-datascan |
project_id |
string |
nullable | dataplex-back-end-dev-project |
||
location |
string |
nullable | us-central1 |
||
data_scan_id |
string |
nullable | test-datascan |
||
data_source | struct/record |
resource_name |
string |
nullable | Entitätsfall://dataplex.googleapis.com/projects/dataplex-back-end-dev-project/locations/europe-west2/lakes/a0-datascan-test-lake/zones/a0-datascan-test-zone/entities/table1 Tabellenfall: //bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table
|
dataplex_entity_project_id |
string |
nullable | dataplex-back-end-dev-project |
||
dataplex_entity_project_number |
integer |
nullable | 123456789 |
||
dataplex_lake_id |
string |
nullable | (Nur gültig, wenn die Quelle eine Entität ist)test-lake
|
||
dataplex_zone_id |
string |
nullable | (Nur gültig, wenn die Quelle eine Entität ist)test-zone |
||
dataplex_entity_id |
string |
nullable | (Nur gültig, wenn die Quelle eine Entität ist)test-entity |
||
table_project_id |
string |
nullable | test-project |
||
table_project_number |
integer |
nullable | 987654321 |
||
dataset_id |
string |
nullable | (Nur gültig, wenn die Quelle eine Tabelle ist)test-dataset |
||
table_id |
string |
nullable | (Nur gültig, wenn die Quelle eine Tabelle ist)test-table |
||
data_quality_job_id | string |
nullable | caeba234-cfde-4fca-9e5b-fe02a9812e38 |
||
data_quality_job_configuration | json |
trigger |
string |
nullable | ondemand /schedule |
incremental |
boolean |
nullable | true /false |
||
sampling_percent |
float |
nullable | (0–100)20.0 (entspricht 20 %) |
||
row_filter |
string |
nullable | col1 >= 0 AND col2 < 10 |
||
job_labels | json |
nullable | {"key1":value1} |
||
job_start_time | timestamp |
nullable | 2023-01-01 00:00:00 UTC |
||
job_end_time | timestamp |
nullable | 2023-01-01 00:00:00 UTC |
||
job_rows_scanned | integer |
nullable | 7500 |
||
rule_name | string |
nullable | test-rule |
||
rule_type | string |
nullable | Range Check |
||
rule_evaluation_type | string |
nullable | Per row |
||
rule_column | string |
nullable | Rule only attached to a certain column |
||
rule_dimension | string |
nullable | UNIQUENESS |
||
job_quality_result | struct/record |
passed |
boolean |
nullable | true /false |
score |
float |
nullable | 90.8 |
||
job_dimension_result | json |
nullable | {"ACCURACY":{"passed":true,"score":100},"CONSISTENCY":{"passed":false,"score":60}}
|
||
rule_threshold_percent | float |
nullable | (0.0–100.0)Rule-threshold-pct in API * 100 |
||
rule_parameters | json |
nullable | {min: 24, max:5345} |
||
rule_pass | boolean |
nullable | True |
||
rule_rows_evaluated | integer |
nullable | 7400 |
||
rule_rows_passed | integer |
nullable | 3 |
||
rule_rows_null | integer |
nullable | 4 |
||
rule_failed_records_query | string |
nullable | "SELECT * FROM `test-project.test-dataset.test-table` WHERE (NOT((`cTime` >= '15:31:38.776361' and `cTime` <= '19:23:53.754823') IS TRUE));" |
||
rule_assertion_row_count | integer |
nullable | 10 |
Wenn Sie BigQueryExport für einen Job zum Scannen der Datenqualität konfigurieren, sollten Sie die folgenden Richtlinien beachten:
- Verwenden Sie für das Feld
resultsTable
folgendes Format://bigquery.googleapis.com/projects/{project-id}/datasets/{dataset-id}/tables/{table-id}
- Verwenden Sie eine BigQuery-Standardtabelle.
- Wenn die Tabelle beim Erstellen oder Aktualisieren des Scans nicht vorhanden ist, wird sie von Dataplex Universal Catalog erstellt.
- Standardmäßig wird die Tabelle täglich auf Grundlage der Spalte
job_start_time
partitioniert. - Wenn Sie möchten, dass die Tabelle anders partitioniert wird, oder wenn Sie keine Partition möchten, erstellen Sie die Tabelle mit dem erforderlichen Schema und den erforderlichen Konfigurationen neu und geben Sie diese vorab erstellte Tabelle dann als Ergebnistabelle an.
- Die Ergebnistabelle muss sich am selben Speicherort wie die Quelltabelle befinden.
- Wenn VPC-SC für das Projekt konfiguriert ist, muss sich die Ergebnistabelle im selben VPC-SC-Perimeter wie die Quelltabelle befinden.
- Wenn die Tabelle während der Ausführung des Scans geändert wird, werden die Daten des aktuell ausgeführten Jobs in die vorherige Ergebnistabelle exportiert. Die Tabellenänderung wird erst beim nächsten Scanjob berücksichtigt.
- Ändern Sie das Tabellenschema nicht. Wenn Sie benutzerdefinierte Spalten benötigen, erstellen Sie eine Ansicht für die Tabelle.
- Um Kosten zu senken, legen Sie je nach Anwendungsfall ein Ablaufdatum für die Partition fest. Weitere Informationen finden Sie unter Partitionsablauf festlegen.
Datenqualitätsscan ausführen
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Datenqualitätsscan, den Sie ausführen möchten.
Klicken Sie auf Jetzt ausführen.
gcloud
Verwenden Sie den gcloud dataplex datascans run
-Befehl, um einen Scan der Datenqualität auszuführen:
gcloud dataplex datascans run DATASCAN \ --location=LOCATION \
Ersetzen Sie die folgenden Variablen:
LOCATION
: Die Google Cloud -Region, in der der Datenqualitätsscan erstellt wurde.DATASCAN
: Der Name des Datenqualitäts-Scans.
REST
Verwenden Sie die Methode dataScans.run
, um einen Datenqualitäts-Scan auszuführen.
Ergebnisse des Datenqualitätsscans ansehen
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Namen eines Datenqualitätsscans.
Im Bereich Übersicht werden Informationen zu den letzten Jobs angezeigt, z. B. wann der Scan ausgeführt wurde, die Anzahl der in jedem Job gescannten Datensätze, ob alle Datenqualitätsprüfungen bestanden wurden und, falls Fehler aufgetreten sind, die Anzahl der fehlgeschlagenen Datenqualitätsprüfungen.
Im Abschnitt Konfiguration für Datenqualitätsscan werden Details zum Scan angezeigt.
Wenn Sie detaillierte Informationen zu einem Job aufrufen möchten, z. B. Datenqualitätswerte, die den Prozentsatz der bestandenen Regeln angeben, fehlgeschlagene Regeln und die Joblogs, klicken Sie auf den Tab Jobverlauf. Klicken Sie dann auf eine Job-ID.
gcloud
Verwenden Sie den Befehl gcloud dataplex datascans jobs describe
, um die Ergebnisse eines Datenqualitätsscan-Jobs aufzurufen:
gcloud dataplex datascans jobs describe JOB \ --location=LOCATION \ --datascan=DATASCAN \ --view=FULL
Ersetzen Sie die folgenden Variablen:
JOB
: Die Job-ID des Jobs für den Datenqualitäts-Scan.LOCATION
: Die Google Cloud Region, in der der Datenqualitäts-Scan erstellt wurde.DATASCAN
: Der Name des Datenqualitäts-Scans, zu dem der Job gehört.--view=FULL
: Wenn Sie das Ergebnis des Scanjobs sehen möchten, geben SieFULL
an.
REST
Verwenden Sie die Methode dataScans.get
, um die Ergebnisse eines Datenqualitätsscans aufzurufen.
Veröffentlichte Ergebnisse ansehen
Wenn die Ergebnisse des Datenqualitätsscans als Dataplex Universal Catalog-Metadaten veröffentlicht werden, können Sie die neuesten Scanergebnisse in derGoogle Cloud -Konsole auf den BigQuery- und Dataplex Universal Catalog-Seiten auf dem Tab Datenqualität der Quelltabelle sehen.
Rufen Sie in der Google Cloud Console die Seite Suche des Dataplex Universal Catalog auf.
Suchen Sie nach der Tabelle und wählen Sie sie aus.
Klicken Sie auf den Tab Datenqualität.
Die zuletzt veröffentlichten Ergebnisse werden angezeigt.
Historische Scanergebnisse ansehen
In Dataplex Universal Catalog wird der Datenqualitäts-Scanverlauf der letzten 300 Jobs oder des letzten Jahres gespeichert, je nachdem, was zuerst eintritt.
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Namen eines Datenqualitätsscans.
Klicken Sie auf den Tab Jobverlauf.
Auf dem Tab Jobverlauf finden Sie Informationen zu früheren Jobs, z. B. die Anzahl der in jedem Job gescannten Datensätze, den Jobstatus, die Uhrzeit, zu der der Job ausgeführt wurde, und ob jede Regel bestanden oder fehlgeschlagen ist.
Wenn Sie detaillierte Informationen zu einem Job aufrufen möchten, klicken Sie auf einen der Jobs in der Spalte Job-ID.
gcloud
Verwenden Sie den gcloud dataplex datascans jobs list
-Befehl, um Jobs für Datenqualitätsscans aus dem Verlauf aufzurufen:
gcloud dataplex datascans jobs list \ --location=LOCATION \ --datascan=DATASCAN \
Ersetzen Sie die folgenden Variablen:
LOCATION
: Die Google Cloud Region, in der der Datenqualitäts-Scan erstellt wurde.DATASCAN
: Der Name des Datenqualitäts-Scans, für den Sie den Jobverlauf aufrufen möchten.
REST
Verwenden Sie die Methode dataScans.jobs.list
, um historische Datenqualitätsscan-Jobs aufzurufen.
Zugriff auf Ergebnisse des Datenqualitätsscans gewähren
So ermöglichen Sie Nutzern in Ihrer Organisation, die Scanergebnisse aufzurufen:
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Datenqualitätsscan, dessen Ergebnisse Sie teilen möchten.
Klicken Sie auf den Tab Berechtigungen.
Gehen Sie dazu so vor:
- Wenn Sie einem Hauptkonto Zugriff gewähren möchten, klicken Sie auf Zugriff gewähren. Weisen Sie dem zugehörigen Hauptkonto die Rolle Dataplex DataScan DataViewer zu.
- Wenn Sie den Zugriff von einem Hauptkonto entfernen möchten, wählen Sie das Hauptkonto aus, aus dem Sie die Rolle Dataplex DataScan DataViewer entfernen möchten. Klicken Sie auf Zugriff entfernen und bestätigen Sie den Vorgang, wenn Sie dazu aufgefordert werden.
Benachrichtigungen in Cloud Logging einrichten
So richten Sie Benachrichtigungen für Fehler bei der Datenqualität mithilfe der Logs in Cloud Logging ein:
Console
Rufen Sie in der Google Cloud Console den Log-Explorer von Cloud Logging auf.
Geben Sie im Fenster Abfrage Ihre Abfrage ein. Beispielabfragen
Klicken Sie auf Abfrage ausführen.
Klicken Sie auf Benachrichtigung erstellen. Dadurch wird eine Seitenleiste geöffnet.
Geben Sie den Namen der Benachrichtigungsrichtlinie ein und klicken Sie auf Weiter.
Überprüfen Sie die Abfrage.
Klicken Sie auf die Schaltfläche Protokolle in der Vorschau ansehen, um die Abfrage zu testen. Hier werden Logs mit übereinstimmenden Bedingungen angezeigt.
Klicken Sie auf Weiter.
Legen Sie die Zeit zwischen Benachrichtigungen fest und klicken Sie auf Weiter.
Legen Sie fest, wer über die Benachrichtigung informiert werden soll, und klicken Sie auf Speichern, um die Benachrichtigungsrichtlinie zu erstellen.
Alternativ können Sie Ihre Benachrichtigungen konfigurieren und bearbeiten, indem Sie in derGoogle Cloud -Konsole zu Monitoring > Benachrichtigungen navigieren.
gcloud
Nicht unterstützt.
REST
Weitere Informationen zum Einrichten von Benachrichtigungen in Cloud Logging finden Sie unter Logbasierte Benachrichtigungsrichtlinie mit der Monitoring API erstellen.
Beispielabfragen zum Festlegen von Benachrichtigungen auf Job- oder Dimensionsebene
Eine Beispielabfrage zum Festlegen von Benachrichtigungen zu allgemeinen Fehlern bei der Datenqualität für einen Scan zur Datenqualität:
resource.type="dataplex.googleapis.com/DataScan" AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED" AND resource.labels.resource_container="projects/112233445566" AND resource.labels.datascan_id="a0-test-dec6-dq-3" AND NOT jsonPayload.dataQuality.passed=true
Ein Beispiel für eine Abfrage zum Festlegen von Benachrichtigungen zu Datenqualitätsfehlern für eine Dimension (z. B. Eindeutigkeit) eines bestimmten Datenqualitätsscans:
resource.type="dataplex.googleapis.com/DataScan" AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED" AND resource.labels.resource_container="projects/112233445566" AND resource.labels.datascan_id="a0-test-dec6-dq-3" AND jsonPayload.dataQuality.dimensionPassed.UNIQUENESS=false
Eine Beispielabfrage zum Festlegen von Benachrichtigungen zu Datenqualitätsfehlern für eine Tabelle.
So richten Sie Benachrichtigungen für Fehler bei der Datenqualität für eine BigQuery-Tabelle ein, die nicht in einem Dataplex Universal Catalog-Lake organisiert ist:
resource.type="dataplex.googleapis.com/DataScan" AND jsonPayload.dataSource="//bigquery.googleapis.com/projects/test-project/datasets/testdataset/table/chicago_taxi_trips" AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED" AND resource.labels.resource_container="projects/112233445566" AND NOT jsonPayload.dataQuality.passed=true
So legen Sie Benachrichtigungen für Fehler bei der Datenqualität für eine BigQuery-Tabelle fest, die in einem Dataplex Universal Catalog-Lake organisiert ist:
resource.type="dataplex.googleapis.com/DataScan" AND jsonPayload.dataSource="projects/test-project/datasets/testdataset/table/chicago_taxi_trips" AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED" AND resource.labels.resource_container="projects/112233445566" AND NOT jsonPayload.dataQuality.passed=true
Beispielabfragen zum Festlegen von Benachrichtigungen pro Regel
Beispielabfrage zum Festlegen von Benachrichtigungen für alle fehlgeschlagenen Datenqualitätsregeln mit dem angegebenen benutzerdefinierten Regelnamen für einen Datenqualitätsscan:
resource.type="dataplex.googleapis.com/DataScan" AND jsonPayload.ruleName="custom-name" AND jsonPayload.result="FAILED"
Ein Beispiel für eine Abfrage zum Festlegen von Benachrichtigungen für alle fehlgeschlagenen Datenqualitätsregeln eines bestimmten Auswertungstyps für einen Datenqualitätsscan:
resource.type="dataplex.googleapis.com/DataScan" AND jsonPayload.evalutionType="PER_ROW" AND jsonPayload.result="FAILED"
Beispielabfrage zum Festlegen von Benachrichtigungen für alle fehlerhaften Datenqualitätsregeln für eine Spalte in der Tabelle, die für einen Datenqualitätsscan verwendet wird:
resource.type="dataplex.googleapis.com/DataScan" AND jsonPayload.column="CInteger" AND jsonPayload.result="FAILED"
Fehler bei der Datenqualität beheben
Für jeden Job mit fehlgeschlagenen Regeln auf Zeilenebene stellt Dataplex Universal Catalog eine Abfrage zum Abrufen der fehlgeschlagenen Datensätze bereit. Führen Sie diese Abfrage aus, um die Datensätze zu sehen, die nicht mit Ihrer Regel übereinstimmen.
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Namen des Datenqualitäts-Scans, dessen Datensätze Sie untersuchen möchten.
Klicken Sie auf den Tab Jobverlauf.
Klicken Sie auf die Job-ID des Jobs, bei dem Datenqualitätsfehler festgestellt wurden.
Suchen Sie im Fenster mit den Job-Ergebnissen, das sich öffnet, im Bereich Regeln nach der Spalte Abfrage zum Abrufen fehlgeschlagener Datensätze. Klicken Sie für die fehlgeschlagene Regel auf Abfrage in die Zwischenablage kopieren.
Führen Sie die Abfrage in BigQuery aus, um die Datensätze zu sehen, die zum Fehlschlagen des Jobs geführt haben.
gcloud
Nicht unterstützt.
REST
Verwenden Sie die
dataScans.get
-Methode, um den Job abzurufen, in dem Datenqualitätsprobleme erkannt wurden.Im Antwortobjekt wird die Abfrage im Feld
failingRowsQuery
angezeigt.Führen Sie die Abfrage in BigQuery aus, um die Datensätze zu sehen, die zum Fehlschlagen des Jobs geführt haben.
Scans zur Datenqualität für eine bestimmte Tabelle verwalten
In diesem Dokument wird beschrieben, wie Sie Datenprofilscans in Ihrem Projekt über die Seite Datenprofilerstellung und ‑qualität des Dataplex Universal Catalog in der Google Cloud Console verwalten.
Sie können auch Scans für Datenprofile erstellen und verwalten, wenn Sie mit einer bestimmten Tabelle arbeiten. Rufen Sie in der Google Cloud Console auf der Seite „Dataplex Universal Catalog“ für die Tabelle den Tab Datenqualität auf. Gehen Sie dazu so vor:
Rufen Sie in der Google Cloud Console die Seite Suchen des Dataplex Universal Catalog auf.
Suchen Sie nach der Tabelle und wählen Sie sie aus.
Klicken Sie auf den Tab Datenqualität.
Je nachdem, ob für die Tabelle ein Datenqualitätsscan vorhanden ist, dessen Ergebnisse als Dataplex Universal Catalog-Metadaten veröffentlicht werden, haben Sie folgende Möglichkeiten, mit den Datenqualitätsscans der Tabelle zu arbeiten:
Ergebnisse des Datenqualitätsscans werden veröffentlicht: Die neuesten Scanergebnisse werden auf der Seite angezeigt.
Wenn Sie die Datenqualitätsscans für diese Tabelle verwalten möchten, klicken Sie auf Datenqualitätsscan und wählen Sie eine der folgenden Optionen aus:
Neuen Scan erstellen: Erstellen Sie einen neuen Datenqualitätsscan. Weitere Informationen finden Sie im Abschnitt Datenqualitätsscan erstellen in diesem Dokument. Wenn Sie einen Scan über die Detailseite einer Tabelle erstellen, ist die Tabelle bereits ausgewählt.
Jetzt ausführen: Scan ausführen
Scankonfiguration bearbeiten: Bearbeiten Sie Einstellungen wie den Anzeigenamen, Filter und den Zeitplan.
Wenn Sie die Regeln zur Datenqualität bearbeiten möchten, klicken Sie auf dem Tab Datenqualität auf den Tab Regeln. Klicken Sie auf Regeln ändern. Aktualisieren Sie die Regeln und klicken Sie dann auf Speichern.
Scanberechtigungen verwalten: Sie können festlegen, wer auf die Scanergebnisse zugreifen darf. Weitere Informationen finden Sie im Abschnitt Zugriff auf Ergebnisse des Datenqualitätsscans gewähren in diesem Dokument.
Historische Ergebnisse ansehen: Hier können Sie detaillierte Informationen zu früheren Datenqualitätsscan-Jobs aufrufen. Weitere Informationen finden Sie in den Abschnitten Ergebnisse des Datenqualitätsscans ansehen und Verlaufsergebnisse des Scans ansehen in diesem Dokument.
Alle Scans ansehen: Hier sehen Sie eine Liste der Datenqualitätsscans, die für diese Tabelle gelten.
Ergebnisse des Datenqualitätsscans werden nicht veröffentlicht: Wählen Sie eine der folgenden Optionen aus:
Datenqualitätsscan erstellen: Erstellen Sie einen neuen Datenqualitätsscan. Weitere Informationen finden Sie im Abschnitt Datenqualitätsscan erstellen in diesem Dokument. Wenn Sie einen Scan über die Detailseite einer Tabelle erstellen, ist die Tabelle bereits ausgewählt.
Vorhandene Scans ansehen: Hier sehen Sie eine Liste der Datenqualitätsscans, die für diese Tabelle gelten.
Datenqualitätsscan aktualisieren
Sie können verschiedene Einstellungen für einen vorhandenen Scan zur Datenqualität bearbeiten, z. B. den Anzeigenamen, Filter, Zeitplan und die Regeln zur Datenqualität.
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Namen eines Datenqualitätsscans.
Wenn Sie Einstellungen wie den Anzeigenamen, Filter und den Zeitplan bearbeiten möchten, klicken Sie auf Bearbeiten. Bearbeiten Sie die Werte und klicken Sie dann auf Speichern.
Wenn Sie die Regeln zur Datenqualität bearbeiten möchten, klicken Sie auf der Seite mit den Scandetails auf den Tab Aktuelle Regeln. Klicken Sie auf Regeln ändern. Aktualisieren Sie die Regeln und klicken Sie dann auf Speichern.
gcloud
Verwenden Sie den gcloud dataplex datascans update data-quality
-Befehl, um die Beschreibung eines Datenqualitäts-Scans zu aktualisieren:
gcloud dataplex datascans update data-quality DATASCAN \ --location=LOCATION \ --description=DESCRIPTION
Ersetzen Sie Folgendes:
DATASCAN
: Der Name des Datenqualitäts-Scans, der aktualisiert werden soll.LOCATION
: Die Google Cloud Region, in der der Datenqualitäts-Scan erstellt wurde.DESCRIPTION
: Die neue Beschreibung für den Scan der Datenqualität.
REST
Verwenden Sie die dataScans.patch
-Methode, um einen Datenqualitätsscan zu bearbeiten.
Datenqualitätsscan löschen
Console
Rufen Sie in der Google Cloud Console die Seite Datenprofilerstellung und ‑qualität von Dataplex Universal Catalog auf.
Klicken Sie auf den Scan, den Sie löschen möchten.
Klicken Sie auf Löschen und bestätigen Sie den Vorgang, wenn Sie dazu aufgefordert werden.
gcloud
Verwenden Sie den Befehl gcloud dataplex datascans delete
, um einen Datenqualitätsscan zu löschen:
gcloud dataplex datascans delete DATASCAN \ --location=LOCATION \ --async
Ersetzen Sie die folgenden Variablen:
DATASCAN
: Der Name des zu löschenden Datenqualitäts-Scans.LOCATION
: Die Google Cloud Region, in der der Datenqualitäts-Scan erstellt wurde.
REST
Verwenden Sie zum Löschen eines Datenqualitätsscans die Methode dataScans.delete
.
Nächste Schritte
- Weitere Informationen zur Datenprofilerstellung
- Informationen zur Verwendung der Datenprofilerstellung
- Anleitung zum Verwalten von Datenqualitätsregeln als Code mit Terraform