Tehnografi.com - Технологические новости, обзоры и советы

Хранилище данных против базы данных | Разница между ними

Следующая статья поможет вам: Хранилище данных против базы данных | Разница между ними

Что такое хранилище данных?

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

Основой концепции хранилища данных является распределение информации, используемой в операционных системах обработки данных (OLTP) и системы поддержки принятия решений (DSS).

Концепции хранилища данных

Девлин и Мерфи опубликовали первые статьи о хранилищах данных в 1988 году. Концепции хранилищ данных были предложены в 1992 году Биллом Инмоном в его книге «Создание хранилища данных» и стали доминирующими в развитии технологий обработки данных в 1990-х годах. Термин «Хранилище данных» означает создание, обслуживание, управление и использование хранилища данных, что указывает на то, что это процесс.

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

Основные различия между хранилищем данных и базой данных заключаются в следующем:

  • тот факт, что обновление данных в Хранилище данных означает не обновление информационных элементов, а добавление новых элементов к существующим;
  • наряду с информацией, непосредственно отражающей состояние системы управления, в Хранилище данных накапливаются метаданные.

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

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

Создание хранилища данных

Хранилища данных являются основой для построения систем поддержки принятия решений.

Несмотря на различие подходов и реализаций хранилищ данных и баз данных, все хранилища данных имеют следующие общие черты:

  • Ориентация на предмет
  • Интеграция
  • Поддержка временной шкалы
  • неизменность
  • Минимальная избыточность

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

Основные типы хранилищ данных метаданных отражают:

  • Структура и содержимое репозитория
  • Соответствие между исходными и выходными данными
  • Объемные характеристики данных
  • Критерии архивации
  • Отношения между данными
  • Информация о кодировании
  • Срок жизни данных и т. д.

Существует два подхода к созданию хранилищ данных. Первый – размерный, а второй – нормализованный подход.

Размерный подход: данные транзакции разделены на «факты».
Нормализованный подход: данные хранятся в соответствии с правилами нормализации базы данных (таблицы группируются по предметным областям в соответствии с категориями).

Основные проблемы при построении эффективного хранилища данных заключаются в следующем:

  • необходимость интеграции данных из разнородных источников в распределенную среду;
  • проблема эффективного хранения и обработки больших объемов информации;
  • требование к многоуровневым каталогам метаданных;
  • повышенные требования к безопасности данных.

Кроме того, витрины данных выполняют определенные функции по сравнению с хранилищем данных, как показано на рис. 2.

Разница между базой данных и хранилищем данных

  • База данных работает с текущими данными, тогда как хранилище данных работает с историческими данными.
  • База данных обычно часто обновляется. Хранилище данных извлекает данные и оценки для анализа и обработки.
  • База данных используется для транзакций, тогда как хранилище данных используется для аналитической обработки.
  • Таблицы в базе данных нормализованы, тогда как хранилище данных оптимизировано для более быстрого выполнения запросов.
  • Аналитические запросы в хранилище данных выполняются быстрее, чем в базе данных.
  • База данных хранит подробные данные, тогда как хранилище данных хранит сводные данные.
  • База данных ориентирована на реляционное представление, тогда как хранилище данных ориентировано на обобщенное многомерное представление.
  • Согласно концепции хранилища данных, база данных предназначена для множества одновременных транзакций, тогда как хранилище данных неэффективно в этой области.

OLAP в хранилище данных

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

OLAP (онлайн-аналитическая обработка) — это интерактивная система, позволяющая просматривать различные результаты на многомерных данных. Термин «в реальном времени» (онлайн) означает, что новые результаты получаются за считанные секунды, без длительного ожидания результата запроса.

Причиной использования OLAP для обработки запросов является скорость. Реляционные базы данных хранят сущности в отдельных таблицах, которые обычно нормализованы. Такая структура удобна для операционных баз данных (OLTP-систем), но сложные многотабличные запросы выполняются относительно медленно.

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

В отличие от OLAP базы данных хранят текущие транзакции и обеспечивают быстрый доступ к конкретным транзакциям. Этот подход известен как оперативная обработка транзакций (OLTP).

Инструменты хранилища данных

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

Инструменты локального хранилища данных:

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

Autonomous Data Warehouse от Oracle — это первая из многих облачных служб, созданных на основе технологии автономных баз данных нового поколения с автономным управлением. Эта услуга использует искусственный интеллект для обеспечения беспрецедентной надежности, производительности и высокоэластичного управления данными, что позволяет развертывать хранилище данных за считанные секунды. Oracle использует то же программное обеспечение и технологии Oracle Database, что и ваша существующая локальная среда.

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

Процессы и инструменты Extract Transform Load или ETL необходимы для хранения данных. ETL позволяет стандартным образом быстро и надежно перемещать данные из источников в хранилище данных.

Наиболее популярными инструментами ETL для хранения данных являются следующие:

  • IBM InfoSphere DataStage
  • Информатика Power Center
  • Microsoft SSIS
  • Интегратор данных Oracle

Инструменты ETL с открытым исходным кодом:

  • Апач Кафка
  • Апач НиФи
  • КлеверETL
  • Джасперсофт
  • Чайник Пентахо
  • Таленд Открытая Студия

И как отдельный тип — инструменты ETL в реальном времени:

  • Алума
  • Сливающийся
  • StreamSets
  • Стрийм

Облачное хранилище данных

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

Основные облачные хранилища данных:

  • Amazon Красное смещение
  • Google BigQuery
  • Хранилище данных Microsoft Azure SQL
  • Снежинка

Amazon Красное смещение

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

Google BigQuery

Сервис BigQuery позволяет настроить различное оборудование в хранилище данных. Google BigQuery позволяет пользователям загружать данные, хранить их в таблицах, получать доступ к данным с помощью SQL-запросов, а также сохранять и выгружать результаты запросов для дальнейшей работы. Он позволяет использовать концепцию «все в одном месте», обладает большой скоростью вычислений и низкой стоимостью обработки огромных объемов информации. Плюс дает возможность работать онлайн из любой точки и использовать быструю визуализацию.

Хранилище данных Microsoft Azure SQL

Это облачное корпоративное хранилище данных (EDW), использующее массовую параллельную обработку (MPP) для быстрого выполнения сложных запросов на несколько петабайт данных. Импорт больших объемов данных в хранилище данных SQL осуществляется с помощью запросов T-SQL PolyBase, а возможности MPP используются для выполнения высокопроизводительной аналитики.

Снежинка

Snowflake — это хранилище аналитических данных. Он предоставляется как программное обеспечение как услуга (SaaS), что помогает минимизировать действия по программированию, время и бюджет. Хранилище данных Snowflake использует Hadoop для реализации распределенного подхода к управлению и обработке данных. Snowflake обрабатывает запросы, используя «виртуальные хранилища», где каждое виртуальное хранилище представляет собой вычислительный кластер MPP.

Заключение

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

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

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

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

Table of Contents