- Jochen Christ
- Dienstag, 10. Dez 2024
- 10:00 - 10:45
- Kristall | Ebene 3
- Session
In modernen verteilten Datenarchitekturen, wie z. B. Data Mesh, werden Daten zunehmend zwischen verschiedenen Teams ausgetauscht. Wir brauchen eine Möglichkeit, uns auf die Qualität und Stabilität der von uns verwendeten Daten zu verlassen. Data Contracts sind so ähnlich wie OpenAPI- oder AsyncAPI-Spezifikationen, aber die Datenwelt funktioniert etwas anders. Ein Data Contract definiert das Schema der bereitgestellten Daten und deren Qualitätsattribute in einem YAML-Format. Datenverträge können auch Beispieldaten und eine semantische Beschreibung enthalten.
Data Contracts legen zudem die Nutzungsbedingungen für die Verwendung von Daten fest. Data Contracts sind in erster Linie auch ein Kommunikationsinstrument, um ein gemeinsames Verständnis darüber auszudrücken, wie Daten strukturiert und interpretiert werden sollten. Sie machen implizite semantische und qualitative Erwartungen explizit. Später in der Entwicklung und Produktion dienen sie auch als Grundlage für die Codegenerierung, das Testen, die Schemavalidierung, die Qualitätskontrolle, die Überwachung, die Zugriffskontrolle und die Richtlinien für die Verwaltung der Datenverarbeitung.
In diesem Vortrag möchte ich die Data Contract Specification (datacontract.com) und das Data Contract CLI zur Validierung von Data Contracts in CI/CD-Pipelines vorstellen.