Bollywood HungamaAnushka Sen named Indian global ambassador for Newport Beach Film Festival 2026PunchChina pulls out of Sri Lanka port logistics ventureInquirer5 fishermen nabbed for alleged blast fishing in Occidental MindoroThe Jerusalem PostMassive overnight Russian attack leaves over half a million Ukrainians without power, Zelensky saysInquirer EntertainmentFilipino model Christina Nadin walks Victoria’s Secret Fashion Show 2026 runwayUN NewsProtecting Earth’s fragile biodiversity takes spotlight at Armenia talksCBS NewsCartel members linked to murders of 10 workers from Canadian companyVarietyBrit Coming-of-Age Comedy ‘The State of Us’ Lands U.K. Theatrical Deal With Vertigo (EXCLUSIVE)GIGAZINEMetaが「ニュースサイトからの情報収集を可能とする利用規約」を削除ZDF heuteEntdecken Sie das ZDF-NachrichtenstudioThe Sydney Morning HeraldPatterson hits 16th first-class tonObservador DesportoReitoria da Fernando Pessoa recusa regulamento sem pré-aviso
The Daily Newsstand · Free, Always
Monday, October 19, 2026

Единая платформа данных: где CDO провести границу между центром и доменами

Translate

Финансовая служба хочет одну согласованную цифру продаж. Коммерческий блок — менять расчёты без очереди к центральной команде. Информационная безопасность — понимать, кто видит данные клиентов. Разработчики платформы — перестать разбирать каждое изменение статуса заказа вручную.

Все четыре требования разумны. Но фраза «построим единую платформу данных» ещё не объясняет, кто будет принимать решения, оплачивать эксплуатацию и исправлять историю после ошибки.

Разберём архитектурное решение на уровне CDO: какие функции имеет смысл централизовать, какие оставить предметным командам и как провести между ними проверяемую границу. Под доменом здесь понимается область бизнеса с собственными правилами и ответственным руководителем: например, продажи, платежи или логистика. Это не обязательно отдельный микросервис, департамент или кластер.

Дальше — учебная ситуация, а не описание внедрения и его результатов. Предположим, у компании есть несколько каналов продаж, общий финансовый контур и команды, способные поддерживать собственные преобразования данных. Цель — согласованная управленческая отчётность и более независимое развитие аналитики. Субсекундный антифрод и управление складским оборудованием в границы этого решения не входят: у них другие требования к задержкам и отказам.

Сначала решение бизнеса, затем схема платформы

Допустим, коммерческой команде нужен предварительный результат дня к 09:00 следующего утра, а финансам — воспроизводимый результат закрытого периода. Это разные продукты, даже если на экране у обоих написано «продажи».

У первого возможны поздние события и пересчёт. У второго должны быть зафиксированы версия правил, граница периода и процедура корректировки. Нельзя решить это требованием «все берут данные из одной таблицы»: таблица не определяет, какую именно версию результата нужно использовать.

Перед выбором архитектуры CDO вместе с потребителями фиксирует три группы ограничений.

  • Решения и цена задержки. Кто использует показатель, какое действие выполняет и сколько времени может работать с последним подтверждённым состоянием.

  • Обязательства по данным. Какие операции считаются, на какую дату, в какой валюте, как учитываются отмены, возвраты и поздние изменения. Где требуется воспроизведение истории, а где достаточно текущего состояния.

  • Способность поддерживать результат. Есть ли у владельца бюджет, инженерная команда и время на восстановление. Кто доступен при инциденте и кто может согласовать изменение бизнес-правила.

Для учебного примера примем: предварительная витрина готова к 09:00, её состояние явно помечено; закрытый период нельзя незаметно переписать; персональные поля не выдаются всем аналитикам по умолчанию. Это выбранные условия задачи, а не норматив для любой организации.

Если эти условия не согласованы, спор между DWH, lakehouse и data mesh будет преждевременным. Любой из подходов можно реализовать так, что все данные окажутся рядом, а ответственность останется между командами.

Здесь три разных вида централизации

Управление правилами, выполнение преобразований и физическое хранение — отдельные решения.

Общие правила. Кто утверждает определение управленческих продаж, категории доступа, обязательные проверки и порядок изменения публичных наборов данных.

Общая эксплуатационная платформа. Кто предоставляет развёртывание, вычисления, идентификацию, журналирование, наблюдаемость, резервное копирование и восстановление.

Владение продуктами данных. Кто определяет содержимое конкретного набора, развивает его интерфейс, отвечает за качество и разбирает обращения потребителей.

Можно хранить доменные продукты в одном DWH, но иметь разных владельцев и независимые циклы изменений. Можно разнести хранение по нескольким системам, но централизованно утверждать определения финансовых показателей. Отдельный кластер сам по себе не создаёт доменную ответственность; общий кластер не требует единой очереди на каждое преобразование.

Далее рассмотрим смешанную модель: общие платформенные механизмы и обязательные политики, доменное владение предметными данными, отдельно назначенный владелец сквозного финансового продукта. Это кандидат для выбранных условий, а не обязательный этап зрелости.

Целевая архитектура: путь данных и границы ответственности

В рассматриваемой модели поток выглядит так:

  1. Операционные системы → зона приёма. Команды источников отвечают за смысл передаваемых событий или выгрузок. Платформа — за согласованный механизм доставки и фиксацию состояния загрузки. Доступ к исходным данным ограничен; зона приёма не становится универсальным интерфейсом для BI.

  2. Зона приёма → доменные продукты. Продажи публикуют заказы и изменения их состояния; платежи — поступления и возвраты; логистика — исполнения и отмены доставки. У каждого продукта есть описанное зерно, ключи, история, условия полноты и владелец.

  3. Доменные продукты → сквозной финансовый продукт. Назначенная команда собирает управленческий результат из опубликованных интерфейсов, реализует согласованные правила и отвечает за междоменные сверки.

  4. Сквозной продукт → семантический слой и потребители. BI, выгрузки и прикладная аналитика получают определённую версию показателя. Семантический слой закрепляет расчёты и доступные разрезы, но не восстанавливает потерянную историю и не исправляет неполные источники.

Поверх этого пути работают общие механизмы: каталог, контроль доступа, журнал изменений, сведения о зависимостях и состоянии запусков. Они должны охватывать весь путь до потребителя, включая извлечённые копии там, где организация способна ими управлять.

Граница продукта — опубликованный интерфейс с обязательствами. Это может быть представление, версионированный набор файлов или поток событий. Выбор зависит от требований к потреблению. Внутренние таблицы команды не должны автоматически становиться внешним договором только потому, что к ним легко выдать SELECT.

У физического размещения остаются собственные ограничения: изоляция нагрузок, требования к размещению данных, стоимость передачи, восстановление и доступность компетенций. Их нужно проверять отдельно от организационной схемы.

Что именно оставить платформенной команде

Платформа отвечает за повторяемые механизмы, которыми пользуются разные продукты:

  • получение и отзыв технических доступов, управление секретами;

  • подготовку среды и развёртывание по стандартному пути;

  • запуск заданий, лимиты ресурсов, сбор журналов и сигналов о состоянии;

  • возможность подключить проверки качества и заблокировать непроверенную публикацию;

  • регистрацию продуктов, их версий и технических зависимостей;

  • средства резервного копирования и восстановления с проверенными ограничениями.

Но платформа не должна единолично решать, является ли отменённый заказ продажей. Она может проверить, что правило описано, тест выполняется и результат виден потребителю. Правильность предметного смысла принимает уполномоченный владелец вместе с бизнесом.

Практический критерий самостоятельности домена — обычный выпуск изменения проходит по готовому пути без ручной заявки платформенным инженерам. Если публикация каждого поля требует отдельной настройки, архитектура уже делегировала обязанности, но ещё не дала инструменты для их исполнения.

Обратная крайность — назвать платформой пустую инфраструктуру и потребовать, чтобы каждый домен самостоятельно построил каталог, аудит и восстановление. Тогда общий бюджет может уменьшиться, а суммарные расходы организации — вырасти.

Кто владеет цифрой на стыке доменов

Проблема появляется, когда продажи считают оформленные заказы, платежи — поступившие деньги, а финансы ждут управленческий показатель с учётом отмен и возвратов.

Назначить «всех владельцами качества» недостаточно. В учебной модели ответственность распределим так.

Продажи отвечают за корректность заказа, статусов и истории изменений в своём опубликованном продукте. Платежи — за события поступления и возврата, их идентификаторы и связь с заказом. Эти владельцы исправляют ошибки своих продуктов и сообщают, какие интервалы затронуты.

Владелец финансового продукта отвечает за смысл итогового показателя, порядок закрытия и пересчёта периода. Команда этого продукта реализует соединения, распределения и междоменные проверки, поддерживает публикацию и проводит восстановление своего слоя. Финансовый руководитель принимает правила учёта для данной управленческой задачи; это не задача инфраструктурной команды.

Платформа отвечает за работу предоставленного механизма запуска и публикации. Информационная безопасность задаёт требования к защите, а владельцы и технические команды реализуют их в своих продуктах и интерфейсах.

CDO обеспечивает согласование границ, бюджетов и эскалаций. Ему не обязательно лично утверждать каждое изменение SQL. Но нужен человек с полномочиями принять решение, когда локальное удобство одного домена ухудшает обязательства перед другими.

Результат такого распределения стоит проверить на конкретном инциденте. Если платёж задвоен в исходном продукте, кто исправляет его и сообщает об исправлении? Если платежи корректны, а сумма выросла после соединения, кто чинит сквозную витрину? Если данные правильные, но публикация не переключилась, кто восстанавливает платформенный механизм? У этих событий должны быть разные ответственные.

Контракт: не только названия колонок

Для продукта заказов одного описания типов недостаточно. Статус может сохранить тип STRING и при этом изменить значение для бизнеса.

Минимальный полезный контракт в нашей ситуации содержит:

  • одну строку на заказ или одну строку на изменение — с точным различием;

  • ключи заказа и события, правила обработки повторов;

  • смысл суммы, валюту, единицу измерения и отношение к скидкам и возвратам;

  • различие времени события и времени поступления;

  • условия, при которых интервал считается полным, и правила поздних исправлений;

  • разрешённые способы использования, чувствительные поля и владельца доступа;

  • обязательства по доступности, свежести и сроку поддержки версии;

  • процедуру уведомления, миграции потребителей и восстановления истории.

Изменение формата — только один вид несовместимости. Переход от «заказ создан» к «заказ оплачен» в условии отбора может оставить схему прежней и сломать всех потребителей по смыслу.

Поэтому общая проверка схемы дополняется предметными тестами и согласованием изменения обязательств. Полезно заранее разделить то, что можно менять независимо, и то, что требует участия потребителей. Срок поддержки старой версии выбирается с учётом реальной стоимости двух контуров, а не копируется из шаблона.

Как не выпустить согласованную по схеме, но неверную витрину

Представим, что в новую версию финансового продукта попал JOIN, размноживший заказы из-за нескольких платежей. Все задания завершились успешно. Проверка типов тоже прошла.

Для этого сценария нужен контроль перед публикацией версии для потребителя. В предлагаемой модели процесс состоит из пяти шагов.

1. Зафиксировать входы. Запуск использует определённые версии доменных продуктов или согласованные границы загрузки. Сравнивать источник «на сейчас» с витриной «на вчера» бессмысленно, даже если оба запроса технически корректны.

2. Построить кандидата. Новое состояние витрины пока не видно потребителю как актуальное. Способ изоляции зависит от хранилища: отдельная версия, таблица или набор разделов. Универсального атомарного переключения между произвольными системами здесь не предполагается.

3. Проверить обещания продукта. Для витрины с одной строкой на заказ проверяются уникальность ключа, потерянные и лишние ключи, сверка денежных значений по согласованным правилам. Равенство общих сумм не доказывает правильность: ошибки могут компенсироваться. Допустимое расхождение, если оно вообще разрешено, определяется отдельно для каждого показателя и причины.

4. Принять решение о выдаче. При провале обязательной проверки кандидат не публикуется, владелец получает сигнал с затронутыми данными. Последняя проверенная версия может остаться доступной только с явным временем актуальности и в пределах согласованного срока устаревания. После его превышения для критического потребителя доступ или действие блокируется по заранее выбранной политике. Для другой задачи допустимо предупреждение; это решение потребителя и владельца риска.

5. Восстановить согласованность. Исправить причину, пересчитать затронутую историю, повторить сверки, опубликовать исправленную версию и уведомить зависимых потребителей. Инцидент закрывается после проверки нужного интервала и обязательных downstream-продуктов, а не после первого зелёного запуска.

У этого контроля два владельца: предметная команда определяет содержание проверок и исправляет данные, платформа обеспечивает механизм выполнения и остановки публикации. Если блокировка существует только как совет в документации, её легко потерять при следующем способе загрузки.

Отдельная граница — внешние копии. Переключение витрины не исправит уже отправленный файл. Для таких потребителей нужен учёт выгрузок, уведомление и процедура повторной выдачи; обещать автоматическое восстановление всех копий нельзя.

Наблюдаемость показывает зависимости, но не принимает бизнес-решение

Для разбора инцидента нужны ответы: какой запуск выпустил версию, какие входы использовал, какие продукты от неё зависят и кто ими владеет.

В объектной модели OpenLineage есть сущности Job, Run и Dataset: задание, его запуск и набор данных. Такая модель помогает связать технические события обработки. Она сама по себе не определяет, правильно ли компания считает продажи и кому разрешено принять расхождение.

Поэтому технические зависимости следует связать с каталогом продуктов, ответственными и обязательствами перед потребителями. Полнота этой картины тоже нуждается в проверке: ручная выгрузка или обходной SQL могут оказаться за пределами автоматического сбора.

Для CDO важен не процент заполненных карточек сам по себе, а способность найти затронутые продукты и владельцев в реальном инциденте. Упражнение «исправлена семантическая ошибка в заказах за прошлый месяц» покажет пробелы лучше, чем демонстрация красивого графа без проверки его полноты.

Доступ: одна платформа не означает одну зону доверия

Общая инфраструктура облегчает применение политик, но расширяет последствия ошибки конфигурации. Наличие данных в корпоративном хранилище не означает, что любой корпоративный пользователь должен их видеть.

В NIST SP 800-207 отсутствие неявного доверия только на основании сетевого положения — один из принципов zero trust. Для рассматриваемой платформы практический вывод такой: доступ к продукту определяется идентичностью, разрешениями и условиями использования, а не фактом нахождения «внутри».

В нашей модели идентификация и техническое применение правил общие. Владелец продукта знает назначение полей и согласует допустимое использование в рамках утверждённой политики. Чувствительные атрибуты могут быть исключены, замаскированы или вынесены в отдельный интерфейс; выбранный механизм нужно проверить на каждом пути выдачи.

Права BI-модели не защищают прямую выгрузку из базы, если у пользователя есть более широкий доступ к источнику. Отзыв роли также не удаляет уже скачанные файлы. Поэтому архитектурный обзор должен проследить путь до потребителя, а не закончиться на роли в одном инструменте.

Для каждого продукта фиксируются требования к хранению и удалению, резервным копиям и журналам. Конкретные сроки и ограничения зависят от данных и применимых требований; в этой статье они не задаются.

Три варианта и условия выбора

Смешанная модель имеет цену. Прежде чем её принять, сравним альтернативы на тех же обязательствах.

Центральная команда делает всё. Она получает данные, строит предметные модели, публикует витрины и поддерживает их. Это разумный вариант, когда предметных областей немного, специалисты сосредоточены в одном месте, а потребителям важнее согласованность, чем независимость выпусков. Риск — очередь изменений и потеря смысла при передаче требований через несколько рук. Лечение может состоять в улучшении приоритизации и взаимодействия с бизнесом, а не в немедленном распределении команд.

Домены делают всё самостоятельно. У них собственные пути доставки, хранения, публикации и поддержки. Такой вариант даёт свободу, но требует доказать, как будут работать общий доступ, согласование показателей, сквозные инциденты и передача данных. Его цена — повторяющиеся механизмы, неодинаковые интерфейсы и эксплуатационные компетенции в нескольких местах. Он может быть оправдан реальной изоляцией или существенно разными требованиями, но не только желанием избавиться от центральной очереди.

Общая платформа, доменные продукты, отдельное владение сквозными показателями. Снижает часть повторения и позволяет приблизить предметные решения к источнику. Взамен появляются управление интерфейсами, поддержка платформы как внутреннего продукта и координация нескольких владельцев. Если домены не имеют бюджета на поддержку, получится центральная эксплуатация с формально распределённой ответственностью.

В статье Zhamak Dehghani «Data Mesh Principles and Logical Architecture» доменное владение рассматривается вместе с данными как продуктом, платформой самообслуживания и общим управлением правилами. Взять только передачу обязанностей доменам — недостаточно, чтобы воспроизвести описанный подход. Предложенная здесь смешанная модель использует часть этих идей; её полезность следует проверять по условиям конкретной компании.

Для учебной ситуации выберем третий вариант, потому что нам одновременно нужны общие финансовые обязательства и самостоятельное развитие предметных продуктов, а у доменов по условию есть инженеры. Если последнее условие убрать, выбор нужно пересмотреть: переходный центральный сервис может быть честнее, чем необеспеченная децентрализация.

Экономика: считать стоимость обязательств, а не только хранения

Для каждого варианта нужно оценить одинаковый горизонт и одинаковый набор обязательств. В стоимость входят:

  • вычисления, хранение, передача данных, лицензии и поддержка инфраструктуры;

  • разработка и сопровождение предметных продуктов;

  • общие механизмы развёртывания, доступа и контроля;

  • согласование интерфейсов и работа с потребителями;

  • инциденты, пересчёты, резервные копии и восстановление;

  • миграция, параллельная эксплуатация и вывод старого решения.

Труд доменных команд не исчезает из TCO после переноса в другой бюджет. Стоимость простоя и неверного решения полезно оценивать отдельно, с допущениями и диапазоном: иначе гипотетический ущерб легко превратить в аргумент в пользу любого дорогого проекта.

Простой учебный расчёт проверяет одну из надежд на распределение работы. Пусть есть 12 доменных команд. Предполагаем, что общий путь публикации экономит каждой 0,1 штатной единицы повторяющейся инженерной работы: суммарно 1,2. Но развитие и сопровождение нового механизма требует дополнительно 1,5 штатной единицы.

При одинаковой полной стоимости труда такая оценка ещё не подтверждает экономию: 1,2 меньше 1,5. При экономии 0,2 на команду получится 2,4, и разница составит 0,9 штатной единицы до учёта миграции, инфраструктуры и координации. Эти цифры выбраны для иллюстрации чувствительности, а не измерены в компании.

Дальше оценки заменяются наблюдениями пилота: сколько времени занимают публикация и сопровождение, какие ручные операции действительно исчезли, сколько стоит поддержка общего механизма. Если экономится календарное ожидание, а трудозатраты не сокращаются, это другой эффект — его нельзя автоматически записывать в сокращение расходов на персонал.

Отдельно стоит считать цену разных классов обслуживания. Ежедневная витрина и поток с минимальной задержкой не должны получать одинаковую архитектуру просто ради унификации. Более жёсткие обязательства требуют собственного обоснования и финансирования.

Миграция: сначала один сквозной результат

Перестройка всей платформы одним проектом связывает слишком много неизвестных: технологии, семантику, ответственность и навыки. Для выбранной ситуации лучше проверить границу на одном значимом результате — например, предварительных управленческих продажах.

Шаг 1. Описать текущее решение. Зафиксировать формулу, источники, известные расхождения, потребителей, сроки готовности и фактическую стоимость поддержки. Без этого новая система будет сравниваться с идеализированной старой.

Шаг 2. Назначить владельцев и обязательства. Зафиксировать границы заказов, платежей и финансового продукта, правила поздних изменений, доступ и порядок инцидента. Если владельца или бюджета нет, это блокирующий организационный риск, а не задача, которую автоматически решит каталог.

Шаг 3. Собрать минимальный общий путь. Только нужные для этого результата механизмы доставки, развёртывания, контроля и публикации. Не начинать с платформы для всех возможных будущих продуктов.

Шаг 4. Запустить параллельную сверку. Использовать одинаковые интервалы и версии правил, объяснять расхождения по ключам и причинам. Старый отчёт тоже может ошибаться: совпадение с ним не заменяет проверку бизнес-правил. Для нашей задачи сверка должна включать закрытие периода, поздние данные и возвраты; число календарных дней само по себе ничего не доказывает.

Шаг 5. Проверить сбой и восстановление. На безопасном тестовом контуре воспроизвести неполную поставку, повтор события и семантическую ошибку. Проверить остановку публикации, уведомления, пересчёт истории и статус зависимых продуктов.

Шаг 6. Переключить определённых потребителей. Согласовать окно и критерии возврата, проверить их доступы и сохранённые версии. Возврат не должен направлять пользователя к уже известной ошибочной витрине. Если достоверного состояния нет, безопасным результатом может быть временная недоступность с объяснением.

Шаг 7. Вывести старый путь. После согласованного периода наблюдения убрать старые задания, доступы и копии, которые можно контролировать. Пока два контура остаются обязательными, обещанная экономия ещё не достигнута.

Масштабировать модель стоит после проверки второго, отличающегося продукта. Один удачный пилот может скрывать ручную работу команды, которую нельзя повторить для остальных доменов.

Что CDO должен увидеть на приёмке

У этой архитектуры несколько разных критериев результата.

Бизнес: согласованный показатель готов в нужное время; предварительное состояние отличается от закрытого; потребитель понимает, какое решение допустимо принимать на этих данных.

Данные: известны входные версии и границы полноты; обязательные сверки проходят; ошибки и пересчёты истории можно проследить до зависимых продуктов.

Эксплуатация: назначены доступные ответственные; путь отказа проверен; восстановление укладывается в согласованные цели. Для восстановления отдельно определяются допустимая потеря данных и время возврата сервиса — они не следуют из частоты обновления.

Самостоятельность: обычное изменение доменного продукта проходит без индивидуальной помощи платформенной команды и не нарушает обязательства перед потребителями.

Экономика: расходы обоих контуров и доменных команд учтены; ручные операции измерены; есть решение о выводе старого пути, а не только о запуске нового.

Эти критерии не сводятся к количеству таблиц, заполненных карточек или перенесённых терабайтов. Они проверяют, появилась ли управляемая способность выпускать и поддерживать данные для конкретных решений.

Где проходит граница

Для рассмотренной ситуации центр предоставляет повторяемые механизмы и обязательные правила. Домены отвечают за предметные продукты и их историю. Владелец сквозного продукта отвечает за соединение смыслов и обязательства перед потребителем. CDO обеспечивает, чтобы эти обязанности имели ресурсы и не оставляли ничейных участков.

Эта граница может меняться. Небольшой организации бывает достаточно центральной команды; изолированным направлениям может потребоваться более самостоятельная инфраструктура. Основанием для изменения должны быть требования, стоимость и способность эксплуатации, а не привлекательность названия подхода.

Полезная проверка архитектуры звучит конкретно: «Вчера изменилось правило обработки возвратов. Какие версии данных затронуты, кто принимает новый расчёт, кто исправляет историю и как потребитель узнает, что ей снова можно пользоваться?» Если схема позволяет пройти этот сценарий без поиска ничейной ответственности, у единой платформы появляется практический смысл.

View the original on Хабр →

KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.