Ответ
Помимо денормализованных схем «звезда» (Star Schema) и «снежинка» (Snowflake Schema), существуют методологии, ориентированные на гибкость, аудируемость и хранение исторических данных.
1. Data Vault 2.0 Методология для построения гибкого, масштабируемого и аудируемого хранилища данных, особенно эффективна при интеграции данных из множества быстро меняющихся источников.
- Хаб (Hub): Хранит список уникальных бизнес-ключей сущности (например,
Customer_ID). Содержит технические поля: хэш-ключ, ключ источника, метка времени загрузки. - Связь (Link): Моделирует транзакции или связи между хабами (например, связь
Customer-Order). - Спутник (Satellite): Хранит все описательные атрибуты и их исторические изменения, привязанные к хабу или связи.
2. Anchor Modeling Подход, сфокусированный на расширяемости и неизменяемости данных. Хорошо подходит для сценариев, где структура данных может часто меняться.
- Якорь (Anchor): Представляет ядро сущности или события (например,
Customer). Содержит только технический ключ. - Атрибут (Attribute): Хранит отдельное свойство якоря (например,
Customer_Name). Каждое изменение значения создает новую запись. - Связь (Tie): Моделирует связь между двумя или более якорями.
3. ODS (Operational Data Store) Не является моделью в строгом смысле, но это важный слой. ODS — это предметно-ориентированная, интегрированная, текущая (или near-real-time) коллекция данных, предназначенная для оперативной отчетности, перед загрузкой в детализированное DWH. Часто имеет нормализованную структуру, близкую к источникам.