Data Intelligence

Datenverträge: Definition, Komponenten und Implementierungsleitfaden

Leitfaden zu Datenverträgen

Ein Datenvertrag ist eine formelle Vereinbarung zwischen einem Datenproduzenten und einem Datenverbraucher, in der die Struktur, die Qualitätsstandards, die Eigentumsverhältnisse, die SLAs und die Nutzungsbedingungen für eine bestimmte Datenquelle ( Datensatz ) festgelegt werden – damit nachgelagerte Teams auf die erhaltenen Daten vertrauen können und vorgelagerte Teams genau wissen, wofür sie verantwortlich sind. Dieser Leitfaden erläutert, was ein Datenvertrag ist, was er beinhaltet, wie man ihn umsetzt und wie das „ Actian Data Intelligence-Plattform “ Datenverträge in die Pipeline-Entwicklung integriert, um Qualität und Zuverlässigkeit bereits an der Quelle sicherzustellen.

Ohne einen Datenvertrag führt eine Schemaänderung im Quellsystem stillschweigend dazu, dass ein nachgelagerter Bericht nicht mehr funktioniert. Eine Pipeline liefert Daten mit zwei Stunden Verspätung, ohne dass eine Benachrichtigung erfolgt. Ein Feld, auf das sich Analysten verlassen, verschwindet ohne Vorwarnung. Datenverträge verhindern all dies, indem sie die Erwartungen explizit festlegen, versionieren und durchsetzbar machen, bevor Probleme die Produktionsumgebung erreichen.


Was ist ein Datenvertrag?

Ein Datenvertrag ist ein Dokument – in der Regel im maschinenlesbaren YAML- oder JSON-Format –, in dem festgelegt ist, welche Daten ein Datenanbieter in welchem Format, in welcher Qualität, nach welchem Zeitplan und unter welchen Nutzungsbedingungen bereitstellt. Er entspricht in Bezug auf Daten einem API-Vertrag: einer definierten Schnittstelle zwischen dem System, das Daten erzeugt, und den Systemen, die diese Daten nutzen.

So wie ein API-Vertrag regelt, wie Softwaresysteme miteinander kommunizieren, regelt ein Datenvertrag den Datenfluss zwischen Teams, Pipelines und Systemen. Wenn sich ein Produzent und ein Verbraucher auf einen Datenvertrag einigen und einbetten in ihre Pipelines einbetten , lösen Schemaänderungen Warnmeldungen statt stiller Fehler aus, Qualitätsverstöße werden bereits an der Quelle erkannt statt erst im Quartalsbericht entdeckt, und die Zuständigkeiten werden dokumentiert statt nur im institutionellen Gedächtnis festgehalten.


Was ein Datenvertrag enthält

Der Branchenstandard für Datenverträge ist der Open Data Contract Standard (ODCS), ein Projekt der Linux Foundation, das von Bitol gepflegt wird. Ein vollständiger Datenvertrag umfasst sieben Komponenten.

Komponente Was damit gemeint ist Beispiel
Grundlagen Vertrags-ID, Name, Version, Status und die verwendete Standardversion id: orders-v1version: 1.0.0status: active
Schema Tabellenstruktur, Spaltennamen, Datentypen, Primärschlüssel und Geschäftslogik für jedes Feld order_id: string, primary key / order_status: string, valid values: [pending, complete, cancelled]
Regeln für die Datenqualität Validierungsprüfungen, die bestanden werden müssen, bevor Daten als lieferbar gelten Anzahl der Zeilen über 1.000 / Null-Rate unter 2 % bei Pflichtfeldern / benutzerdefinierte SQL-Validierungslogik
Team Wer ist für den Vertrag verantwortlich und kümmert sich um dessen Abwicklung, welche Aufgaben haben diese Personen und wie können Verbraucher sie erreichen? Eigentümer: Data Engineering / Verantwortlicher: Revenue Analytics / Support: #data-contracts Slack
SLAs Lieferplan, Frischegarantie und Verfügbarkeitszusagen Daten werden täglich um 6 Uhr UTC aktualisiert / 99,5 % Verfügbarkeit / maximale Latenz von 15 Minuten
Nutzungsbedingungen Was Verbraucher mit den Daten tun dürfen und was nicht Für interne Analysen zugelassen / Nicht für die Weitergabe an Dritte zugelassen / Umgang mit personenbezogenen Daten erforderlich
Server Wo sich die Daten befinden und wie man darauf zugreift Snowflake-Datenbank, -Schema und Tabellenübersicht / umgebungsspezifische Verbindungsdaten

Ein Minimalvertrag kann mit den Grundlagen, dem Schema und den Qualitätsregeln beginnen. SLAs, Nutzungsbedingungen und Serverdaten werden im Laufe der Weiterentwicklung des Programms hinzugefügt.


Datenvertrag im Vergleich zu verwandten Konzepten

Datenvertrag Regel zur Datenqualität SLA Schema
Was es ist Eine formelle Vereinbarung über Schema, Qualität, Eigentumsverhältnisse, SLAs und Nutzungsbedingungen für einen Datensatz Eine einzelne Validierungsprüfung, die auf ein Feld oder eine Tabelle angewendet wird Eine Service-Level-Vereinbarung (Verfügbarkeit, Aktualität, Lieferzeit) Die strukturelle Definition einer Tabelle oder Datensatz
Geltungsbereich Von Anfang bis Ende: vom Erzeuger zum Verbraucher Eine einzige Qualitätsdimension Nur Lieferung und Verfügbarkeit Nur Struktur
Wer legt das fest? Zwischen Hersteller und Verbraucher vereinbart Festgelegt durch Data Engineering oder Data Stewardship Vom Data-Engineering- oder Plattform-Team festgelegt Festgelegt durch Data Engineering
Wie wurde das durchgesetzt? Pipeline-Validierung, Alarmierung, Governance-Workflows Automatisierte Qualitätsprüfungen Überwachung und Alarmierung Schema-Registry, DDL
Beziehung Ein Datenvertrag enthält Qualitätsregeln, SLAs und Schemata als Bestandteile Eine Komponente eines Datenvertrags Eine Komponente eines Datenvertrags Eine Komponente eines Datenvertrags

Datenvertrag vs. Data Governance :Eine Data Governance legt unternehmensweite Standards für die Verwaltung von Daten fest. Ein Datenvertrag wendet diese Standards auf einen bestimmten Datensatz an, Datensatz zwischen einem bestimmten Erzeuger und einem bestimmten Verbraucher Datensatz . Governance-Richtlinien sind unternehmensweit gültig; Datenverträge beziehen sich auf Datensatz.

Datenvertrag vs. Datenkatalog:EinDatenkatalog dokumentiert, welche Datenbestände vorhanden sind, sowie deren Metadaten. Ein Datenvertrag formalisiert die Verpflichtungen, die ein Produzent in Bezug auf einen bestimmten Datenbestand eingeht. Ein Katalogeintrag beschreibt einen Datensatz; ein Datenvertrag regelt dessen Bereitstellung.


So funktionieren Datenverträge

Ohne Datenvertrag: Ein Data-Engineering-Team ändert das Schema der orders Tabelle – Umbenennung customer_id zu cust_id und das Weglassen des discount_code Feld. Die Änderung wird an einem Dienstag ausgeliefert. Am Mittwochmorgen sind drei nachgelagerte Pipelines ausgefallen, zwei Dashboards zeigen Nullwerte an, und eine Maschinelles Lernen hat unbemerkt Nullen für ein Feld erhalten, das sie als Schlüsselprädiktor verwendet. Das Analyseteam identifiziert das Problem, als ein Vizepräsident nach dem Rückgang der Umsatzzahlen fragt.

Mit einem Datenvertrag: Die gleiche Schemaänderung führt zu einem Fehler bei der Vertragsvalidierung, bevor die Änderung veröffentlicht wird. Der Datenvertrag legt fest, dass customer_id ein Pflichtfeld vom Typ „Zeichenkette“ ist und dass discount_code müssen mit einer Nullrate von unter 5 % vorhanden sein. Das Entwicklerteam erhält eine Benachrichtigung, aus der hervorgeht, welche nachgelagerten Verbraucher von den betroffenen Feldern abhängig sind. Es koordiniert die Änderung mit den Verbrauchern, aktualisiert die Vertragsversion und führt die Bereitstellung anhand eines Migrationspfads durch. Es kommt zu keinen Unterbrechungen in den Pipelines.


Wie Datenverträge umgesetzt werden

Schritt 1: Definieren Sie den Produzenten und den Konsumenten

Ermitteln Sie das Team, das Eigentümer des Datenbestands ist (der Produzent), sowie die Teams, die diesen nutzen (die Konsumenten). Datenverträge funktionieren am besten, wenn Produzenten und Konsumenten den Vertrag gemeinsam aushandeln, anstatt dass er einer Seite aufgezwungen wird.

Schritt 2: Den Vertrag aufsetzen

Beginnen Sie mit den drei wesentlichen Komponenten: Grundlagen (ID, Version, Status), Schema (Feldnamen, Typen, Einschränkungen) und Qualitätsregeln (Validierungsprüfungen). Verwenden Sie ein maschinenlesbares Format – YAML ist der Standard für ODCS-Verträge. Speichern Sie die Vertragsdatei zusammen mit dem von ihr geregelten Pipeline-Code in der Versionskontrolle.

Beispiel für einen Minimalvertrag (ODCS-Format):

apiVersion: v3.1.0
kind: DataContract
id: orders-daily
name: Orders
version: 1.0.0
status: active

schema:
  - name: orders
    physicalType: TABLE
    Eigenschaften:
      - Name: order_id
        logischerTyp: Zeichenfolge
        Primärschlüssel: true
      - Name: order_status
        logischerTyp: Zeichenfolge
      - Name: customer_id
        logischerTyp: Zeichenfolge
      - Name: order_amount
        logischerTyp: Zahl

Qualität:
  - Typ: Zeilenanzahl
    muss größer sein als: 1000
  - Typ: Vollständigkeit
    Spalte: order_id
    muss größer sein als: 0,99

Team:
  - Name: Data Engineering
    Rolle: Eigentümer

Schritt 3: einbetten in die Pipeline

Verbinden Sie den Vertrag mit der Pipeline, die die Daten erzeugt. Die im Vertrag festgelegten Qualitätsregeln werden automatisch ausgeführt, sobald die Pipeline läuft. Wenn eine Regel fehlschlägt – beispielsweise bei einer Zeilenanzahl unterhalb des Schwellenwerts, einer Null-Rate über dem Grenzwert oder einer Schema-Nichtübereinstimmung –, benachrichtigt die Pipeline den Verantwortlichen und stoppt optional die Datenübermittlung, anstatt fehlerhafte Daten an nachgelagerte Systeme weiterzuleiten.

Schritt 4: Den Vertrag mit einer Versionsnummer versehen

Wenn sich das Schema oder die Qualitätsstandards ändern, erhöhen Sie die Vertragsversion. Achten Sie nach Möglichkeit auf Abwärtskompatibilität. Ist eine Änderung, die die Kompatibilität beeinträchtigt, unvermeidbar, informieren Sie alle im Vertrag genannten Nutzer, bevor die Änderung veröffentlicht wird. Der Versionsverlauf in der Quellcodeverwaltung enthält ein Protokoll Änderungen sowie der Personen, die diese genehmigt haben.

Schritt 5: Im Datenkatalog veröffentlichen

Registrieren Sie den Vertrag im Datenkatalog Nutzer ihn finden, seinen aktuellen Status einsehen und Benachrichtigungen über Änderungen abonnieren können. Ein im Katalog sichtbarer Vertrag sorgt dafür, dass Datenbestände selbsterklärend sind – Nutzer können das Schema, die Qualitätsstandards, die SLAs und die Nutzungsbedingungen einsehen, ohne das erstellende Team direkt danach fragen zu müssen.

Schritt 6: Überwachen und durchsetzen

Richten Sie eine Überwachung ein, die bei jedem Pipeline-Durchlauf die Vertragskonformität überprüft: Schema-Validierung, Bewertung der Qualitätsregeln und SLA . Leiten Sie Verstöße an den Stewardship-Workflow des Verantwortlichen weiter. Verfolgen Sie die Verstoßquoten im Zeitverlauf als Kennzahl für die Qualitätslage.


Datenverträge und Data Mesh

Datenverträge sind ein grundlegender Bestandteil der Data-Mesh-Architektur. In einem Data Mesh sind Domänen-Teams für Datenprodukte verantwortlich und veröffentlichen diese zur Nutzung durch andere Domänen. Ein Datenvertrag ist die formale Schnittstelle, die ein Datenprodukt nutzbar macht: Er legt fest, was das Produkt liefert, nach welchem Standard und unter welchen Bedingungen, sodass die nutzenden Domänen zuverlässig darauf aufbauen können.

Ohne Datenverträge liefert ein Data Mesh Datenprodukte, auf die sich andere Teams nicht verlassen wollen. Mit Datenverträgen verfügt jedes Datenprodukt über eine versionierte, durchsetzbare Schnittstelle – dasselbe Prinzip, das Microservices-Architekturen zuverlässig macht, wird hier auf Daten angewendet.


Datenverträge und KI

Die KI-Governance schafft eine neue Nachfrage nach Datenverträgen. Jeder Datensatz , der zum trainieren feinabstimmen Modells Datensatz , erfordert dieselben Zusagen, die ein Datenvertrag bietet: ein definiertes Schema, dokumentierte Qualitätsstandards, klare Zuständigkeiten und Bestimmungen zur angemessenen Nutzung.

Verträge für Trainingsdaten: Ein Datenvertrag für einenDatensatz , welche Felder enthalten sind, welche Qualitätsanforderungen sie erfüllen müssen, ob der Datensatz personenbezogene Daten Datensatz (und wenn ja, unter welchen Verarbeitungsauflagen) und wer ihn für die KI-Nutzung zertifiziert hat. Dieser Vertrag dient als Dokumentationsunterlage, die für die Reproduzierbarkeit des Modells und die Anforderungen an KI-Audits erforderlich ist.

RAG-Pipeline-Verträge: Retrieval-Augmented-Generation-Pipelines ziehen Dokumente und Datensätze abfragen in die Kontextfenster des LLM ein. Ein Datenvertrag für einen RAG-fähigen Datensatz , welche Felder unter welchen Zugriffsbedingungen und mit welcher Aktualitätsgarantie abgerufen werden können.

Feature-Store-Verträge: Maschinelles Lernen wandeln Rohdaten in Modell-Features um. Ein Datenvertrag zwischen dem Feature-Store und der Training legt das Feature-Schema, die erwarteten statistischen Verteilungen (Grundlage für die Drift-Erkennung) sowie das SLA die Bereitstellung von Features zum Zeitpunkt der Inferenz fest.


Datenverträge in regulierten Branchen

Finanzdienstleistungen: GemäßBCBS 239 müssen Banken die Datengenauigkeit und die Datenherkunft für die Risikoberichterstattung nachweisen. Ein Datenvertrag zwischen einem Quellsystem und der Risikoberichterstattungs-Pipeline formalisiert die von BCBS 239 geforderten Qualitätsstandards und Schemavorgaben – und generiert als Nebenprodukt des täglichen Betriebs die Dokumentation, die von den Prüfern angefordert wird.

Gesundheitswesen:Die HIPAAschreibt eine dokumentierte Rechenschaftspflicht für geschützte Gesundheitsdaten (PHI) vor. Ein Datenvertrag für einen Datensatz geschützte Gesundheitsdaten Datensatz , legt die Vertraulichkeitsstufe, Zugriffsbeschränkungen, Anforderungen an den Umgang mit den Daten sowie die zulässigen Verwendungszwecke fest. Wenn im Rahmen eines Audits die Frage gestellt wird, wie geschützte Gesundheitsdaten in einer bestimmten Pipeline verwaltet wurden, liefert der Datenvertrag die Antwort.

Pharmazeutika: Die Vorschriften der FDA gemäß 21 CFR Part 11 sowie die GxP-Vorschriften verlangen Datenintegrität für klinische Daten. Datenverträge für klinische Datensätze dokumentieren das Schema, die Qualitätsstandards und die Nachverfolgbarkeitskette, die für die Einhaltung der Anforderungen an die Datenintegrität erforderlich sind.

FAQ

Ein Datenvertrag ist eine formelle Vereinbarung zwischen einem Datenproduzenten und einem Datenverbraucher, in der das Schema, die Qualitätsstandards, die Eigentumsverhältnisse, die SLAs für die Bereitstellung sowie die Nutzungsbedingungen für einen bestimmten Datensatz festgelegt werden. Er macht die Erwartungen klar und durchsetzbar, sodass nachgelagerte Teams zuverlässig auf den Daten aufbauen können, die sie erhalten.

Ein SLA einen Aspekt eines Datenvertrags SLA : den Lieferzeitplan, die Aktualitätsgarantie und die Verfügbarkeitszusage. Ein Datenvertrag ist umfassender – er umfasst das SLA die Schemadefinition, Qualitätsregeln, Eigentumsverhältnisse und Nutzungsbedingungen. Ein SLA den Nutzern SLA , wann die Daten eintreffen werden; ein Datenvertrag gibt ihnen Auskunft darüber, was die Daten enthalten und welche Standards sie erfüllen werden.

Der Open Data Contract Standard (ODCS) ist ein von Bitol betreutes Projekt der Linux Foundation, das ein maschinenlesbares Format für Datenverträge definiert. Er umfasst Grundlagen, Schemata, Qualitätsregeln, Teamverantwortung, SLAs, Nutzungsbedingungen und Serverkonfiguration in einem YAML-Dokument. Er ist der sich etablierende Industriestandard für Datenverträge in modernen Datenstacks.

In den meisten Fällen nicht. Datenvereinbarungen sind interne Governance-Dokumente, die dazu dienen, Standards zwischen Teams zu koordinieren und durchzusetzen. Es handelt sich dabei nicht um rechtliche Verträge im kommerziellen Sinne. Ihr Nutzen liegt im operativen Bereich: Sie machen Erwartungen explizit, schaffen Verantwortlichkeiten und ermöglichen eine automatisierte Durchsetzung.

Der Datenproduzent erstellt den ersten Entwurf in Zusammenarbeit mit den Datennutzern. Der Produzent legt fest, wozu er sich verpflichten kann; der Nutzer definiert, was er benötigt. Der Vertrag spiegelt das ausgehandelte Ergebnis wider. Ein Datenverantwortlicher oder Governance-Beauftragter kann den Vertrag vor seiner Veröffentlichung prüfen und genehmigen.

Indem die Schema- und Qualitätsprüfung direkt in die Pipeline integriert wird, die die Daten erzeugt. Wenn in einem Vertrag festgelegt ist, dass ein Feld vorhanden sein muss und die Nullwertquote unter 2 % liegen muss, die Pipeline jedoch Daten mit einer Nullwertquote von 15 % liefert, schlägt die Vertragsprüfung fehl und der Verantwortliche wird benachrichtigt, bevor fehlerhafte Daten die nachgelagerten Verbraucher erreichen. Schemaänderungen, die die Pipelines der Verbraucher beeinträchtigen würden, werden bereits vor Deployment erkannt Deployment danach.

Datenqualitätsregeln sind Bestandteil eines Datenvertrags. Der Vertrag legt fest, welche Qualitätsschwellenwerte die Daten erfüllen müssen; die Qualitätsvalidierungsebene setzt diese bei der Ausführung der Pipeline durch. Ein Datenvertrag ohne Qualitätsregeln regelt lediglich das Schema und die Bereitstellung – er garantiert jedoch nicht, dass die Daten innerhalb des Schemas vertrauenswürdig sind.

In einem Data Mesh sind die Fachteams für die Datenprodukte verantwortlich und veröffentlichen diese. Ein Datenvertrag ist die formale Schnittstelle, die ein Datenprodukt nutzbar macht: Er definiert das Schema, die Qualitätsstandards, die SLAs und die Nutzungsbedingungen, auf die sich die nutzenden Fachbereiche verlassen können. Ohne Datenverträge sind Data-Mesh-Produkte undokumentierte Black Boxes. Mit ihnen verfügt jedes Produkt über eine versionierte, durchsetzbare Schnittstelle.