Einrichten der Datenqualität für Snowflake-Daten

In diesem Artikel erfahren Sie, wie Sie eine Snowflake-Quelle registrieren, einen Data Map-Scan ausführen und eine Data Quality-Verbindung in Microsoft Purview Unified Catalog konfigurieren. Nachdem Sie diese Schritte ausgeführt haben, können Sie ein Profil für Ihre Snowflake-Daten erstellen und Überprüfungen zur Datenqualität ausführen.

Unterstützte Snowflake-Metadaten

Wenn Sie Snowflake-Datenquellen überprüfen, extrahiert Microsoft Purview technische Metadaten. Die Überprüfung erfasst die folgenden Objekte:

  • Server, Datenbanken, Schemas und Tabellen
  • Ansichten, Fremdschlüssel und Unique-Einschränkungen
  • Gespeicherte Prozeduren und ihre Parameter
  • Funktionen und ihre Parameter
  • Pipes, Stages und Streams
  • Aufgaben und Sequenzen

Registrieren einer Snowflake-Quelle in Data Map

Führen Sie die folgenden Schritte aus, um eine neue Snowflake-Quelle in Microsoft Purview Unified Catalog zu registrieren:

  1. Melden Sie sich beim Microsoft Purview-Portal an.
  2. Wählen Sie die Karte Data Map-Lösung aus. Wenn die Data Map-Lösung Karte nicht angezeigt wird, wählen Sie Alle Projektmappen anzeigen und dann im Abschnitt Kerndie Option Data Map aus.
  3. Wählen Sie Registrieren aus.
  4. Wählen Sie unter Quellen registrierendie Option Snowflake aus.

Einrichten einer Data Map-Überprüfung

Führen Sie die folgenden Schritte aus, um eine Überprüfung für Ihre registrierte Snowflake-Quelle einzurichten:

  1. Wählen Sie die registrierte Snowflake-Quelle aus.
  2. Wählen Sie Neue Überprüfung aus.
  3. Geben Sie die folgenden Details an:
    • Name: Der Name der Überprüfung.
    • Herstellen einer Verbindung über Integration Runtime: Wählen Sie die automatisch aufgelöste Integration Runtime, die verwaltete Virtual Network IR oder SHIR für Ihr Szenario aus.
    • Host für Verbindung: Wählen Sie die Server-URL oder einen anderen Host aus, den Sie in der Datenquelle konfiguriert haben.
    • Anmeldeinformationen: Wählen Sie die Anmeldeinformationen für Ihre Datenquelle aus. Verwenden Sie die Standardauthentifizierung, geben Sie den Snowflake-Benutzernamen an, und speichern Sie das Kennwort im geheimen Schlüssel.
    • Warehouse: Geben Sie den Namen des Lagers in Großbuchstaben an. Die Standardrolle der Anmeldeinformationen muss über NUTZUNGsrechte für dieses Warehouse verfügen.
    • Datenbanken: Geben Sie einen oder mehrere Datenbanknamen in Großbuchstaben an, getrennt durch Semikolons (z. B DB1;DB2. ). Die Standardrolle der Anmeldeinformationen muss über Rechte für diese Datenbankobjekte verfügen.
    • Schema: Listen Sie die zu importierenden Schemas durch Semikolons getrennt auf.
  4. Wählen Sie Verbindung testen aus, um die Einstellungen zu überprüfen (verfügbar bei Verwendung von Azure Integration Runtime).
  5. Wählen Sie Weiter.
  6. Wählen Sie einen Überprüfungsregelsatz für die Klassifizierung aus. Sie können zwischen dem Systemstandard und vorhandenen benutzerdefinierten Regelsätzen wählen oder einen neuen Regelsatz inline erstellen.
  7. Überprüfen Sie Ihre Überprüfung, und wählen Sie Speichern und ausführen aus.

Nach Abschluss der Überprüfung ist das Datenasset in Snowflake auf der Unified Catalog Suche verfügbar. Weitere Informationen zum Verbinden und Verwalten von Snowflake in Microsoft Purview finden Sie unter Verbinden mit und Verwalten von Snowflake in Microsoft Purview.

Wichtig

Wenn Sie das Objekt aus der Datenquelle löschen, wird bei der nachfolgenden Überprüfung nicht automatisch das entsprechende Objekt in Microsoft Purview entfernt.

Einrichten einer Snowflake-Datenqualitätsverbindung

Nach Abschluss der Überprüfung ist das gescannte Medienobjekt für die Katalogisierung und Governance bereit. Richten Sie eine Snowflake-Verbindung in Microsoft Purview ein, um Datenqualitätsscans für das Medienobjekt auszuführen.

Wichtig

  • Data Quality Stewards benötigen schreibgeschützten Zugriff auf Snowflake, um die Datenqualitätsverbindung einzurichten.
  • Der Snowflake-Connector akzeptiert keine https://. Entfernen Sie https:// , wenn Sie den Servernamen zum Konfigurieren der Datenquellenverbindung hinzufügen.
  • Wenn Sie den öffentlichen Zugriff deaktivieren, müssen Sie Vertrauenswürdige Microsoft-Dienste für Key Vault zulassen auswählen. Diese Anforderung gilt nur für Key Vault, nicht für Ihren Snowflake-Arbeitsbereich.
  1. Öffnen Sie im Microsoft Purview-PortalUnified Catalog.

  2. Wählen Sie unter Integritätsverwaltungdie Option Datenqualität aus.

  3. Wählen Sie in der Liste eine Governancedomäne und dann in der Dropdownliste Verwalten die Option Verbindungen aus.

  4. Konfigurieren Sie die Verbindung auf der Seite Verbindungen :

    • Fügen Sie einen Verbindungsnamen und eine Beschreibung hinzu.
    • Wählen Sie den Quelltyp Snowflake aus.
    • Fügen Sie den Servernamen, den Warehousenamen, den Datenbanknamen, den Schemanamen und den Tabellennamen hinzu.
    • Wählen Sie eine Authentifizierungsmethode aus: Standard, Privater Schlüssel (Vorschau) oder OAuth (Vorschau).
    • Fügen Sie den Benutzernamen hinzu.
    • Anmeldeinformationen hinzufügen: Azure Abonnement, Key Vault Verbindung, Geheimnisname und Geheimnisversion.
    • Wählen Sie Verwaltetes VNET aktivieren aus, wenn Ihr Snowflake-instance auf Azure Virtual Network ausgeführt wird, und fügen Sie dann die Azure Region, Private Link Ressourcen-ID und den vollqualifizierten Domänennamen hinzu.
  5. Testen Sie die Verbindung, um sicherzustellen, dass sie funktioniert. Wenn Sie Virtual Network verwenden, wird das Testverbindungsfeature nicht unterstützt.

    Screenshot: Einrichten einer Snowflake-Verbindung

    Screenshot: Konfigurieren eines Snowflake-Verbindungstokens

Die Ressourcen-ID für die Private Snowflake-Zielverbindung hat das folgende Format: /subscriptions/(subscription_id)/resourcegroups/az(region)-privatelink/providers/microsoft.network/privatelinkservices/sf-pvlinksvc-az(region).

  • Um die Regions-ID und den vollqualifizierten Namen abzurufen, führen Sie und ausSYSTEM_WHITE_LIST, um die SNOWFLAKE_DEPLOYMENTWerte , SNOWFLAKE_DEPLOYMENT_REGIONLESSund OCSP_CACHE für öffentliche und zulässige Listenhosts SYSTEM_WHITE_LIST_PRIVATELINK abzurufen.
  • Führen Sie zum Abrufen der Abonnement-ID als ACCOUNTADMIN ausSYSTEM$GET_SNOWFLAKE_PLATFORM_INFO(), um die Snowflake-vnet-subnet-ids-Werte abzurufen. Die Abonnement-ID für die Private Link des Snowflake Azure Mandanten wird aus der Ausgabe snowflake-vnet-subnet-ids abgerufen.

Authentifizierung mit privatem Schlüssel (Vorschau)

Sie können private Schlüssel mit oder ohne Passphrase erstellen, indem Sie OpenSSL verwenden, ein Befehlszeilentool zum Generieren kryptografischer Schlüssel. Wenn Sie einen privaten Schlüssel mit einer Passphrase generieren, konfigurieren Sie sowohl den Schlüssel als auch die Passphrase mit der Verbindung, wie im folgenden Screenshot gezeigt. Wenn Sie während der Schlüsselgenerierung keine Passphrase angeben, lassen Sie sie in der Verbindung aus.

Der private Schlüssel, der über den openssl-Befehl generiert wird, enthält headers/footers den Anfang und das Ende des key/encrypted Schlüssels. Speichern Sie den gesamten Inhalt der Datei, einschließlich Kopfzeilen und neuen Zeilen, unverändert im Key Vault als Geheimniswert. Dazu können Sie ein Befehlszeilentool wie Azure CLI verwenden. Ohne die Kopfzeilen, Fußzeilen und die ursprüngliche Zeilenumbruchformatierung der Datei mit dem privaten Schlüssel schlägt die Authentifizierung mit Snowflake fehl.

Aus Sicherheitsgründen rotieren Sie Ihre Schlüssel regelmäßig. Wenn Sie einen Schlüssel rotieren, aktualisieren Sie ihn in Key Vault und in der Microsoft Purview-Verbindung. Neue Aufträge verwenden den aktualisierten Schlüssel. Lassen Sie den älteren Schlüssel aktiv, bis alle laufenden Aufträge abgeschlossen sind.

Screenshot: Einrichten einer Snowflake-Verbindung mithilfe eines privaten Schlüssels

OAuth-Authentifizierung (Vorschau)

Sie können eine OAuth-basierte Verbindung konfigurieren, indem Sie Microsoft Entra ID als OAuth-Anbieter verwenden. OAuth-Zugriffstoken sind in der Regel kurzlebig. Datenqualitätsbewertungsaufträge können jedoch je nach Datenvolumen lange ausgeführt werden. Legen Sie die Gültigkeitsdauer des OAuth-Zugriffstokens auf mindestens sechs Stunden fest, was der durchschnittlichen maximalen Auftragsdauer entspricht. Aufträge schlagen fehl, wenn das Zugriffstoken abläuft, bevor der Auftrag abgeschlossen ist.

Wenn Sie die Gültigkeitsdauer des Zugriffstokens nicht erhöhen können oder ihre Richtlinie dies nicht zulässt, verwenden Sie die schlüsselpaarbasierte Authentifizierung, da die Authentifizierung für Schlüsselpaare keine Einschränkungen für die Tokenlebensdauer aufweist.

Screenshot: Einrichten einer Snowflake-Verbindung mithilfe von OAuth

Beispielwerte für die OAuth-Verbindungsparameter:

  • Benutzername: DB41C9CD-96E7-47B0-ADB6-0A4D080229A0 (Wert der login_name Eigenschaft von Snowflake)
  • Client-ID: 00001111-aaaa-2222-bbbb-3333cccc4444 (Client-ID von Azure-Portal)
  • Token-URL: https://login.microsoftonline.com/ddfd8861-7cbd-43df-ad13-4f9e958cf53b/oauth2/v2.0/token (Token URL from Azure app)
  • Bereich: api://aaaabbbb-0000-cccc-1111-dddd2222eeee/.default (Scope as registered with the Azure app)

Grundlegendes zur Verbindungsauswahl

Sie wählen verbindungen nicht explizit aus, wenn Sie Bewertungen starten oder Zeitpläne konfigurieren. Das System wählt eine Verbindung automatisch basierend auf den folgenden Regeln aus:

  • Wenn nur Benutzer-Kennwort-Verbindungen vorhanden sind, wählt das System die zuerst erstellte aus.
  • Wenn Schlüsselpaar- oder OAuth-Verbindungen vorhanden sind, ignoriert das System alle Benutzer-Kennwort-Verbindungen und wählt die erste erstellte Schlüsselpaar- oder OAuth-Verbindung aus.

Die folgende Abbildung zeigt, wie das System eine Verbindung basierend auf dem Typ und der Erstellungsreihenfolge auswählt.

Angenommen, es gibt nur benutzerkennwortbasierte Verbindungen:

  • SnowflakeConnectionBob (Benutzerkennwort)
  • SnowflakeConnectionAlice (Benutzerkennwort)
  • SnowflakeConnectionEve (Benutzerkennwort)

Das System wählt die Verbindung SnowflakeConnectionBob aus.

Angenommen, alle Arten von Verbindungen sind vorhanden, und Sie haben sie in der folgenden Reihenfolge erstellt:

  • SnowflakeConnectionBob (Benutzerkennwort)
  • SnowflakeConnectionAlice (Schlüsselpaar)
  • SnowflakeConnectionCharlie (OAuth)
  • SnowflakeConnectionEve (Benutzerkennwort)

In diesem Fall ignoriert das System SnowflakeConnectionBob und SnowflakeConnectionEve. Das System berücksichtigt nur die folgenden Verbindungen für die Auswahl:

  • SnowflakeConnectionAlice (Schlüsselpaar)
  • SnowflakeConnectionCharlie (OAuth)

In der Regel wählt das System SnowflakeConnectionAlice für Bewertungen und geplante Ausführungen aus.

Wichtig

Nachdem Sie die Anforderung für eine private Endpunktverbindung erstellt haben, erstellen Sie ein Supportticket beim Snowflake-Support, um die private Endpunktverbindung zu genehmigen. Geben Sie die Details der Ressourcen-ID des verwalteten privaten Endpunkts in diesem Supportticket an, damit das Snowflake-Team es genehmigen kann.

Hinweis

Öffnen Sie die Autorisierung (OAuth) und die Schlüsselpaarauthentifizierung für Snowflake Datenbankverbindungen wird angezeigt. Mit diesen Optionen können Sie mehrere Verbindungen erstellen, die jeweils eine andere Authentifizierungsmethode verwenden. Wenn mehrere Verbindungen unterschiedliche Authentifizierungsmechanismen verwenden, wählt das System die zuletzt erstellte Verbindung aus. Wenn Sie beispielsweise zuerst eine Schlüsselpaar-basierte Verbindung erstellen, gefolgt von einer OAuth-Verbindung, wählt das System die OAuth-Verbindung aus. Wenn Die Schlüsselpaarverbindung ausgewählt werden soll, müssen Sie die OAuth-Verbindung löschen. Wenden Sie sich an Ihren Microsoft-Kontomitarbeiter, um eine Vorschau des neuen Snowflake-Authentifizierungsmodells für Microsoft Purview-Datenqualitätsüberprüfungen anzuzeigen.

Nächste Schritte

Nachdem Sie die Verbindung eingerichtet haben, können Sie ein Profil für Ihre Daten erstellen, Regeln erstellen und anwenden und eine Datenqualitätsüberprüfung ausführen. Eine schritt-für-Schritt-Anleitung finden Sie in den Artikeln zur Datenprofilerstellung und Datenqualitätsüberprüfung: