BI-система от DEEONE

Описание типового внедрения

Информация ниже описывает типовое внедрение техническим языком, и она может быть интересна IT-директорам компаний или нашим коллегам разработчикам. С уважением относимся и к тем и другим, и приглашаем к взаимовыгодному сотрудничеству.
Часть 1. Архитектура типового решения
Архитектура типового решения инструментов бизнес-аналитики состоит из трех основных блоков:

1. ETL-процесс (ETL) – Microsoft SQL Server Integration Services
2. Хранилище данных (DWH) Microsoft SQL Server
3. Семантическая модель (Semantic Model) – Microsoft SQL Server Analysis Services (Tabular)
Рис. Архитектура типового решения
В части внедрений также присутствует блок отчетности – предсозданные дашборды в Power BI, но в подавляющем числе случаев наибольшую ценность для заказчиков представляют именно инструменты гибкого анализа данных в виде прямого подключения к семантической модели с помощью различных инструментов. Классический вариант – подключение конструкторов отчётов Excel + Power BI, но возможно использование Tableau, Qlik и прочих.
Часть 2. ETL-процесс
В качестве оркестратора для ETL-процесса используется Microsoft SQL Server Integration Services (SSIS).
Фактически механизмы ETL реализованы по определённому принципу на стороне Microsoft SQL Server, а SSIS лишь обеспечивает параллелизацию их выполнения с учетом дерева зависимостей, не работая с самими данными напрямую.

Опытным путём мы определили такой подход, который позволяет избавиться от большого количества проблем, связанных с обработкой данных непосредственно в SSIS.

В случаях, если требуется получить данные из 1С именно средствами самой 1С без использования OData или иных подобных сервисов/протоколов, есть возможность использования Экстрактора 1С. За подробностями его работы сюда.
Часть 3. Хранилище данных
В качестве хранилища данных используется база данных СУБД Microsoft SQL Server.
Вертикально хранилище разделено на слои, горизонтально – на логические блоки.

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

Горизонтальное деление включает в себя деление объектов по назначению – справочники, факты, связи, служебные объекты и другие блоки.
Часть 4. Семантическая модель
В качестве аналитической службы используется семантическая модель Microsoft SQL Server Analysis Services (SSAS) в режиме Tabular.
Модель позволяет использовать такие гибкие аналитические инструменты, как Excel и Power BI, без необходимости построения связей и вычисления показателей на уровне отчетов, так как все нужные связи, равно как и аналитические показатели, уже включены в модель. При необходимости пользователь может создать свои вычисляемые меры, используя язык DAX (или MDX) или мастер создания вычисляемых мер без необходимости знания языка запросов. Подобные меры, как встроенные в семантическую модель, так и пользовательские, не ограничены в сложности, и могут быть как простыми, например, сложение, вычитание, умножение, так и нетривиальными, например, прогнозирование, классификация, сегментация, ABC/XYZ-анализ.

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

В качестве пользовательского интерфейса может быть использовано любое ПО, поддерживающее подключение к службам SSAS, в том числе Excel, Power BI, Tableau, Microsoft SQL Server Reporting Services (SSRS), а также прочие программные средства (с помощью запросов DAX или MDX).

Справочник по объектам семантической модели встраивается в саму модель, что позволяет ему быть всегда актуальным и доступным для пользователей непосредственно из инструмента, в котором они работают.
Для пользователей использование SSAS в сочетании с Excel, Power BI или другими инструментами, является, по сути, использованием визуального конструктора, схожего по своему принципу со сводными таблицами Excel.

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

Весь стек построен на тесно интегрированных технологиях Microsoft, по факту являющихся службами, входящими в поставку Microsoft SQL Server, что имеет ряд значительных преимуществ:

  • Глубокая взаимосвязь всех используемых служб, возможность использования расширенного функционала
  • Единая лицензия (при покупке лицензии Microsoft SQL Server в нее уже включены службы SSAS, SSIS, SSRS и прочие)
  • Единая система установки обновлений от производителя (пакеты обновлений Microsoft SQL Server уже включают в себя обновления для служб SSAS и SSIS)
Дополнительные преимущества предлагаемого решения:
  • Система позволит не просто отображать, визуализировать и так имеющиеся данные, а предоставит новый функционал для углубленной работы с данными.
  • Система не содержит промежуточных звеньев, «костылей» и необходимости человеческого участия при получении данных.
  • Систему можно будет в дальнейшем масштабировать на любые процессы и базы данных компании с минимальными затратами.
  • Продукты Microsoft для обработки данных и бизнес-анализа – являются не только лидирующими на рынке, но и самыми распространенными, что важно для поддержки и безопасности.
Как использовать данную информацию
Вы вправе использовать данную информацию на свой страх и риск, ломать палки о колёса, и создавать систему самостоятельно. Или доверить эту работу опытной команде. Мы многократно решали задачи различного масштаба, и к построению даже небольшой BI-системы мы применяем наши знания и опыт построения и масштабирования крупных многопользовательских систем холдингов.