Принципы организации данных в AIOps: владение, потоки и контракты.
Владение данными
- Каждый сервис владеет своими данными (Database per Service); прямого доступа к чужой БД нет.
- Обмен — через синхронные API (gRPC/REST) и асинхронные события (Kafka).
- Домены и границы данных описаны в Domain Boundaries.
Потоки данных
- Синхронный: клиент → API Gateway → сервис → БД; ответ обратно. Используется для запросов, требующих немедленного ответа (логин, проверка пароля, чтение профиля).
- Асинхронный: сервис в транзакции пишет в outbox → worker публикует в Kafka → потребители обрабатывают события. Используется для уведомлений, репликации контекста (например, username в Account service), аудита.
Подробнее: Online Data Flow, Event Flow.
Контракты
- gRPC: proto-файлы в
proto/aiops/<domain>/v1/; обратная совместимость при эволюции. - События: тип события, версия, payload (JSON); ключ сообщения — идентификатор агрегата. Каталог: Event Schema Catalog.
Качество и наблюдаемость
- Валидация на границах (вход API, потребление событий).
- Логирование и метрики без PII; аудит чувствительных действий.
- Lineage и политики хранения — в соответствующих разделах (Lineage, Retention policies).
Связанные страницы
- Event Schema Catalog — схемы событий
- Data Contracts — контракты между сервисами
- Event Flow — поток событий