Чем отличается DWH от СУБД?

Дата публикации: 29 сентября 2023
Среднее время чтения: < 1 минута

Что такое DWH и СУБД

Разница между этими двумя БД заметна уже в терминологии. Так DWH (Data Warehouse) – это своеобразный «склад» данных, которые требуются для проведения качественного бизнес-анализа. По сути, это хранилище, которое собирает и обрабатывает исторические данные организации за всё время её существования. Здесь может размещаться самая разная информация: от сведений о сотрудниках компании до контактных данных каждого клиента. В случае необходимости аналитик берёт нужные ему сведения именно из DWS.

В свою очередь СУБД – это система управления базами данных, которая имеет операционное значение и используется для постоянной работы. Если речь идёт о большой компании, то у каждого отдела может быть своя СУБД: например, в отделе кадров, у маркетологов, в бухгалтерии и так далее. В отличие от DWH, в такой базе хранятся только актуальные данные, поскольку подобная СУБД должна быть компактной и оптимизированной для максимально быстрой работы. Теперь же стоит рассмотреть основные различия подробнее.

Основные типы DWH

Существуют определённые типы хранилищ Data Warehouse, которые предназначены для решения разных задач. Для того, чтобы лучше понять определение DWH стоит рассмотреть основные типы подобных хранилищ подробнее:

  • Традиционное DWH (Traditional Data Warehouse). Традиционные DWH являются централизованными хранилищами данных, где информация из различных источников собирается, интегрируется и хранится в центральной базе данных для последующего анализа. Они обычно используют реляционные базы данных. В них часто применяются ETL (Extract, Transform, Load) процессы для загрузки и преобразования данных. Они могут быть построены с применением моделей «звезда» или «снежинка». Также они предоставляют инструменты для аналитических запросов и генерации отчетов.
  •  Data Mart. Это подтип DWH, который фокусируется на определенной области бизнеса или функциональном подразделении компании (например, продажи, маркетинг, финансы). В отличие от традиционного DWH, Data Mart содержит данные, специфичные для конкретного сегмента бизнеса. Обычно подобное хранилище содержит агрегированные и подготовленные данные для конкретной области бизнеса. Оно используется для поддержки более узкой сферы принятия решений. Data Mart может быть построен как подмножество традиционного DWH.
  • Operational Data Store (ODS). ODS представляет собой хранилище данных, предназначенное для операционных и транзакционных процессов. Оно используется для хранения текущих, оперативных данных, часто в реальном времени. Хранилище предназначено для поддержки операционных бизнес-процессов. Обычно оносодержит необработанные или слегка обработанные данные. Может быть интегрировано как источник данных для DWH.
  • Cloud Data Warehouse. Это DWH, развёрнутый в облаке (например, AWS, Azure, Google Cloud). Он предлагает масштабируемость и гибкость, а также может быть более экономичным по сравнению с традиционными DWH. Хранилище использует вычислительные ресурсы облачной инфраструктуры. Обычно оно предлагает гибкую масштабируемость по требованию и часто интегрируется с другими облачными сервисами.

Основные типы СУБД

Теперь стоит рассмотреть основные виды СУБД, поскольку эта информация позволит разобраться лучше в структуре БД и в том, для чего можно применять подобные системы. Вот какие бывают СУБД:

  • Реляционные. Они организуют данные в таблицы, используя реляционную модель данных. В этой модели данные представлены в виде таблиц с определенными отношениями между ними. Распространенные языки для работы с реляционными СУБД — SQL (Structured Query Language). В них таблицы имеют строки и столбцы, а данные хранятся в ячейках. Также они полностью обеспечивают ACID-свойства.
  • Документно-ориентированные. В таких СУБД данные хранятся в виде документов (чаще всего в формате JSON или BSON). Эти документы могут быть связаны между собой или храниться независимо. В таких базах документы могут быть иерархическими и содержать вложенные структуры данных. Подобные СУБД хорошо подходят для проектов с гибкой схемой данных.
  • Колоночные. В этом случае данные организованы по колонкам, а не по строкам, как в реляционных базах данных. Это может быть эффективным для аналитических запросов, когда нужно анализировать только определенные атрибуты. Хранение данных в виде столбцов позволяет сократить объем I/O операций для аналитических запросов. Хорошо подходят для OLAP (Online Analytical Processing).
  • Графовые. Они предназначены для работы с данными, организованными в виде графов. В таких базах данных узлы представляют собой сущности, а рёбра — отношения между ними. Такие СУБД позволяют эффективно моделировать и анализировать связи между разными объектами. Они хорошо подходят для социальных сетей, рекомендательных систем и других приложений с интенсивными связями.
  • Временные. Подобные базы предназначены для хранения, управления и анализа временных данных. Они позволяют эффективно работать с временными рядами и анализировать динамику данных во времени. Особое внимание здесь уделяется поддержке временных операций и временных индексов. Хорошо подходят для анализа данных IoT (Интернета вещей) и других приложений, где важна временная динамика.

Сфера применения DWH и СУБД

DWH используется теми компаниями, которым важно регулярно проводить анализ своей деятельности для того, чтобы на основе полученных данных можно было принять решение, позволяющее улучшить результаты. Бизнес-аналитик (приглашённый или штатный) извлекает из DWH сведения за определённый промежуток времени и на их основе проводит анализ. Если бы для этого использовались «рабочие» базы данных, то работа компании была бы полностью парализована. Кроме того, именно DWH используются для архивации данных и в случае какой-нибудь неприятности с основной БД можно будет легко восстановить нужные сведения.

СУБД же, напротив, используются в конкретный момент времени и содержат в себе всю актуальную информацию (которая со временем всё равно перемещается в DWH). СУБД активнее всего используются в приложениях, где важны операции вставки, обновления и удаления данных, например, в онлайн-магазинах, банковских системах и других транзакционных системах. В таких компаниях большинство БД являются реляционными (что, впрочем, характерно практически для любого бизнеса). Но парадокс заключается в том, что информация из любой СУБД со временем становится достоянием DWH.

К DWH относятся такие популярные продукты, как Amazon Redshift, Google BigQuery, Microsoft Azure SQL Data Warehouse. А наиболее популярные продукты, относящиеся к категории СУБД — MySQL, PostgreSQL, Oracle Database.

Основные различия DWH и СУБД

Теперь можно рассмотреть основные различия DWH и СУБД. Поскольку они представляют собой два разных типа инструментов, используемых для хранения и управления данными в информационных системах, необходимо подробно остановиться на некоторых моментах.

Цель

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

Типы данных

Системы Data Warehouse работают исключительно с чётко структурированными данными в больших объёмах. Это могут быть исторические данные, отчеты и агрегированные данные. В этом случае скорость считывания данных достаточно высокая. А вот добавить новые сведения в систему проблематично, поскольку скорость записи крайне низкая.
СУБД в отличие от DWH работает с совершенно разными типами данных, включая структурированные, наполовину структурированные и даже неструктурированные данные. Подобные системы оптимизированы так, чтобы скорость считывания и записи были примерно равны. Это позволяет без проблем использовать базу в повседневной работе.

Структура данных

В системах Data Warehouse данные обычно денормализованы и агрегированы для того, чтобы увеличить скорость выполнения запросов. Это необходимо, поскольку аналитики иногда могут запрашивать огромные объёмы информации. И если бы это действие выполнялось на «рабочих» базах, вся деятельность компании была бы парализована.
В СУБД, наоборот, данные в обязательном порядке нормализуются для того, чтобы была возможность быстро добавить новую информацию или извлечь требуемые сведения из БД. Также нормализация подобных баз требуется минимизации избыточности информации и обеспечения целостности.

Моделирование данных

Для структуризации и хранения данных DWH использует классические схемы моделирования «звезда» или «снежинка». Это существенно облегчает выполнение аналитических запросов и агрегацию данных.
СУБД может использовать различные модели данных, включая реляционную, объектно-ориентированную, и другие. В этом плане подобные БД более гибкие, чем Data Warehouse, но в то же время не такие надёжные.

Операционная нагрузка

Системы DWH оптимизированы для выполнения различных аналитических запросов, особенно агрегатных операций. Также они предназначены для выборки больших объёмов данных. Но и единичные операции также выполняются с большой скоростью.
СУБД созданы для обработки транзакционных вопросов с максимально высокой скоростью. Их задача – оперативно реагировать на добавление новой информации, а не хранить исторические данные и резервные копии.

Масштабируемость

Системы DWH могут быть только горизонтально масштабируемыми, что позволяет расширять хранилище по мере необходимости, добавляя в него новые данные в процессе их обработки. Это положительно сказывается на стабильности всей системы.
СУБД масштабируются только вертикально и в большинстве случаев путём улучшения аппаратного обеспечения. Это позволяет существенно повысить производительность баз данных. В итоге скорость работы в повседневном режиме достаточно высокая.

alt

Выводы

Итак, DWH и СУБД – это совершенно разные базы данных, предназначенные для решения разных задач. Если DWH ориентированы на длительное хранение архивных данных, то СУБД оперируют информацией, которая требуется компании для повседневной работы. Data Warehouse же предназначены для выполнения бизнес-анализа.
Помимо этого, СУБД и DWH имеют разную структуру и оптимизацию. Хранилища DataWarehouse должны быстро обрабатывать аналитические запросы, а СУБД должны быстро реагировать на добавление новой информации. Именно поэтому для проектирования подобных хранилищ должны использоваться разные методики.

Остались вопросы?

Оставьте контактные данные и мы свяжемся с вами в ближайшее время

    Всегда на связи
    Офисы
    Москва
    125167, Ленинградский проспект, 37, БЦ Аэродом
    Смотреть на карте
    Калининград
    236006, ул. Театральная 35, БЦ Морской
    Смотреть на карте