data-infra
Словарь ↗Контракт данных (data contract)
Контракт данных — это явное и принудительно проверяемое соглашение между поставщиком данных и их потребителями о форме и смысле данных: имена полей, типы, допустимые значения, гарантии свежести и что считается ломающим изменением. Он относится к набору данных или потоку событий как к API — с версионируемой схемой и обещанием не ломать её молча. Он решает проблему хрупких пайплайнов. Во многих компаниях инженер переименовывает столбец в базе приложения, и вниз по потоку тихо ломаются три дашборда и модель оттока — потому что никто не знал об этой зависимости. Контракт делает такие ожидания явными и тестируемыми, так что ломающее изменение ловится в CI, а не в боевых отчётах. Для SaaS-разработчиков контракты важны, как только аналитика и ML начинают зависеть от данных продукта. На практике: держите контракты лёгкими и проверяйте автоматически — валидируйте схемы на границе пайплайна, версионируйте их и падайте сразу при нарушении. Начните с самых ценных потоков данных, а не пытайтесь законтрактовать всё разом.
Похожие термины