Во многих случаях пользователям необходима возможность более оперативно/просто провести многомерный анализ данных OLTP (данных Галактика ERP).
Множество существующих полусистемных и прикладных разработок как-то облегчают процесс и задачу отчасти решают, но к сожалению не всегда эффективно.
Сейчас планируется встроить OLAP внутрь Галактика ERP. Конечно, это будет некий упрощенный механизм OLAP, вернее это будет "Desktop OLAP" или "In-memory OLAP". Будет предоставлен доступ к данному механизму как конечному пользователю, так и прикладному разработчику из ВИПа. За основу будет взята одна из сторонних библиотек реализующих DOLAP. Ниже - аналитическая записка по сравнению некоторых компонент, одну из них мы и выберем.
Интересует мнение форумчан по этому вопросу, возможно какие-то требования не учли или у Вас есть идеи по реализации.
Аналитическая записка
Сравнение библиотек Desktop OLAP для встраивания в Галактика ERP.
1. Общее
В обзор попадают известные библиотеки реализующие функционал <Desktop OLAP> (подробнее можно почитать в статье http://citforum.ru/consulting/BI/xolap_classification/).
Обычно данные получаются из реляционных источников, далее на клиенте формируется некий многомерный куб, с дальнейшей его визуализацией.
Основная идея работы: все необходимые для анализа данные читаются из БД в память клиента. Необходимым образом агрегируются и проводится визуализация с произвольной (заданной пользователем) группировкой, фильтрацией и сортировкой, при этом данные из БД уже не читаются. Время отклика при изменении сортировки, группировки и фильтрации до 5 секунд (обычно менее 1 секунды). Компоненты адекватно работают на объемах до 1-3 млн. транзакций.
Необходим компонент для встраивания <внутрь> Атланстиса.
Ориентация для выбора элементов OLAP:
- 1. <winform> библиотека, должна обязательно работать в windows приложении, желательно иметь аналог для ASPX
2. Необходимо работа на всех платформах поддерживаемых Галактика ERP
3. Необходимо обеспечить оперативное формирование кубов, без предварительной выгрузки в хранилище и длительной обработки. Время формирования куба и его визуализации должно быть сопоставимо со временем добычи данных через DirectSQL
4. Богатые возможности визуализации многомерных данных, включая:- a. Сводные таблицы, фильтрация, сортировка и группировка
b. Различные графики
c. Показатели эффективности (индикаторы)
6. Доступная стоимость лицензирования компонента для встраивания в Галактика ERP - a. Сводные таблицы, фильтрация, сортировка и группировка
- 1. Radar-soft - российская компания
2. DataDynamics Analysis - разработчики в России (Новосибирск)
3. Fast-Cube - российская компания
4. DevExpress PivotGrid
5. Panopticon OLAP - добавлен в список в качестве исключения (для сравнения)
6. Microsoft Excel 2010 Power Pivot (VertiPaq)
Далее рассмотрим подробнее каждый отдельный компонент
2. Обзор компонентов
Зеленым цветом выделил наиболее важные с моей точки зрения достоинства продуктов.
Красный шрифт используется для функционала, который я не обнаружил в компоненте.
2.1. Radar-soft
Российская компания.
Наличие версий: VCL (устаревшая), .NET, ASPX, Silverlight
Достоинства:
- 1. Богатый функционал фильтрации и сортировки
2. Начальный DataMining
3. Вычисляемые колонки и элементы размерностей
4. Настройка иерархий
5. Возможность переопределять агрегацию
6. Поддержка графиков в ячейке (так называемый <VQL> - идея TableAU)
7. Визуальный дизайнер кубов, иерархий и т.п. (аналог дизайнера запросов)
8. Возможность встраивания редактирования ячеек
9. Возможность сохранить локальный куб
10. Поддержка Microsoft Analysis Services
11. Хорошее быстродействие
12. Интеграция с fast-report
On-line demo: http://www.radar-soft.com/ru/products/aspnet.aspx
2.2. DataDynamics Analysis
Наличие версий: .NET, ASPX, Silverlight
Достоинства:
- 1. Богатый функционал фильтрации и сортировки
2. Начальный DataMining
3. Вычисляемые колонки и элементы размерностей
4. Настройка иерархий
5. Возможность переопределять агрегацию
6. Поддержка графиков в ячейке (так называемый <VQL> - идея TableAU)
7. Визуальный дизайнер кубов, иерархий и т.п. (аналог дизайнера запросов)
8. Возможность встраивания редактирования ячеек
9. Возможность сохранить локальный куб
10. Поддержка Microsoft Analysis Services
11. Хорошее быстродействие
12. Интеграция с fast-report
2.3. Fast-Cube
Наличие версий: VCL
Достоинства:
- 1. Богатый функционал фильтрации и сортировки
2. Начальный DataMining
3. Вычисляемые колонки и элементы размерностей
4. Настройка иерархий
5. Возможность переопределять агрегацию (50%)
6. Поддержка графиков в ячейке (так называемый <VQL> - идея TableAU)
7. Визуальный дизайнер кубов, иерархий и т.п. (аналог дизайнера запросов)
8. Возможность встраивания редактирования ячеек
9. Язык вычислений такой же, как и в Fast-Report
10. Интеграция с Fast-Report
2.4. DevExpress PivotGrid
Наличие версий: .NET, VCL, WPF, ASPX, Silverlight
- 1. Богатый функционал фильтрации и сортировки. Много возможностей, но необходимо их все подключать отдельно. Не все доступны по умолчанию.
2. Начальный DataMining
3. Вычисляемые колонки и элементы размерностей
4. Настройка иерархий
5. Возможность переопределять агрегацию (50%)
6. Поддержка графиков в ячейке (так называемый <VQL> - идея TableAU)
7. Визуальный дизайнер кубов, иерархий и т.п. (аналог дизайнера запросов)
8. Возможность встраивания редактирования ячеек
9. Уже куплен
On-line demo (ASPX): http://demos.devexpress.com/ASPxPivotGridDemos/
2.5. Microsoft Excel 2010 Power Pivot (VertiPaq)
Встроенная часть новой версии SSAS в excel, прямой программный интерфейс отсутствует, но можно использовать API Excel
Очень широкие возможности по вычислениям. Очень хорошее быстродействие. Возможность публикации кубов на сервер SharePoint. Собственный язык расчетов и связывания данных DAX. Поддержка MDX. Возможность просмотра не только в интерфейсе Галактика ERP, но и в Excel.
Неотделим от Excel 2010
Если технически возможно <прозрачно> интегрировать данную технологию в Галактика ERP, возможно это оптимальное решение.
2.6 Panopticon OLAP
1. Хорошее быстродействие
2. Много визуальных компонентов для формирования интерактивных отчетов
3. Поддерживает Real-time кубы, т.е. можно менять данные в БД и моментально будет обновляться куб.
On-line demo: http://www.panopticon.com/demo_gallery/ ... x_demo.htm
2.7 Общая таблица сравнений
В таблице, на основе личных впечатлений привел результаты некоторых сравнений компонент. (0-нет реализации, 1-удолетворительно, 2-хорошо, 3-отлично)
Необходимо отметить сравнение носит не окончательный характер и может быть уточнено и дополнено.
3 Предложения по внедрению в Атланстис/Галактика ERP
Важным условием хорошей работы является быстродействие, поэтому предлагается в данном механизме использовать доступ к данным через DirectSQL, что и обеспечит необходимое быстродействие при выборке данных.
Кроме этого предполагается встроить возможность построить многомерный куб в любом ВИП интерфейсе, на основе его логической таблицы. Эта возможность полностью аналогична реализованной сейчас на базе Fast-Report.
4 Заключение
Можно установить различные продукты и сравнить их, для всех продуктов присутствуют демонстрационные версии.
Для простых <встроенных> решений, можно выбрать, в порядке приоритета:
- 1. Radar-Soft - если нам нужен дизайнер кубов
2. DataDynamics - если дизайнер не нужен (визуализация мне кажется лучшей, больше похоже на оригинал реализованный в tableau)
3. Fast-Report - из-за его тесной интеграцией с Fast-report
- 1. Богатыми возможностями по визуализации графиков в ячейке
2. Возможностью интеграции с SSAS (т.е. мы можем подключать наше хранилище Галактика BI)
3. Возможностью редактирования ячеек - это актуально для бюджетов, планов (эта возможности есть и в DevExpress)