Was ist ein Datenvertrag (Data Contract)?
Ein Datenvertrag (Data Contract) ist eine formelle Vereinbarung zwischen dem Produzenten und dem Konsumenten eines Datensatzes, die Erwartungen und Verpflichtungen bezüglich der Daten definiert: welches Schema sie haben werden, welche Qualitätsniveaus der Produzent garantiert, wie häufig sie aktualisiert werden, wer für was verantwortlich ist und was bei Nichteinhaltung der Bedingungen geschieht.
Datenverträge entstehen als Antwort auf ein häufiges Problem: Änderungen an Upstream-Daten brechen nachgelagerte Anwendungen und Berichte ohne Vorwarnung. Ohne einen expliziten Vertrag gibt es keine Möglichkeit zu wissen, was einen „Breaking Change" darstellt oder wer wen informieren sollte. Der Vertrag formalisiert diese Erwartungen, sodass beide Parteien genau wissen, woran sie sich halten können.
Ein typischer Datenvertrag umfasst: Schemadefinition (Felder, Typen, nullable), Mindestqualitätsregeln (Vollständigkeit > 99 %, Eindeutigkeit in Feld X), Frische-SLAs (Daten alle 4 Stunden aktualisiert), Änderungsrichtlinie (semantische Versionierung, Benachrichtigungszeitraum) und Metadaten des Owners, der Konsumenten und der Kommunikationskanäle.
Warum ist das wichtig?
In Organisationen mit Dutzenden oder Hunderten von Datenpipelines sind nicht koordinierte Änderungen die Hauptursache für Vorfälle. Eine Studie von Monte Carlo Data zeigt, dass Datenteams bis zu 40 % ihrer Zeit damit verbringen, Qualitäts- und Pipeline-Probleme zu lösen, von denen viele durch nicht kommunizierte Upstream-Änderungen verursacht werden.
Datenverträge reduzieren diese Vorfälle, indem sie Erwartungen explizit machen. Wenn ein Produzent weiß, dass Konsumenten von einem bestimmten Schema abhängen, überlegt er zweimal, bevor er eine Spalte umbenennt. Und wenn ein Konsument weiß, dass er einen Qualitäts-SLA hat, kann er seine Prozesse in dem Wissen gestalten, dass die Daten bestimmte Standards erfüllen werden.
Wie funktioniert das in der Praxis?
Datenverträge werden typischerweise in einem maschinenlesbaren Format (YAML, JSON) definiert und in die CI/CD-Pipeline integriert. Bevor eine Schemaänderung eingesetzt wird, wird sie gegen bestehende Verträge validiert. Wenn die Änderung einen Vertrag verletzt (z. B. eine Spalte entfernen, die der Konsument erwartet), stoppt die Pipeline und benachrichtigt die betroffenen Parteien.
Der Lebenszyklus eines Vertrags umfasst Phasen: Entwurf (Draft), Vorschlag (die Konsumenten überprüfen ihn), aktiv (in Kraft) und veraltet (durch eine neue Version ersetzt). Data-Governance-Tools überwachen die Einhaltung automatisch, erkennen Qualitäts- oder Frischeverstöße und benachrichtigen den Owner.
Datenvertrag (Data Contract) in Linedat
Linedat implementiert Datenverträge mit einem Statussystem (Entwurf, Vorschlag, aktiv, veraltet) und automatisierter Compliance-Validierung. Der Compliance-Dienst überprüft kontinuierlich, ob Daten die Vertragsbedingungen erfüllen, und dokumentiert Verstöße, wenn Nichteinhaltungen erkannt werden, und integriert Verträge mit Lineage und Katalog.
Verwandte Begriffe
Data Mesh ist eine dezentralisierte Architektur, bei der jede Geschäftsdomäne für ihre eigenen Datenprodukte verantwortlich ist.
Was ist Datenqualität (Data Quality)?Datenqualität misst, ob Daten präzise, vollständig, konsistent und aktuell sind. Erfahre, wie du effektive Qualitätsregeln implementierst.
Was ist Data Governance?Data Governance ist das Rahmenwerk aus Richtlinien, Prozessen und Rollen, das Datenqualität, Sicherheit und korrekte Nutzung in einer Organisation gewährleistet.
Was ist Data Lineage?Data Lineage ist die Nachverfolgbarkeit von Daten vom Ursprung bis zum Ziel, einschließlich aller Transformationen und Abhängigkeiten.
