Что такое DWH

«Что такое DWH» — вопрос из категории Базы данных, который задают на 33% собеседований Системный Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

DWH (Data Warehouse) — это централизованное хранилище данных, предназначенное для аналитики и отчетности. Оно собирает данные из различных источников, трансформирует их в согласованный формат и оптимизирует для запросов.

Ключевые особенности:

  • Интеграция данных из разных систем (ERP, CRM и др.)
  • Хранение исторических данных (не только актуальных)
  • Оптимизация под чтение (OLAP), а не запись (OLTP)
  • Поддержка многомерного анализа (кубы, агрегаты)

Пример структуры:

-- Создание таблицы фактов в DWH
CREATE TABLE fact_sales (
    sale_id INT,
    product_id INT,
    customer_id INT,
    date_id INT,
    amount DECIMAL(10,2),
    FOREIGN KEY (product_id) REFERENCES dim_products(product_id),
    FOREIGN KEY (date_id) REFERENCES dim_dates(date_id)
);

Отличие от БД: DWH фокусируется на аналитике, тогда как обычные БД — на транзакциях. Часто реализуется через звездообразную или снежинную схему с измерениями (dim) и фактами (fact).