Хранилища данных и OLAP
Хранилища данных консолидируют данные из множества источников в оптимизированное для запросов хранилище для анализа, а оперативная аналитическая обработка (OLAP) предоставляет многомерную модель и операции, которые позволяют аналитикам интерактивно исследовать эти данные.
Definition
Хранилище данных — это консолидированное, оптимизированное для запросов хранилище интегрированных исторических данных, полученных из нескольких операционных источников для анализа; OLAP — это технология, которая организует такие данные в многомерную модель и поддерживает быстрые агрегированные запросы и интерактивное исследование.
Scope
Эта тема охватывает аналитическую сторону управления данными: хранилище данных как интегрированное, предметно-ориентированное хранилище, отдельное от операционных систем; конвейер извлечения, преобразования и загрузки (ETL), который его заполняет; многомерное моделирование со схемами «звезда» и «снежинка» для фактов и измерений; многомерный куб данных и операции OLAP (свертывание, детализация, срез, выборка, поворот); а также контраст между аналитическими (OLAP) и транзакционными (OLTP) рабочими нагрузками. Она исключает управление параллелизмом транзакций и общие хранилища NoSQL, которые являются смежными темами.
Core questions
- Чем хранилище данных отличается от операционной базы данных (OLTP)?
- Что такое многомерное моделирование и как схемы «звезда» и «снежинка» организуют факты и измерения?
- Как куб данных обобщает группировку и поддерживает многомерный анализ?
- Что делают операции OLAP: свертывание, детализация, срез, выборка и поворот?
- Как процесс ETL используется для интеграции и загрузки данных хранилища?
Key concepts
- хранилище данных
- извлечение, преобразование, загрузка (ETL)
- схемы «звезда» и «снежинка»
- таблицы фактов и измерений
- куб данных
- свертывание, детализация, срез, выборка, поворот
- материализованные представления
- OLAP против OLTP
Key theories
- Многомерное моделирование
- Хранилища обычно моделируются с использованием схем «звезда» и «снежинка», в которых центральная таблица фактов измерений ссылается на окружающие таблицы измерений (время, продукт, местоположение), оптимизируя агрегированные, интенсивно читаемые запросы, выполняемые аналитиками.
- Куб данных и операции OLAP
- Оператор куба данных обобщает группировку для вычисления агрегатов по всем комбинациям измерений, поддерживая свертывание, детализацию, срез, выборку и поворот для интерактивного многомерного анализа.
- Разделение OLAP и OLTP
- Аналитические рабочие нагрузки сканируют и агрегируют большие объемы исторических данных, что принципиально отличается от коротких транзакционных обновлений, что мотивирует создание отдельного, интегрированного, оптимизированного для чтения хранилища, заполняемого ETL из операционных систем.
Clinical relevance
Хранилища данных и OLAP являются основой бизнес-аналитики: организации консолидируют операционные данные в хранилища и используют OLAP для анализа продаж, финансов и операций по таким измерениям, как время, регион и продукт, что делает эти технологии центральными для принятия решений на основе данных.
History
Хранилища данных появились в начале 1990-х годов, когда организации отделили аналитические запросы от операционных баз данных; подход Кимбалла к многомерному моделированию и подход Инмона к корпоративным хранилищам сформировали эту область. Оператор куба данных (Грей и др., 1997) формализовал многомерную агрегацию, а обзор Чаудхури и Дайала 1997 года консолидировал технологии хранилищ и OLAP, лежащие в основе современных аналитических платформ.
Key figures
- Surajit Chaudhuri
- Umeshwar Dayal
- Jim Gray
- Ralph Kimball
Related topics
Seminal works
- chaudhuri1997
- gray1997
- kimball2013
Frequently asked questions
- В чем разница между OLAP и OLTP?
- OLTP (оперативная обработка транзакций) обрабатывает множество коротких транзакций чтения-записи, таких как размещение заказа, с акцентом на согласованность и быстрые обновления. OLAP (оперативная аналитическая обработка) обрабатывает сложные запросы, ориентированные на чтение, которые агрегируют большие объемы исторических данных для анализа. Хранилища предназначены для OLAP и отделены от систем OLTP, которые их питают.
- Почему используется схема «звезда» вместо полностью нормализованной структуры?
- Аналитические запросы обычно объединяют большую таблицу фактов с несколькими таблицами измерений и агрегируют данные. Схема «звезда» намеренно денормализует измерения, чтобы минимизировать объединения и сделать эти агрегированные запросы быстрыми и интуитивно понятными. Избыточность, которую устранила бы нормализация, здесь приемлема, потому что хранилище загружается массово и запрашивается гораздо чаще, чем обновляется.