Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Многомерные кубы, OLAP и MDX

SQL *
OLAP Довольно давно являюсь обитателем Хабра, но так и не доводилось читать статьи на тему многомерных кубов, OLAP и MDX, хотя тема очень интересная и с каждым днем становится все более актуальной.
Не секрет, что за тот небольшой промежуток времени развития баз данных, электронного учета и онлайн систем, самих данных накопилось очень много. Теперь же интерес также представляет полноценный анализ архивов, а возможно и попытка прогнозирования ситуаций для подобных моделей в будущем.
С другой стороны, большие компании даже за несколько лет, месяцев или даже недель могут накапливать настолько большие массивы данных, что даже их элементарный анализ требует неординарных подходов и жестких аппаратных требований. Такими могут быть системы обработки банковских транзакций, биржевые агенты, телефонные операторы и т.д.
Думаю, всем хорошо известны 2 разных подхода построения дизайна баз данных: OLTP и OLAP. Первый подход (Online Transaction Processing — обработка транзакций в реальном времени) рассчитан на эффективный сбор данных в реальном времени, второй же (Online Analytical Processing – аналитическая обработка в реальном времени) нацелен именно на выборку и обработку данных максимально эффективным способом.

Давайте рассмотрим основные возможности современных OLAP кубов, и какие задачи они решают (за основу взяты Analysis Services 2005/2008):
  • быстрый доступ к данным
  • преагрегация
  • иерархии
  • работа с временем
  • язык доступа к многомерным данным
  • KPI (Key Performance Indicators)
  • дата майнинг
  • многоуровневое кэширование
  • поддержка мультиязычности

Читать дальше →
Всего голосов 62: ↑59 и ↓3 +56
Просмотры 109K
Комментарии 34

olap для маленькой компании

SQL *
В посте Многомерные кубы, OLAP и MDX Vitko написал: «тема очень интересная и с каждым днем становится все более актуальной». К сожалению, это заклинание произносится уже очень давно (по крайней мере я его слышу с 2004 года ), но olap проектов до сих пор очень мало. Возможно, потому что традиционно считается, что всё, что связанно с olap нужно только для крупных компаний с большими объемами накопленных данных и стоит очень дорого. Но это не совсем так. Я хочу рассказать о проекте, который внедрен в одной относительно небольшой компании.
Читать дальше →
Всего голосов 71: ↑69 и ↓2 +67
Просмотры 47K
Комментарии 60

Создаем OLAP куб. Часть 1

SQL *
OLAP

Продолжая тематику Многомерные кубы, OLAP и MDX и olap для маленькой компании, традиционно, предлагаю начать с простенького «Hello World» куба, который будет анализировать процессы и тенденции голосований на Хабре.

Итак, давайте попробуем создать свою первую OLAP систему.
Но, прежде чем, потирая руки, запускать Business Intelligence Studio, предлагаю вначале создать хранилище данных хабра-голосов, так называемый Data Warehouse.
Зачем? Причин в этом несколько:
  • сама суть Data Warehouse-а хранить «очищенные» данные, готовые для анализа, поэтому даже его изначальная структура может сильно отличаться от структуры нашей хабра-OLTP базы данных
  • в HabraDW (так мы его назовем) мы вынесем только ту информацию, которая нам нужна будет для анализа, ничего лишнего
  • к Data Warehouse не накладываются требования нормализации. Даже наоборот, денормализировав некоторые данные можно добиться более понятной схемы для построения куба, а также скорости загрузки данных в куб
Читать дальше →
Всего голосов 29: ↑29 и ↓0 +29
Просмотры 147K
Комментарии 21

Создаем OLAP куб. Часть 2

SQL *
OLAP

Итак, продолжаем создавать куб.
Напомню, что в предыдущей статье, мы создавали Data Warehouse для хранения голосов хабра-пользователей за хабра-топики. Для тех, кто хочет начать сразу создавать куб, я выложил скрипт, который создает и наполняет хранилище (на моей машине скрипт занял 10 минут и нагенерил 1866268 хабра-голосов).
Для того, чтобы создать OLAP куб, нам понадобится:
  • SQL Server, на котором хранится наш HabraDW (подойдет любой);
  • Microsoft SQL Server, с запущенными Analysis Services (2005/2008);
  • Business Intelligence Studio, которая входит в пакет клиентских приложений для Microsoft SQL Server-а, и интегрируется с Visual Studio, если она у вас установлена (2005/2008);
Читать дальше →
Всего голосов 56: ↑48 и ↓8 +40
Просмотры 62K
Комментарии 34

«Достаем» OLAP куб (ADOMD.NET)

SQL *
adomd
Итак, продолжаем осваивать внутренности OLAP кубов (предыдущие статьи на эту тему: 1, 2, 3). На повестке дня актуальный вопрос: «А как можно достать OLAP куб программно?». Понимаю – теория-теорией, но если данные нельзя (или очень сложно) получать из кода, то грош цена таким технологиям. К счастью, здесь все очень просто – знаете ADO.NET? Ну, так это то же самое, только называется ADOMD.NET.
Как же так, скажите вы – еще одна библиотека, которую нужно изучать?! Вообщем-то, можно конечно и через OLEDB «доставать» куб (как-нибудь напишу, как это делать), но тогда теряется вся специфика многомерности, а сама библиотека ADOMD.NET достаточно простая, что я сейчас и покажу.
Итак, приступим.
Читать дальше →
Всего голосов 26: ↑22 и ↓4 +18
Просмотры 27K
Комментарии 6

Data Mart vs Data Warehouse

Чулан
Некоторое время назад я начал разбираться в OLAP и в данном посте хочу проверить правильность собственных мыслей на счет этих двух понятий.
Читать дальше →
Всего голосов 2: ↑1 и ↓1 0
Просмотры 14K
Комментарии 2

Подход к Online Analysis Processing

Программирование *
По следам этого поста.

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

Постановка задачи и решение
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 3.2K
Комментарии 0

СУБД — поворот на 90 градусов

Чулан
Объемы данных и требования к скорости их обработки за последние десятилетия многократно выросли. Системы управления базами данных (СУБД) пытаются соответствовать новым реалиям и претерпевают значительные эволюционные и революционные изменения. Одним из таких эволюционных факторов является движение в сторону т.н. вертикальных (column-based) систем хранения.
Примеры на пальцах
Всего голосов 18: ↑15 и ↓3 +12
Просмотры 2.7K
Комментарии 32

Olap сервер — Oracle Essbase

Oracle *
Из песочницы
На Хабре, хоть как то представлено описание решения от Microsoft для задач аналитической обработки данных в реальном времени, но нет ни слова о мировом лидере в данном вопросе Oracle Essbase Поэтому ниже привожу описание данной технологии.
Читать дальше →
Всего голосов 18: ↑13 и ↓5 +8
Просмотры 11K
Комментарии 4

Oracle Essbase 9 — установка и настройка

Oracle *
Целью данного топика является первое знакомство на практике хабр-сообщества с продуктом, Oracle Essbase. Здесь вы можете прочитать об архитектуре данного продукта.

На данный момент ( февраль 2011) текущей версией является 11.1.2, в которой Oracle и Hyperion в очередной раз сделали большой шаг в сторону интеграции и усложнили в разы инфраструктуру приложения. Эта версия подойдет для тех, кто уже знаком с системой и понимает все архитектурные особенности. Процесс ее инсталляции подробно рассмотрен на тематических блогах.

Я же предлагаю для знакомства с OLAP Oracle Essbase движком использовать предыдущую версию 9.3, которая в части OLAP ядра, мало чем отличается от своего старшего брата, так как процесс настраивания дополнительных компонент в 11 версии (которые ставятся в нагрузку) может занять достаточно много времени, и ресурсов.

Соответственно процесс установки можно разделить на три этапа

Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 3.7K
Комментарии 0

Oracle Essbase – Integration Services Обзор

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

Essbase для DataWarehouse занимает место многомерных витрин, которые позволяют рассчитать комплексные экономические показатели, построить прогноз, предоставить максимально быстро AD-hoc отчетность. Essbase позволяет без задержек обслуживать многие тысячи пользователей, без особых настроек. Вы забудете про планы запросов, и как тюнить быстродействие того или иного отчета.

Читать дальше →
Всего голосов 5: ↑3 и ↓2 +1
Просмотры 3.2K
Комментарии 3

Университет Kimball: 10 основных правил многомерного моделирования

SQL *
Перевод

Марги Росс (Margy Ross) — Президент Kimball Group.

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

Студенты, посещающие лекции Kimball Group по многомерному моделированию, попросили у меня список «заповедей Kimball» для многомерного моделирования. Воздержимся от использования религиозной терминологии. Поэтому, нижеследующее, добытое методом проб и ошибок, назовём не слишком строгими рекомендациями и правилами «как-ничего-не-сломать».
Читать дальше →
Всего голосов 23: ↑19 и ↓4 +15
Просмотры 12K
Комментарии 19

Введение в многомерный анализ

SQL *

Некоторое время назад мне довелось организовывать новую группу разработки, которая должна была заняться развитием OLAP и BI продуктов в дружеской софтверной компании. А так как группа была собрана из свежих выпускников ВУЗов, то мне пришлось написать «краткий курс молодого бойца» для того чтобы максимально доступно дать начальные понятия об OLAP людям, которые ни разу с ним не сталкивались, но уже имели опыт программирования и работы с БД.



Выкладываю теперь это Введение в Общественное Достояние.



В статье несколько смешиваются понятия OLAP, Business Intelligence, и Data Warehouse, но и в жизни часто сложно понять, где проходит граница. А уж в реальных проектах, так и подавно, все они ходят рядом. Поэтому прошу не судить строго.



Итак, что же такое OLAP.
Всего голосов 63: ↑61 и ↓2 +59
Просмотры 127K
Комментарии 11

Разгоняем медиану в OLAP

SQL *Data Mining *Microsoft SQL Server *
Из песочницы
Tutorial
Этот пост для тех, кто сталкивался с проблемой производительности, при расчете медианы в OLAP кубе.
Одним из главных достоинств OLAP технологии является скорость получения результатов при обращении к базе. Расчеты происходят «на лету». Однако с медианой, не все так просто.
Для справки: медиана — вид средней. Это величина, которая находиться в середине ряда значений отсортированного по возрастанию. Например, для ряда значений {1, 2, 5, 6, 9} медианой является 5.

Рассмотрим ситуацию на примере OLAP сервера от Microsoft — SSAS 2008 (SQL Server Analysis Services).
Читать дальше →
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 8.1K
Комментарии 0

Контроль расходов мобильной связи в рамках организации

SQL *
Из песочницы
Не будет новостью, что контролировать расходы на связь в организации с более чем двадцатью сим карт дело не простое и многие предпочитают просто платить, не озадачиваясь анализом расходов.
На рынке есть специализированные продукты, позволяющие следить за расходами в основном в ручном режиме.
Хотел бы поделиться опытом создания системы контроля расходов для нескольких сотен тысяч сим карт построенной на базе MS SSAS.
В качестве поля для действия была выбрана компания имеющая на тот момент около 120 тыс сим карт, 90% из которых был провайдер с логотипом в виде яйца и устанавливаемых в м2м устройства.
Читать дальше →
Всего голосов 25: ↑21 и ↓4 +17
Просмотры 5K
Комментарии 16

Контроль расходов мобильной связи в рамках организации: реализация

SQL *
image

Хотелось бы рассказать некоторые технические подробности создания системы контроля расходов мобильной связи, концепция которой была описана в предыдущем посте.
В качестве примера будем рассматривать счет за один из месяцев от МТС и создадим не сложный OLAP проект.
Судя по откликам, эта тема довольно актуальна, так что, кому интересно, прошу под кат.
Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 6.9K
Комментарии 0

6 практических советов для начинающих при построении простого BI-решения

Блог компании True Engineering SQL *Microsoft SQL Server *
Данной статьей хотелось бы показать шаги и предложить некоторые рекомендации в процессе создания BI-решения с использованием практически всего стека BI компании Microsoft. В создании BI-решения будут использованы SQL Server, SQL Service Integration Services, SQL Server Analysis Services.

Для примера мы выбрали разработку нашей компании RetailIQ — BI-систему глубокого анализа чеков розничных продаж, поставок и складских запасов для сети аптек. Для общего понимания контекста темы: все данные выгружаются из учетных систем (1С, М-Аптека и т.д.), верифицируются, складываются в специальную базу данных с последующим построением многомерных OLAP-кубов. Из источников (учетных систем) с помощью ETL мы перекачиваем данные в хранилище, на основе которого строим куб, о котором дальше пойдет речь.

Читать дальше →
Всего голосов 6: ↑3 и ↓3 0
Просмотры 37K
Комментарии 3

Секционирование и «живые снимки» данных в PostgreSQL

PostgreSQL *
Tutorial
Хотя тема секционирования уже поднималась ранее, я хочу к ней вернуться, чтобы рассказать о своем опыте решения этой задачи, возникшей в связи с необходимостью аналитической обработкой больших объемов данных. Помимо секционирования, я рассмотрю предельно упрощенную реализацию «снимков» агрегированных запросов, автоматически обновляемых при изменении исходных данных..
Читать дальше →
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 8.8K
Комментарии 16

Связь многие-ко-многим, OLAP и MS SQL Server Analysis Services

SQL *Microsoft SQL Server *
Из песочницы
Tutorial

Связь многие ко многим и MS SQL Server Analysis Services


Данный пост я хочу посвятить такой, как выяснилось, несложной проблеме, как обработка OLAP-кубом связей многие-ко-многим с помощью MS SQL Server Analysis Services.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 14K
Комментарии 5

Создание OLAP куба в MS SQL Server 2012

Data Mining *Microsoft SQL Server *
Tutorial
Здравствуйте.

Понадобилось мне использовать для анализа данных OLAP кубы. Эту технологию я активно изучал и использовал в 2001-2002 годах и даже сертифицировался по ней. Но потом долгое время не прикасался к ней. И вот совсем недавно попробовал воспользоваться 2012 SQL Server’ом, но не тут то было: многое и того что появилось в новом сервере оказалось мне совершенно не знакомым.

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

Ролик ознакомительный, возможно, некоторые вещи сделаны неправильно, но пример вполне рабочий. Предполагается, что читатель (зритель) уже знаком с понятиями многомерного куба, измерений, мер и для чего это используется.



Читать дальше →
Всего голосов 20: ↑14 и ↓6 +8
Просмотры 42K
Комментарии 1