хранилище данных и база данных разница в реализации - PullRequest
6 голосов
/ 15 октября 2011

Может кто-нибудь сказать мне разницу между простой базой данных и хранилищем данных с точки зрения реализации?

Я знаю, что хранилище данных используется для анализа, а не для учета, но я не понимаю, как ониструктурно отличается

В простой базе данных у нас есть таблицы и т.д. в хранилище данных.Как мы можем сделать хранилище данных из простой базы данных

В обоих случаях у нас есть запросы, так как они различны для каждого из них?

Ответы [ 4 ]

9 голосов
/ 17 ноября 2011

Различия заключаются в реализации, то есть представлении (структуре) данных в таблицах.

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

С другой стороны, хранилище данных структурировано только для операций чтения.Именно поэтому хранилище данных допускает некоторый уровень избыточности в данных, потому что это делает чтение быстрее.В хранилище данных данные, как правило, структурированы в так называемом подходе Starschema посредством использования многомерного моделирования.Это означает, что у вас есть 1 большая таблица (Facttable) со всеми соответствующими записями и показателями (валютная выручка в долларах), а затем множество вспомогательных таблиц (называемых размерными таблицами), которые описывают значения в факториальной таблице.Размерными таблицами могут быть что-то вроде Date, SalesCountry, SalesPerson, Product и т. Д., Которые все описывают сумму продаж из фактаблицы.Затем размерные таблицы связываются с факториаблируемыми внешними ключами, создавая тем самым звездообразную фигуру с факториальной таблицей в середине и всеми размерными таблицами вокруг нее в виде кружка, связанного с ней.

Примечание: это очень просто.введение, и вы, конечно, должны обратиться к некоторой литературе хранилища данных, чтобы прочитать более подробную информацию.Ищите книги Ральфа Кимбалла и Билла Инмона, они являются гуру в области хранилища данных.

2 голосов
/ 15 октября 2011

Предполагая, что вы уже что-то знаете о базах данных OLTP, в IBM Redbooks есть несколько загружаемых заголовков о хранилищах данных, на которые стоит обратить внимание.

1 голос
/ 07 января 2013

OLTP означает обработку онлайн-транзакций.Системы, которые используются в любой системе бронирования или в технических терминах «OLTP», относятся к классу систем, которые упрощают и управляют ориентированными на транзакции приложениями, обычно для ввода данных и обработки транзакций поиска »

Теперь следующие вопросыКаковы различия между OLTP и хранилищем данных?

Существует много различий между ними, поэтому мы перечислим некоторые важные различия:

  • НаиболееВажным отличием является то, что OLTP обычно находится в 3NF (3-я нормализованная форма), тогда как хранилище данных не в 3NF.Таким образом, мы также можем сделать вывод, что у OLTP не будет никакой избыточности данных.

  • Хранилище данных используется для хранения данных за месяцы и годы для поддержки исторического анализа, тогда как хранилище системы OLTPданные за несколько недель или месяцев.Поэтому размеры БД также имеют огромную разницу.OLTP использует 100 МБ - 100 ГБ, где хранилище данных использует 100 ГБ - несколько терабайт.

  • Сильно нормализованная структура OLTP помогает оптимизировать такие операции, как UPDATE / INSERT / DELETE, где данныеХранилище имеет очень ненормализованную структуру (схема Star) для оптимизации производительности запросов.

  • Данные в хранилище данных регулярно передаются процессом ETL, и конечный пользователь не обновляет хранилище данныхнепосредственно, тогда как в системах OLTP конечные пользователи регулярно выдают отдельные операторы изменения данных в базу данных, и, таким образом, система OLTP обновляется.

Это несколько важных отличий между OLTP и хранилищем данных.

Подробнее

1 голос
/ 15 октября 2011

По сути, способ организации данных и таблиц - и даже больше ...

Чтение

  • Билл Инмон " Создание хранилища данных "
  • Ральф Кимбалл" Набор инструментов хранилища данных"
...