Zum Hauptinhalt springen

Data Map verstehen

Erfahren Sie, wie Perplexity automatisch eine Data Map für Ihre Snowflake- oder Databricks-Daten erstellt, um die Abfragegenauigkeit zu verbessern

Verfasst von Emilio Morales

Wenn Sie Snowflake oder Databricks mit Perplexity verbinden, erstellt Computer eine Data Map Ihres Data Warehouses oder Lakehouses. Die Data Map erfasst wichtige Informationen zu Ihrem Datenmodell – relevante Tabellen und Spalten, gängige Abfragemuster und Beziehungen zwischen Objekten –, damit Computer Fragen in natürlicher Sprache in präzise Abfragen übersetzen kann.

 

Stellen Sie es sich als eine Karte Ihrer Datenumgebung vor, die Computer dabei hilft zu verstehen, was sich wo befindet und wie es typischerweise verwendet wird. Nach der Erstellung wird die Data Map fortlaufend weiter verbessert: Sie lernt aus Nutzerfeedback, kann direkt von Administratoren bearbeitet werden und wird versioniert, sodass Änderungen jederzeit überprüft und zurückgesetzt werden können.

 

So funktioniert es

Sobald die Generierung der Data Map gestartet wurde, erkundet Computer mithilfe der Berechtigungen Ihres verbundenen Kontos Ihr Datenmodell. Dieser Prozess untersucht Ihre Schemas, Tabellen, Views und historischen Nutzungsmuster, um ein umfassendes Verständnis Ihrer Daten zu erstellen.

 

Die Data Map wird sicher in einem organisationsweiten, versionierten Repository gespeichert, auf das nur Mitglieder Ihrer Organisation zugreifen können. Jede Änderung — sei es durch Neu-Generierung, Bearbeitungen durch Administratoren oder selbstlernende Aktualisierungen — wird protokolliert, damit sie überprüft und zurückgesetzt werden kann.

 

Die Data Map erstellen

Es gibt eine Data Map pro Organisation, die von allen Mitgliedern dieser Organisation gemeinsam genutzt wird. Wenn ein Administrator die Generierung ausführt, geschieht dies im Namen der gesamten Organisation und nicht für einen einzelnen Nutzer.

 

Snowflake

Die Erstellung der Data Map für Snowflake wird von einem Organisationsadministrator über die Einstellungen des Snowflake-Connectors gestartet. Perplexity stellt zwei Snowflake-Connectoren bereit, und Administratoren erstellen die Data Map über den Connector, den ihre Organisation konfiguriert hat:

  • Snowflake (Schlüsselpaar oder PAT) — Abfragen werden als das konfigurierte Dienstkonto ausgeführt.

  • Snowflake (User OAuth) — Abfragen werden unter der Snowflake-Identität des Administrators ausgeführt, der die Generierung initiiert.

Welche Identität auch immer verwendet wird, sie muss die Account-Usage-Views von Snowflake lesen können (siehe unten Anforderungen). Wenn diese Berechtigungen fehlen, schlägt die Generierung unmittelbar mit einem klaren Berechtigungsfehler fehl, statt eine unvollständige Data Map zu erstellen.

 

Databricks

Bei Databricks wird die Generierung über die Connector-Einstellungen mit der Databricks-OAuth-Identität des Initiators gestartet. Computer listet die Kataloge, Schemata und Tabellen auf, die der Nutzer in Unity Catalog sehen kann, und liest die Databricks-Systemtabellen, um Nutzungssignale zu erfassen. Alles, was der Initiator in Unity Catalog sehen kann, bestimmt, was letztendlich in der Data Map angezeigt wird.

 

Zusätzlicher Kontext (Snowflake und Databricks)

Sie können ergänzenden Kontext hinzufügen — laden Sie Dateien hoch oder fügen Sie Notizen hinzu, die Ihre Daten beschreiben (z. B. wofür wichtige Tabellen stehen, geschäftliche Definitionen, gängige Abfragemuster) — damit Computer Ihre Daten genauer interpretieren kann. Der ergänzende Kontext wird in jeden Generierungslauf eingespeist und ist von der Regenerierung nicht betroffen, sodass Sie ihn im Laufe der Zeit weiter ergänzen können, ohne befürchten zu müssen, dass er verloren geht.

 

Wissen anzeigen

Nachdem die Generierung abgeschlossen ist, wird die Schaltfläche Data Map generieren im Connector-Dialog zu Wissen anzeigen. Wenn Sie auf Wissen anzeigen klicken, öffnet sich der Data Map-Editor, in dem Admins alles durchsuchen, bearbeiten und verwalten können, was Computer über Ihre Daten gelernt hat. Data Map neu generieren ist außerdem im Connector-Dialog verfügbar, sobald eine erste Data Map vorhanden ist — siehe Data Map neu generieren, um zu erfahren, was die Funktion bewirkt und was erhalten bleibt.

 

Wie lange dauert es?

Das Erstellen einer Data Map kann je nach Größe und Komplexität Ihres Data Warehouse oder Lakehouse bis zu 90 Minuten dauern. Sie müssen die Seite nicht geöffnet lassen — der Vorgang läuft im Hintergrund, und die Schaltfläche Wissen anzeigen wird im Connector-Dialog angezeigt, sobald er abgeschlossen ist.

 

Der Data Map-Editor

Der Data Map-Editor ist die Administratoransicht Ihrer Data Map und über die Admin-Tools der Organisation zugänglich. Er trennt Snowflake- und Databricks-Wissen in eigene Abschnitte, und der zugrunde liegende Geschäftskontext, die Tabellencluster und die Abfragemuster sind als Dateien organisiert, die Sie direkt lesen und bearbeiten können.

 

Im Editor können Administratoren:

  • Durchsuchen Sie die vollständige Data Map — geschäftlicher Kontext, Tabellencluster und gängige Abfragemuster.

  • Bearbeiten Sie Dateien direkt. Gespeicherte Änderungen werden sofort auf die aktive Data Map angewendet und werden zur neuen verlässlichen Quelle; sie müssen nicht den Review-Workflow durchlaufen.

  • Prüfen und handeln Sie auf KI-vorgeschlagene Änderungen aus der selbstlernenden Pipeline. Admins können den Vorschlag genehmigen (die Änderungen werden auf die Data Map angewendet) oder ablehnen (der Vorschlag wird verworfen). Eine direkte Anpassung eines Vorschlags vor der Genehmigung wird derzeit nicht unterstützt — Admins, die ein anderes Ergebnis wünschen, können den Vorschlag ablehnen und die Änderung anschließend selbst vornehmen.

  • Zeigen Sie den Versionsverlauf jeder Datei an und setzen Sie sie bei Bedarf zurück.

Direkte Bearbeitungen im Editor sind für die normale Nutzung dauerhaft, existieren jedoch parallel zum automatisch generierten Inhalt und werden nicht beibehalten, wenn Sie die Data Map für dieses Warehouse neu generieren — siehe unten Data Map neu generieren.

 

Selbstlernen aus Feedback

Die Data Map wird umso besser, je mehr Ihr Team sie nutzt. Wenn ein Nutzer den Daten-Agenten in einer Sitzung korrigiert — zum Beispiel: "verwende fct_queries statt query_events für Abfrageanzahlen" oder "schließe type = 'internal' aus den Metriken zum Abfragevolumen aus" — erfasst Computer dieses Feedback und nutzt es, um die Data Map für alle zu verbessern.

 

Die Pipeline ist darauf ausgelegt, sicher, prüfbar und organisationseinheitlich gemeinsam nutzbar zu sein:

 

1. Feedback erfassen

Wenn ein Nutzer in einer Data Scientist-Sitzung Feedback gibt, protokolliert Computer eine strukturierte Korrektur — die Datei, die betroffen sein soll, den Abschnitt, die vorgeschlagene Änderung und den Sitzungskontext, aus dem sie hervorgegangen ist. Die Data Map selbst wird niemals direkt aus einer Nutzersitzung live bearbeitet; Feedback landet zunächst immer nur in diesem Protokoll.

 

2. Tägliche Verdichtung zu einem vorgeschlagenen Update

Einmal täglich überprüft Computer die in den letzten 24 Stunden für jede Organisation erfassten Korrekturen und erstellt eine einzelne, konsolidierte vorgeschlagene Aktualisierung für die Data Map:

  • Mehrere Korrekturen am selben Bereich werden zu einer zusammengeführt.

  • Widersprüchliche Korrekturen (z. B. eine sagt „Cron-Jobs immer einschließen“, eine andere „Cron-Jobs immer ausschließen“) werden zur manuellen Prüfung zurückgestellt statt automatisch aufgelöst.

  • Jede Korrektur wird dem richtigen Warehouse zugewiesen — eine Snowflake-spezifische Korrektur fließt nicht in die Databricks Data Map ein und umgekehrt.

  • Korrekturen, die nicht zuverlässig zusammengeführt oder zugewiesen werden können, werden zur Prüfung durch einen Administrator markiert, anstatt stillschweigend übernommen zu werden.

Das Ergebnis wird im Data Map-Editor als ein einzelner Vorschlag angezeigt, den Admins überprüfen können.

 

3. Admin review

Admins genehmigen den Vorschlag (die Änderungen werden auf die Data Map angewendet) oder lehnen ihn ab (der Vorschlag wird verworfen). Die Genehmigung ist das, was die Änderungen „bereitstellt“ — die nächste Datenfrage, die Ihr Team stellt, verwendet die aktualisierte Data Map. Es gibt keinen separaten Veröffentlichungsschritt.

Dieses Human-in-the-loop-Muster ist beabsichtigt: Es ermöglicht Computer, kontinuierlich aus der realen Nutzung zu lernen, während Administratoren die Kontrolle darüber behalten, was als verlässliche Ground Truth gilt.

 

Wer kann was tun?

  • Jeder Nutzer in einer Data Scientist-Sitzung kann Feedback geben, das in den vorgeschlagenen Update-Vorschlag des nächsten Tages einfließt.

  • Organisationsadmins können Data Map-Dateien direkt durchsuchen und bearbeiten sowie die täglichen vorgeschlagenen Updates im Data Map-Editor genehmigen oder ablehnen.

  • Es gibt eine Data Map pro Organisation — jedes Mitglied der Organisation führt Abfragen gegen dieselbe gemeinsam genutzte Data Map aus. Es gibt keine Data Map pro Nutzer.

 

 

Die Data Map neu generieren

Admins können Data Map neu generieren jederzeit über das Connector-Dialog ausführen. Derzeit ist die Neuerstellung ein Neubau von Grund auf für das Warehouse, das Sie neu generieren:

  • Die Data Map für dieses Warehouse wird vollständig durch ein neues Ergebnis ersetzt. Manuelle Admin-Bearbeitungen an der Data Map dieses Warehouses werden nicht beibehalten.

  • Die Data Map des anderen Warehouses bleibt unverändert — die Neuerstellung für Snowflake hat keine Auswirkungen auf Databricks und umgekehrt.

  • Zusätzlicher Kontext wird beibehalten und für den neuen Durchlauf erneut angewendet.

  • Ausstehendes Feedback (Korrekturen, die an diesem Tag protokolliert, aber noch nicht in ein vorgeschlagenes Update übernommen wurden) wird beibehalten. Feedback, das bereits genehmigt und auf die Data Map angewendet wurde, gehört zu dem, was ersetzt wird.

  • Die vollständige Versionshistorie bleibt erhalten, sodass frühere Versionen der Data Map weiterhin geprüft werden können.

Da die Neuerstellung die Data Map eines Warehouses und alle daran vorgenommenen Admin-Bearbeitungen ersetzt, sollte sie gezielt ausgeführt werden. Eine sicherere Neuerstellung, die Admin-Bearbeitungen beibehält — sowie ein separater expliziter "full reset" — sind für die Roadmap vorgesehen, sind aber derzeit noch nicht im Produkt verfügbar.

 

Anforderungen

Snowflake

Die Identität, die zum Erstellen der Data Map verwendet wird — das Servicekonto für die Schlüsselpaar- / PAT-Authentifizierung oder der Snowflake-Nutzer des initiierenden Administrators für die OAuth-Authentifizierung — muss beide dieser Ansichten im Schema SNOWFLAKE.ACCOUNT_USAGE lesen können:

  • SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY

  • SNOWFLAKE.ACCOUNT_USAGE.ACCESS_HISTORY (Snowflake Enterprise Edition oder höher)

Wichtig: ACCOUNT_USAGE ist standardmäßig nur für Administratoren verfügbar. Die häufigste Ursache für das Fehlschlagen der Generierung ist eine Rolle, die Ihre regulären Datenbanken lesen kann, aber keinen Zugriff auf ACCOUNT_USAGE hat. Die Lösung besteht darin, IMPORTED PRIVILEGES für die Datenbank SNOWFLAKE zu gewähren.

Falls Sie diesen Zugriff nicht bereits während der Ersteinrichtung gewährt haben, führen Sie Folgendes als ACCOUNTADMIN aus:

GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE <your_role>;

Dann überprüfen Sie dies über die verbindende Rolle:

SELECT 1 FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY LIMIT 1; SELECT 1 FROM SNOWFLAKE.ACCOUNT_USAGE.ACCESS_HISTORY LIMIT 1;

Wenn ACCESS_HISTORY nicht verfügbar ist (Snowflake Standard Edition), greift die Generierung stattdessen ausschließlich auf QUERY_HISTORY zurück. Die Data Map funktioniert weiterhin, liefert jedoch etwas weniger präzise Signale zur Spaltenherkunft und zu Tabellenzugriffszählungen.

 

Ausführliche Einrichtungsanweisungen finden Sie unter Perplexity mit Snowflake verbinden.

 

Databricks

Die Databricks-Generierung verwendet die OAuth-Identität des Initiators und übernimmt dessen Unity Catalog-Berechtigungen — es sind keine zusätzlichen Berechtigungen erforderlich. Ein paar praktische Hinweise:

  • Unity Catalog ist erforderlich. Computer liest Databricks-Systemtabellen für den Abfrageverlauf, die von Unity Catalog abhängen. WorkProjekte, die nur mit hive_metastore betrieben werden, schlagen die Zugriffsprüfung während der Generierung fehl.

  • Ein SQL-Warehouse muss ausgeführt werden, wenn die Generierung gestartet wird. Wenn kein Warehouse ausgeführt wird, starten Sie zuerst eines in Databricks.

  • Alles, was der Initiator in Unity Catalog sehen kann, bestimmt, was in der Data Map landet. Wenn ein Katalog oder Schema für diesen Nutzer ausgeblendet ist, kann Computer es nicht einbeziehen.

Vollständige Einrichtungsanweisungen finden Sie unter Perplexity mit Databricks verbinden.