Сайт о телевидении

Сайт о телевидении

» » OLAP в финансовом управлении. Разработка решений по управлению предприятием. Хранение активных данных в многомерной БД

OLAP в финансовом управлении. Разработка решений по управлению предприятием. Хранение активных данных в многомерной БД

Синие стрелки - пути, которыми информация попадает в систему, зеленными – как информация в дальнейшем используется.

  1. Информация о заказах заносится в систему 1с – dbf версия.
  2. Загрузка данных «автообмен». Вообще – то это лишний шаг. Данные можно получать напрямую из dbf базы. Но программисты 1с решили что стандартный (для 1с) механизм выгрузки данных, принесет меньше вреда.
  3. Раз в сутки изменения за прошедший день выгружаются в специально подготовленную базу MsSql – хранилище. Выгружается не вся информация, а только то, что нужно для кубов.

    В принципе необязательно строить «хранилище». Данные для куба можно получать напрямую из базы 1с (MsSQL или dbf). Но в моем случае из 1с данные прошлых периодов периодически удаляются и очищаются справочники. Кроме того перед загрузкой в хранилище данные немного «чистятся».

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

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

Любой пользователь может получить информацию разными путями:

  1. Построить отчет самостоятельно на web-странице или в excel

    Сначала использовался только excel, но возникало много проблем с тем, что екселевские файлы «разбредались», нужно было получить одну «точку входа» для выбора информации.
    Поэтому был создан локальный сайт, на котором опубликованы страницы с PivotTable. Сотрудник, который хочет получить пару цифр «здесь и сейчас» заходит на этот сайт и строит отчет в нужной ему форме. Если человеку нужно использовать этот отчет в дальнейшем – он может написать заявку, чтобы его отчет опубликовали в SSRS или сам сохраняет его в excel.

  2. Посмотреть стандартный отчет, опубликованный в SQL Server Reporting Services (SSRS)
  3. Получить локальный куб – и вне офиса «вращать» данные с помощью excel
  4. Подписаться на рассылку и получать стандартные отчеты из SSRS на e-mail
  5. Отдел маркетинга кроме того использует программу CubeSlice. В ней можно создавать локальные кубы самостоятельно и гораздо удобнее, чем в excel

Локальные кубы

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

Как правило, поставщику тоже неудобно работать с большими отчетами. Поэтому большая часть, попробовав работать с локальными кубами, согласилась получать отчетность в таком виде. Список отчетов, которые формировал отдел маркетинга, значительно сократился. Оставшиеся тяжелые отчеты были реализованы в SSRS, созданы подписки (отчеты формируются автоматически и рассылаются поставщикам по расписанию)

Основные параметры системы

Конфигурация сервера:

процессор: 2xAMD Opteron 280
память: 4Gb
дисковые массивы:
операционная система: RAID 1 (зеркало) 2xSCSI 15k
данные: RAID 0+1 4xSCSI 10k

Согласитесь, такую машинку сложно назвать «мощным» сервером

Объем данных:

хранилище 10Гб, данные с 2002 года
агрегация 30%
Размер многомерной базы 350М
кол-во членов «больших измерений»: товары 25 тыс., адреса – 20 тыс.
кол-во документов в день - 400. среднее кол-во строк в документе - 30

Что в итоге получила компания:

Плюсы

  • Для руководства предприятия
    Позволяет посмотреть на ситуацию «сверху», выявить общие закономерности развития бизнеса.
    Помогает проследить динамику изменения основных показателей работы организации в целом и оперативно оценивать показатели эффективности работы подчиненных.
  • Для менеджера
    Возможность самостоятельно и в короткие сроки получить информацию необходимую для принятия решения.
    Простота работы. Все действия интуитивно понятны
  • Для поставщиков
    Возможность интерактивной работы с информацией
  • С точки зрения it-специалиста
    Уменьшение рутинной работы. Большую часть отчетов пользователь получает самостоятельно.

Минусы:

  • Стоимость внедрения. Необходимо дополнительное оборудование и программное обеспечение.
  • Нехватка подготовленных специалистов. Расходы на обучение сотрудников it-отдела.

Создание olap- приложения

Система «Контур Стандарт» входит в состав Аналитической платформы Контур (АПК), которую разрабатывает компания Intersoft Lab. Аналитическая платформа Контур предназначена для анализа финансовой, статистической и другой бизнес-информации и выпуска отчетов.

Системы Контур используют современную технологию оперативной аналитической обработки бизнес-данных OLAP (On-line Analytical Processing). На сегодняшний день OLAP –это самый мощный вид табличного генератора отчетов. Системы Контур позволяют получать произвольные экранные отчеты для интерактивного анализа и распечатывать отчеты на бумаге.

«Контур Стандарт» предлагается промышленным и торговым предприятиям, банкам и др.организациям в качестве средства анализа корпоративных данных и подготовки отчетов. Систему можно использовать для анализа в различных предметных областях: управление снабжением по данным ERP-системы, анализ продаж по данным CRM-системы, финансовый анализ по показателям обязательной отчетности и т.д.:

    руководители смогут оперативно получать интересующие показатели.

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

    специалисты службы маркетинга – решать такие задачи как сегментирование клиентской базы, анализ спроса, оценка потребительского интереса по данным о посещаемости сайта компании (click-stream анализ).

    аналитики – реализовать индивидуальную модель оценки различных аспектов деятельности организации, и пр.

«Контур Стандарт» можно эксплуатировать практически в любой сфере, где требуется анализировать числовые данные и получать множество представлений одного набора данных в разных отчетах. Инструменты OLAP-анализа позволяют огромные массивы деловой информации показать в аналитических отчетах в виде наглядной картины состояния бизнеса. Разнообразные графики и диаграммы помогут сравнивать показатели,видеть их динамику и пр.

Работа с системой «Контур Стандарт» организуется в два этапа:

    Создание OLAP-приложения – пакета аналитических отчетов для конечного пользователя: руководителя, аналитика, маркетолога и т.д. Для этого используется система «Контур Стандарт» в редакции «Дизайнер».

    Анализ и выпуск отчетов с помощью готового OLAP-приложения. Для этого может применяться система «Контур Стандарт» в редакциях «Дизайнер», «Аналитик», «Обозреватель» или «Инспектор».

OLAP-приложение (файл формата *.caf) – отдельный программный ресурс (репозиторий метаданных), в котором хранятся настройки источников данных, запросов к источникам данных и аналитические отчеты. Создание OLAP-приложения состоит в последовательном описании этих настроек.

Источники данных – локальные таблицы и реляционные БД автоматизированных систем, в которых хранятся корпоративные данные для анализа (таблицы MS Excel, БД бухгалтерских или ERP-систем, Хранилищ данных и т.д.). «Контур Стандарт» поддерживает прямой доступ к локальным таблицам (Dbase и Paradox) и к таблицам и хранимым процедурам реляционных СУБД (MS SQL, Oracle, Sybase, MS Access и т.д.).

Запросы – SQL-запросы к источникам данных, описываемые в системе на уровне правилобъединения таблиц источников данных по ключевым полям, условия фильтрации данных и набора возвращаемых полей. Результатом выполнения запроса является плоская выборка данных, отображаемая в отчетах.

Отчеты – пользовательские интерфейсы для анализа данных. В «Контур Стандарт» можно создать 4 вида отчетов:

  • Кластерный анализ.

    OLAP-отчет.

Все пользовательские отчеты могут быть проиллюстрированы графиками, распечатаны, выгружены в офисные приложения (MS Excel, MS Word, html-формат) или сохранены в csv-формате.

Таблицы – плоские списочные отчеты, сопровождаемые графиками. Пользователь может быстро перерисовывать графики, фильтруя значения измерений и управляя фактами и измерениями по осям. Это позволяет оперативно менять «точку зрения» на анализируемые данные в поисках зависимостей и тенденций.

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

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

OLAP-отчеты – управляемые динамические OLAP-таблицы, которые сопровождаются синхронной диаграммой (графиком). OLAP-отчет может содержать данные, полученные по запросу как из БД, так и из локального микрокуба.

OLAP-таблица – таблица, автоматически суммирующая данные (факты) в различных разрезах (измерениях) и позволяющая интерактивно управлять вычислениями и формой отчета. Измерения отображаются в названиях строк и столбцов таблицы, соответствующие им факты и итоги (агрегированные факты) – в ячейках таблицы. Колонки и строки являются инструментами управления таблицей. Пользователь может перемещать их, фильтровать, сортировать, детализировать/обобщать и выполнять другие OLAP-операции. При этом таблица автоматически вычисляет новые итоги (агрегаты). Управляя OLAP-таблицей, можно из одного набора данных сформировать множество отчетов.

В OLAP-таблице можно условно выделить несколько рабочих областей:

Область активных измерений – строки и столбцы OLAP-таблицы.

Область неактивных измерений (фильтры) – область, содержащая измерения, не отображенные в OLAP-таблице, но влияющие на представленные в ней данные.

Область фактов – таблица с числовыми данными, над которыми выполняются вычисления.

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

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

Данные, отображаемые в OLAP-отчете, можно сохранить в Микрокуб.

Микрокуб (файл формата *.cube) – это локальная многомерная база данных, которая содержит данные, выгруженные из реляционных источников, и описание их представления в OLAP-отчетах (метаданные). При помещении в микрокуб объем исходной информации сжимается в десятки раз. Компактный размер позволяет передавать микрокубы по Интернет- протоколам и пересылать по электронной почте. В микрокубы можно поместить информацию для различных специалистов и подразделений, отраслевые показатели, аналитические обзоры и рейтинги и т.д. Фактически, микрокуб – это мобильный контейнер аналитических отчетов и данных для анализа.

Практическое задание

Рассмотрим основные этапы создания OLAP-приложения. Для каждого этапа технология работы пользователя проиллюстрирована на примере настройки пакета отчетов для анализа продаж сети магазинов канцелярских товаров.

Исходные данные для анализа хранятся в локальных таблицах:

1. Таблица «Данные о продажах» (Sales.dbf) с полями:

Дата (DATE), Код магазина (ID_SHOP), Код товара (ID_PRODUCT), План (PLAN),

2. Таблица «Справочник товаров» (Product.dbf) с полями:

Код товара (ID), Товар (PRODUCT), Единица измерения (MEASURE).

3. Таблица «Справочник магазинов» (Shop.dbf) с полями:

Код магазина (ID), Магазин (ADDRESS).

Скопируйте папку Sale_shop в каталог < С >:\Program Files\IntersoftLab\ContourStandart2\App

В 1993 году основоположник реляционного подхода к построению баз данных Эдгар Кодд с партнерами (Edgar Codd, математик и стипендиат IBM), опубликовали статью, инициированную компанией "Arbor Software" (сегодня это известнейшая компания "Hyperion Solutions"), озаглавленную "Обеспечение OLAP (оперативной аналитической обработки) для пользователей-аналитиков", в которой сформулированы 12 особенностей технологии OLAP , которые впоследствии были дополнены еще шестью. Эти положения стали основным содержанием новой и очень перспективной технологии.

Основные особенности технологии OLAP (Basic):

  • многомерное концептуальное представление данных;
  • интуитивное манипулирование данными;
  • доступность и детализация данных;
  • пакетное извлечение данных против интерпретации;
  • модели анализа OLAP ;
  • архитектура "клиент-сервер" ( OLAP доступен с рабочего стола);
  • прозрачность (прозрачный доступ к внешним данным);
  • многопользовательская поддержка.

Специальные особенности ( Special ):

  • обработка неформализованных данных;
  • сохранение результатов OLAP : хранение их отдельно от исходных данных;
  • исключение отсутствующих значений;
  • обработка отсутствующих значений.

Особенности представления отчетов ( Report ):

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

Управление измерениями ( Dimension ):

  • универсальность измерений;
  • неограниченное число измерений и уровней агрегации ;
  • неограниченное число операций между размерностями.

Исторически сложилось так, что сегодня термин " OLAP " подразумевает не только многомерный взгляд на данные со стороны конечного пользователя, но и многомерное представление данных в целевой БД. Именно с этим связано появление в качестве самостоятельных терминов "Реляционный OLAP" ( ROLAP ) и "Многомерный OLAP" ( MOLAP ).

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

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

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


Рис. 6.14.

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

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


Рис. 6.15.

У управляющего компанией, например, может зародиться гипотеза о том, что разброс роста активов в различных филиалах компании зависит от соотношения в них специалистов с техническим и экономическим образованием. Чтобы проверить эту гипотезу, менеджер может запросить из хранилища и отобразить на графике интересующее его соотношение для тех филиалов, у которых за текущий квартал рост активов снизился по сравнению с прошлым годом более чем на 10%, и для тех, у которых повысился более чем на 25%. Он должен иметь возможность использовать простой выбор из предлагаемого меню. Если полученные результаты ощутимо распадутся на две соответствующие группы, то это должно стать стимулом для дальнейшей проверки выдвинутой гипотезы.

В настоящее время быстрое развитие получило направление, называемое динамическим моделированием (Dynamic Simulation ), в полной мере реализующее указанный выше принцип FASMI.

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


Рис. 6.16.

В таблице 6.3 приведены сравнительные характеристики статического и динамического анализа.

Таблица 6.3.
Характеристика Статический анализ Динамический анализ
Типы вопросов Кто? Что? Сколько? Как? Когда? Где? Почему так? Что было бы, если…? Что будет, если…?
Время отклика Не регламентируется Секунды
Типичные операции работы с данными Регламентированный отчет, диаграмма, таблица, рисунок Последовательность интерактивных отчетов, диаграмм, экранных форм . Динамическое изменение уровней агрегации и срезов данных
Уровень аналитических требований Средний Высокий
Тип экранных форм В основном, определенный заранее, регламентированный Определяемый пользователем, есть возможности настройки
Уровень агрегации данных Детализированные и суммарные Определяется пользователем
"Возраст" данных Исторические и текущие Исторические, текущие и прогнозируемые
Типы запросов В основном, предсказуемые Непредсказуемые - от случаю к случаю
Назначение Регламентированная аналитическая обработка Многопроходный анализ, моделирование и построение прогнозов

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

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

Ключевые вопросы "Сколько продано?", "На какую сумму продано?" расширяются по мере усложнения бизнеса и накопления исторических данных до некоторого множества факторов, или разрезов: "..в Санкт-Петербурге, в Москве, на Урале, в Сибири…", "..в прошлом квартале, по сравнению с нынешним", "..от поставщика А по сравнению с поставщиком Б…" и т. д.

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

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

Время . Как правило, это несколько периодов: Год, Квартал, Месяц, Декада, Неделя, День. Многие OLAP -инструменты автоматически вычисляют старшие периоды из даты и вычисляют итоги по ним.

Категория товара . Категорий может быть несколько, они отличаются для каждого вида бизнеса: Сорт, Модель, Вид упаковки и пр. Если продается только один товар или ассортимент очень невелик, то категория не нужна.

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

Регион . В зависимости от глобальности бизнеса можно иметь в виду Континент, Группа стран, Страна, Территория, Город, Район, Улица, Часть улицы. Конечно, если есть только одна торговая точка, то это измерение отсутствует.

Продавец . Это измерение тоже зависит от структуры и масштабов бизнеса. Здесь может быть: Филиал, Магазин, Дилер, Менеджер по продажам. В некоторых случаях измерение отсутствует, например, когда продавец не влияет на объемы сбыта, магазин только один и так далее.

Покупатель . В некоторых случаях, например, в розничной торговле , покупатель обезличен и измерение отсутствует, в других случаях информация о покупателе есть, и она важна для продаж. Это измерение может содержать название фирмы-покупателя или множество группировок и характеристик клиентов: Отрасль, Группа предприятий, Владелец и так далее.. Анализ структуры продаж для выявления важнейших составляющих в интересующем разрезе. Для этого удобно использовать, например, диаграмму типа "Пирог" в сложных случаях, когда исследуется сразу 3 измерения - "Столбцы". Например, в магазине "Компьютерная техника" за квартал продажи компьютеров составили $100000, фототехники -$10000, расходных материалов - $4500. Вывод: оборот магазина зависит в большой степени от продажи компьютеров (на самом деле, быть может, расходные материалы необходимы для продажи компьютеров, но это уже анализ внутренних зависимостей).

Анализ динамики ( регрессионный анализ - выявление трендов ). Выявление тенденций, сезонных колебаний. Наглядно динамику отображает график типа "Линия". Например, объемы продаж продуктов компании Intel в течение года падали, а объемы продаж Microsoft росли. Возможно, улучшилось благосостояние среднего покупателя, или изменился имидж магазина, а с ним и состав покупателей. Требуется провести корректировку ассортимента. Другой пример: в течение 3 лет зимой снижается объем продаж видеокамер.

Анализ зависимостей (корреляционный анализ). Сравнение объемов продаж разных товаров во времени для выявления необходимого ассортимента - "корзины". Для этого также удобно использовать график типа "Линия". Например, при удалении из ассортимента принтеров в течение первых двух месяцев обнаружилось падение продаж картриджей с порошком.

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

OLAP -системы являются частью более общего понятия "интеллектуальные ресурсы предприятия" или "средства интеллектуального бизнес-анализа" ( Business Intelligence - BI), которое включает в себя помимо традиционного OLAP -сервиса средства организации совместного использования данных и информации, возникающих в процессе работы пользователей хранилища. Технология Business Intelligence обеспечивает электронный обмен отчетными документами, разграничение прав пользователей, доступ к аналитической информации из Internet и Intranet .

2003 Intelligent enterprise

ERP + OLAP = эффективная система подготовки отчетности

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

Цель этой статьи - познакомить с практическим опытом реализации решения для подготовки отчетности на основе OLAP-технологий в ООО "Мострансгаз" - крупнейшем отечественном предприятии по транспорту газа.

Этот непонятный OLAP

OLAP (On-line Analytical Processing) обычно переводится как аналитическая обработка данных. И это определение вводит в заблуждение потенциальных пользователей технологии. В России бытует твердое убеждение, что эти системы используются исключительно высококвалифицированными специалистами и аналитиками для проведения сложного анализа. На Западе их рассматривают, как системы, упрощающие понимание данных и обмен ими между всеми сотрудниками компании. В правильности именно западного подхода к OLAP, мы убедились на собственном опыте.

Для ИТ-практиков, OLAP - это технология быстрого создания интерактивных отчетов. Как правило, OLAP-отчет может быть разработан практически без программирования, методом drag&drop. Проектирования и программирования требует только этап извлечения и подготовки данных для отчетов из корпоративных систем предприятия. Серия отчетов для определенной предметной области может быть настроена буквально за несколько часов.

Для конечных пользователей, OLAP - это табличный отчет с промежуточными и окончательными итогами. Он выпускается практически мгновенно и можно самостоятельно изменить его форму: расположение колонок и строк, порядок фильтров и сортировки и т.д. Это позволяет взглянуть на одни и те же данные под разным углом зрения. Например, получив перечень по дебиторской задолженности, углубиться в архивные данные и оценить, были ли у должника проблемы с платежами в прошлом квартале, полгода назад, в ушедшем году? Разносторонний анализ позволяет быстро оценить ситуацию и получить максимум информации о проблеме, чтобы наметить пути ее решения.

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

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

Итак, OLAP-инструмент дает два основных преимущества пользователю:

  • высокая скорость и простота настройки нового отчета
  • высокая скорость выпуска отчетов.

Подготовка отчетности в ERP-системах

Обратимся к определению ERP-системы: ERP-система (Enterprise Resource Planning system) - комплексная интегрированная система, создающая единую среду для автоматизации планирования, учета, контроля и анализа всех основных бизнес-операций предприятия.

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

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

Создать дополнительные отчеты, в том числе, управленческие, можно с помощью инструментария для разработки отчетов, который поставляется в составе ERP-системы. В некоторых системах это "продвинутый" конструктор с возможностью визуального проектирования, в некоторых - встроенный язык программирования.

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

Таким образом, есть ряд факторов, которые препятствуют свободному получению информации из учетной системы:

  1. Ограниченный набор базовой отчетности.
  2. Необходимость привлечения программистов для настройки дополнительных отчетов.
  3. Низкая скорость формирования сложных отчетов из общей с системой ввода данных СУБД.
  4. Высокие требования к производительности локальных рабочих станций пользователей при формировании на них сложных отчетов

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

Интеграция OLAP-инструментов с ERP-системой

Рассмотрим возможный вариант реализации разделения учета и отчетности на примере интеграции ERP-системы и OLAP-инструментов. В ООО "Мострансгаз" данная модель была построена на основе:

  • программного комплекса "Галактика" версии 5.84 с использованием модулей "Контур оперативного учета" и "Контур бухгалтерского учета"; разработаны компанией "Галактика" (www.galaktika.ru) ;
  • OLAP-инструментов Аналитической платформы Контур: Контур Стандарт версии 4.0, Контур Дизайнер кубов версии 1.0 и Контур Генератор кубов версии 1.0; разработаны компанией Intersoft Lab .

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

Система "Галактика" работает на платформе СУБД Btrieve\Pervasive, что при невысоких расходах на сопровождение обеспечивает вполне приемлемую скорость работы пользователей, выполняющих операции ввода данных и выпуска текущих отчетов. Однако отчеты за длительный период, а также отчеты, построенные на нестандартных запросах, выполняются недостаточно быстро. Это побудило ИТ-менеджеров ООО "Мострансгаз" применить современные OLAP-системы Аналитической платформы Контур для выпуска отчетов.

АНАЛИТИЧЕСКАЯ ПЛАТФОРМА КОНТУР

Контур Стандарт - это инструмент для генерации произвольных табличных отчетов и анализа данных различных информационных систем. В этой системе можно настроить прямой доступ к локальным таблицам и реляционным базам данных, сконструировать SQL-запросы и выпускать на них OLAP-отчеты в режиме реального времени. Созданный отчет сохраняется для работы в off-line режиме и передачи удаленным пользователям в виде файлов микрокубов.

Микрокуб - это мобильный контейнер OLAP-отчетов и данных для представления в отчетах. В нем хранятся данные, выгруженные из автоматизированных корпоративных систем, алгоритмы расчета вычисляемых показателей и формы OLAP-отчетов. Данные в микрокубе подготовлены для многомерного анализа и оперативного получения показателей в различных разрезах. При помещении в микрокуб объем исходной информации сжимается в десятки раз, что позволяет передавать их по Интернет-протоколам и пересылать по электронной почте.

Контур Дизайнер Кубов предназначен для проектирования микрокубов и сценариев их генерации.

Контур Генератор кубов используется для массовой генерации микрокубов по готовым сценариям.

Более подробно об OLAP-технологии, ее возможностях и конкретных примерах использования можно прочесть в статье В.Некрасова "Мобильный OLAP", опубликованной в журнале "Открытые системы" №5 (2003г.).

Общая схема решения выглядит следующим образом:


Рис. 1. Общая схема решения

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

Параллельно, планировщик задач с заданным периодом в 30 минут запускает перегрузку данных из БД "Галактики" в промежуточный склад данных. Перегрузка происходит в фоновом режиме без отключения пользователей. Промежуточный склад данных является копией базы данных ERP-системы. В данном конкретном случае склад реализован на платформе Firebird, но нет никаких ограничений по другим СУБД. Основная задача создания промежуточного слоя данных - разделение системы учета и системы отчетности.

Данные промежуточного склада используются для создания микрокубов - витрин данных по разным направлениям отчетности (например, "исполнение договоров по капитальному ремонту" или "состав затрат с местами их возникновения"). Создание микрокубов и настройка OLAP-отчетов делегирована аналитикам службы информационных технологий.

Аналитик настройки отчетности в визуальной среде "Контур Дизайнер кубов" проектирует структуры микрокубов, информационный состав и внешний вид OLAP-отчетов. Все настройки сохраняются в виде файлов сценариев.

По готовым сценариям модуль "Контур Генератор кубов" каждые 30 минут генерирует микрокубы из промежуточного склада данных.

Готовые микрокубы содержат в себе метаданные (настройки внешнего вида отчетов, доступных пользователю измерений и фильтров и др.) и данные (выборки из промежуточного склада данных).

При помощи OLAP-клиента "Контур Стандарт" микрокубы доступны аналитикам, экономистам, бухгалтерам и другим потребителям отчетов.

Практические примеры использования OLAP для подготовки отчетности

Какие задачи и как помогают решить OLAP-технологии пользователям ERP-системы? Инструменты OLAP извлекают данные из БД ERP-системы и представляют их в интерактивных отчетах для разных специалистов: бухгалтеров, экономистов, руководителей и т.д. Контроль движения материальных ценностей между складами, сравнительный анализ закупочных цен поставщиков, оценка сбыта по регионам, анализ исполнения бюджетов - таков далеко не полный перечень направлений использования OLAP-систем на предприятии. Фактически интеграция ERP и OLAP выводит автоматизацию поддержки управления предприятием на новый качественный уровень.

Рассмотрим несколько примеров использования OLAP в "Мострансгазе".

Представление штатной отчетности в форме OLAP

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

Это дает сотрудникам разных подразделений свободный доступ к огромным объемам информации для анализа. Например, все стандартные "шахматки по счетам" за год можно поместить в одну единственную OLAP-таблицу. В колонках и строках таблицы будут представлены корреспондирующие счета, в ячейках на пересечении колонок и строк - суммы проводок. С помощью фильтров бухгалтер выбирает счета для представления в отчете, углубляется в интересующий синтетический счет, например 10 "Материалы" (см. рис.), до уровня субсчетов и сразу же получает шахматку по аналитике этого счета.


Рис. 2. OLAP-отчет

Анализ дебиторской и кредиторской задолженности

Классическая задача, которую решают OLAP-системы - генерация основных периодов из даты. Это значит, что на основе фактических значений за каждую дату, система автоматически вычисляет итоговые значения показателей за заданные периоды: неделя, декада, месяц, квартал, год.

Это помогает в решении множества повседневных задач бухгалтерии предприятия. Например, значительно сокращает время на поиск задолженности, по которой приближается срок исковой давности, при создании резерва по сомнительной задолженности и в других случаях анализа дебиторской и кредиторской задолженности. Для этого в один OLAP-отчет выводятся остатки по счету 76 "Расчеты с дебиторами и кредиторами" в разрезе периодов возникновения задолженности, например по годам.

"Мострансгаз" имеет договорные отношения с огромным количеством контрагентов. В OLAP-отчете можно оперативно просмотреть задолженность каждого контрагента и оценить суммы задолженности по разным видам деятельности в разрезе контрагентов. Для этого в отчет добавляются два измерения: "Контрагент" (объекты аналитического учета по счету 76) и "За что" (предметы договоров с контрагентами, по которым образовалась задолженность). Итоги по новым измерениям рассчитываются автоматически (см. рис).

Рис. 3. OLAP-отчет

Поиск встречной задолженности

Для поиска встречной задолженности в OLAP-отчете дебетовые и кредитовые сальдо по счетам 60 "Расчеты с поставщиками", 62 "Расчеты с покупателями и заказчиками" и 76 "Расчеты с дебиторами и кредиторами" представляются в разрезе контрагентов (измерение "Контрагент"), договоров (измерение "За что") и документов оплаты по договору (измерение "Документ").

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

Рис. 4. OLAP-отчет

Анализ задолженности и НДС

В OLAP-таблице с помощью фильтров по фактам и измерениям легко подобрать удобную для решения конкретной задачи форму отчета и выделить данные для сравнения. Можно изменить масштаб (1хN) и формат (абсолютное значение/проценты) представления данных. Две последние функции не являются обязательными для всех OLAP-систем, но они исключительно удобны для решения бухгалтерских задач.

Например, в отчете "Сальдо 2003 года по кварталам и датам" (см. рис.) для сопоставления корректности сальдо по кредиторской задолженности на счете 60 "Расчеты с поставщиками" и налога на добавленную стоимость (НДС) на счете 19 "НДС по приобретенным ценностям" устанавливаются два фильтра. Первый фильтр - по измерению "Счет" для отображения в отчете данных только по двум счетам - 19 и 60. Второй фильтр - по фактам, он включает отображение "свернутого" сальдо по счетам. В результате в соседних колонках в отчете отражаются дебетовое и кредитовое сальдо по выбранным счетам в разрезе счетов-фактур (измерение "С/Ф"), договоров и контрагентов.

Чтобы проверить корректность выделения НДС (18/118, до 2004 года 20/120), бухгалтер одной кнопкой переводит сальдо в проценты по строкам таблицы фактов. В результате в соседних колонках по каждому счету-фактуре выводится сумма оплаты и выделенный из нее НДС. Если отношение 20/120 или 18/118 нарушено, то ситуация по бухгалтерскому документу требует дополнительного разбора и анализа.

Рис. 5. OLAP-отчет

Анализ затрат предприятия

Для анализа затрат предприятия в OLAP-отчете представляются проводки по затратным счетам (20 "Основное производство" и 23 "Вспомогательное производство") в разрезе объектов аналитического учета (измерение "Статья затрат") и их группировок (измерение "Вид деятельности"). В результате с помощью фильтров можно получить в одном отчете группировки затратных статей из различных синтетических счетов.

Помимо фильтров, полезная функция OLAP - сортировка измерений по значениям фактов. Она удобна для выявления приоритетных или, наоборот, наименее выгодных позиций: филиалов, контрагентов, видов деятельности, продуктов и т.д. Например, чтобы выявить наиболее затратные статьи заданного периода, можно отсортировать измерение "Статья затрат" по возрастанию.

Управляя составом измерений отчета, можно оценивать затраты предприятия с разных позиций. Например, для анализа затрат в разрезе структурных подразделений предприятия в отчет достаточно добавить измерение "Филиал" (см. рис.).

Рис. 6. OLAP-отчет

Анализ выполнения работ подрядчиками

OLAP-инструменты "говорят" со своими потребителями на одном языке. Это достигается за счет создания семантического слоя, когда полям из БД ERP-системы присваиваются названия, в терминах предметной области. В результате переименования колонки, строки и цифры в OLAP-таблице приобретают прикладной смысл, понятный конечным пользователям отчетов.

Наглядный пример - отчет по картотеке незавершенного строительства за 2003 год (см. рис.). Он показывает состояние расчетов с подрядчиками (измерение "Контрагент"), из которых можно оценивать ход выполнения работ по объектам строительства (измерение "Стройка"). Уплаченные суммы представлены в разрезе бухгалтерских документов: счетов-фактур (измерение "Счет-фактура") и соответствующих платежных документов и актов сдачи-приемки (измерение "Номер документа"). В таблице фактов представлены остатки по счетам 08 "Вложения во внеоборотные активы" (факт "Выполнен.работ"), 19 "НДС по приобретенным ценностям" (факт "НДС по работам") и 60 "Расчеты с поставщиками" (факт "Оплачено). К примеру, из таблицы видно, что за работы по строительству 14-этажного жилого дому на Можайском шоссе, подрядчику ЖилСтройКомплект был оплачен аванс в размере 41800 рублей по платежному документу А08016. В акте сдачи-приемки работ №34 было зафиксировано, что работы на сумму 41800 рублей, не облагаемые НДС, выполнены. Таким образом, счет-фактура №256 был закрыт.

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

Рис. 7. OLAP-отчет

Анализ прибыли и убытков предприятия по видам деятельности

Для "Отчета о прибыли и убытках" бухгалтер готовит различные группировки по счету 99 "Прибыли и убытки". В OLAP-системе их можно получить практически мгновенно.

В одном OLAP-отчете объединенные в группы проводки по счету 99 показывают источники возникновения прибыли (в разрезе измерения "Филиал") и прибыльные бизнес-направления (в разрезе измерения "Вид деятельности"). По каждой группе проводок автоматически рассчитываются итоговые значения для сравнения составляющих прибылей и убытков.

Если дополнительно разложить данные по датам на периоды: по месяцам, кварталам (см. рис) и др., можно с разным масштабом оценить динамику прибыли.

Рис. 8. OLAP-отчет

Реальный выигрыш

Накопленный опыт эксплуатации OLAP-системы как надстройки над ERP показал ряд существенных положительных моментов:

  • Формирование глубоких аналитических отчетов у пользователей выполняется моментально.
  • Настройка отчетов для пользователей при помощи визуальных средств проектирования, которые входят в состав OLAP-системы, происходит значительно быстрее, чем при программировании отчетов. Аналитик, настраивающий отчеты, может совершенно не владеть навыками программирования.
  • При работе с OLAP-отчетами пользователь не ограничен в возможностях анализа и синтеза данных. При необходимости он самостоятельно модифицирует представление отчета без привлечения программиста.
  • Присваивая одним и тем же измерениям различные названия, можно настраивать отчеты для потребителей информации различных уровней. При этом в отчетах за разными названиями может скрываться одна и та же информация.
  • За счет высокой скорости получения разнообразных отчетов снижается совокупное время, затрачиваемое на анализ финансового состояния предприятия.
  • Сокращаются расходы на разработку и сопровождение системы отчетности предприятия, обеспечивается независимость от поставщика ERP-систем по номенклатуре отчетов.

Автор надеется, что все изложенное в статье будет полезно IT-службам и прикладным специалистам предприятий, и поможет им преодолеть искусственный барьер перед использованием OLAP-инструментов для подготовки разнообразной отчетности на основе ERP-систем.

Виды OLAP систем

В зависимости от метода хранения и обработки данных, все OLAP системы могут быть разделены на три основных вида.

К этим видам OLAP систем относятся:

1. ROLAP (Relational OLAP – реляционные OLAP системы) – этот вид OLAP системы работает с реляционными базами данных. Обращение к данным осуществляется напрямую в реляционную базу данных. Данные хранятся в виде реляционных таблиц. Пользователи имеют возможность осуществлять многомерный анализ как в традиционных OLAP системах. Это достигается за счет применения инструментов SQL и специальных запросов.

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

К недостаткам ROLAP относится низкая производительность (по сравнению с традиционными OLAP системами), т.к. обработку данных осуществляет сервер OLAP. Другим недостатком является ограничение функциональности из-за применения SQL.

2. MOLAP (Multidimensional OLAP – многомерные OLAP системы). Этот вид OLAP систем относится к традиционным системам. Отличие традиционной OLAP системы, от других систем, заключается в предварительной подготовке и оптимизации данных. Эти системы, как правило, используют выделенный сервер, на котором осуществляется предварительная обработка данных. Данные формируются в многомерные массивы – OLAP кубы.

MOLAP системы являются самыми эффективными при обработке данных, т.к. они позволяют легко реорганизовать и структурировать данные под различные запросы пользователей. Аналитические инструменты MOLAP позволяют выполнять сложные расчеты. Другим преимуществом MOLAP является возможность быстрого формирования запросов и получения результатов. Это обеспечивается за счет предварительного формирования OLAP кубов.

К недостаткам MOLAP системы относится ограничение объемов обрабатываемых данных и избыточность данных, т.к. для формирования многомерных кубов, по различным аспектам, данные приходится дублировать.


3. HOLAP (Hybrid OLAP – гибридные OLAP системы). Гибридные OLAP системы представляют собой объединение систем ROLAP и MOLAP . В гибридных системах постарались объединить преимущества двух систем: использование многомерных баз данных и управление реляционными базами данных. HOLAP системы позволяют хранить большое количество данных в реляционных таблицах, а обрабатываемые данные размещаются в предварительно построенных многомерных OLAP кубах. Преимущества этого вида систем заключаются в масштабируемости данных, быстрой обработке данных и гибком доступе к источникам данных.


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

К таким видам относятся:

  • WOLAP (Web OLAP). Вид OLAP системы с поддержкой web интерфейса. В этих системах OLAP есть возможность обращаться к базам данных через web интерфейс.
  • DOLAP (Desktop OLAP). Этот вид OLAP системы дает возможность пользователям загрузить на локальное рабочее место базу данных и работать с ней локально.
  • MobileOLAP. Это функция OLAP систем, которая позволяет работать с базой данных удаленно, с использованием мобильных устройств.
  • SOLAP (Spatial OLAP). Этот вид OLAP систем предназначен для обработки пространственных данных. Он появился как результат интеграции географических информационных систем и OLAP системы. Эти системы позволяют обрабатывать данные не только в буквенно-цифровом формате, но и в виде визуальных объектов и векторов.