Приветствую Вас на сайте Info-Comp.ru! По своей природе и OLTP система, и хранилище данных (DWH) являются обычными базами данных, но между ними существуют отличия, в этом материале мы как раз и поговорим о том, чем же отличаются OLTP системы от DWH.
Итак, чтобы разобраться в том, чем же отличаются OLTP базы данных от хранилищ данных, необходимо знать, что такое OLTP, и что такое DWH, поэтому сначала давайте поговорим именно об этом.
Заметка! Программирование в базе данных Microsoft SQL Server – это возможно?.
Что такое OLTP
OLTP (Online Transaction Processing) – это транзакционная система, т.е. операционная база данных, в которой обработка транзакций происходит в реальном времени.
Иными словами, такие базы данных предназначены для хранения и обработки информации в режиме реального времени. Например, ввод данных пользователями компании, расчет и регистрация различных операций клиентов и т.д.
Особенностями OLTP систем являются:
- Нормализованные данные;
- Высокая интенсивность добавления и изменения данных;
- Большое количество одновременно активных пользователей;
- Внесение данных и расчеты осуществляют пользователи системы;
- Содержат актуальные данные.
К OLTP системам можно отнести:
- АБС (Автоматизированная банковская система);
- ERP (англ. Enterprise Resource Planning, планирование ресурсов предприятия);
- CRM (англ. Customer Relationship Management, система управления взаимоотношениями с клиентами);
- Бухгалтерские системы (системы для ведения бухучета);
- Биллинговые системы (системы расчета стоимости предоставления услуг);
- И другие системы, в которых пользователи или клиенты компании ежедневно вносят данные.
Таким образом, как Вы понимаете, OLTP систем и, соответственно, баз данных в компании может быть несколько, каждая из которых предназначена для хранения и обработки определенного типа информации, т.е. для определенных бизнес-процессов, например, одна система может вести учет продаж и всего, что с этим связано, другая — кадровый учет сотрудников, а третья — учет логистических процессов.
Что такое DWH (Data Warehouse)
Data Warehouse (DWH, хранилище данных) – это база данных, которая служит источником для подготовки аналитических отчетов и бизнес-анализа.
Отсюда следует, что хранилища данных предназначены для формирования отчетности.
Необходимость в DWH появляется как раз тогда, когда в компании используется несколько OLTP систем или несколько разных способов генерации новых данных (т.е. разных источников новых данных), которые необходимо впоследствии централизованно анализировать.
Особенности DWH:
- В DWH хранятся консолидированные данные из разнородных внешних источников;
- Данные вручную не вводятся, все данные поступают из внешних источников;
- Источниками данных для DWH могут быть:
- OLTP системы компании
- Excel файлы
- Файлы в другом формате
- Другие базы данных
- В DWH хранятся полные исторические данные;
- Данные в хранилище появляются с задержкой (например, в 1 день, т.к. закачка данных обычно происходит по ночам).
Заметка! Архитектура обработки SQL запросов в Microsoft SQL Server.
Чем отличается OLTP от DWH
Ну, а теперь можно выделить несколько основных отличий OLTP баз данных от DWH.
Характеристика |
OLTP |
DWH |
Назначение | Операционная деятельность | Отчетность и бизнес-анализ |
Оптимизация | Быстрое добавление данных, высокая доступность | Простой и быстрый доступ к данным |
Актуальность данных | Доступны актуальные данные | Данные появляются с задержкой |
Полнота данных | Доступны текущие данные | Доступны все данные, включая исторические |
Нормализация данных | Данные нормализованы | Данные для удобства денормализуются |
Источник информации | Данные вносят пользователи системы | Данные поступают из внешних источников автоматически, с помощью специально настроенных механизмов |
Пользователи системы | Пользователями системы могут быть как сотрудники компании, так и клиенты, поставщики или партнеры, т.е. те пользователи, которые не являются сотрудниками организации | Пользователями обычно выступают руководители разных уровней внутри компании |
Активность пользователей | Большое количество одновременно активных пользователей | Небольшое количество одновременно активных пользователей |
Характер SQL инструкций | Много коротких DML операций | Сложные длинные SELECT-ы |
Заметка! Если Вас интересует язык SQL, то рекомендую почитать книгу «SQL код» – это самоучитель по языку SQL для начинающих программистов. В ней язык SQL рассматривается как стандарт, чтобы после прочтения данной книги можно было работать с языком SQL в любой системе управления базами данных.
На сегодня это все, надеюсь, материал был Вам полезен, пока!