Ежедневно я общаюсь с большим количеством крупных компаний. Нередко они выражают желание построить data-driven компанию в течение следующих нескольких лет. Их ключевая стратегия заключается в создании DWH/Big data и подключении к ней пользователей, которые сами будут строить отчеты, визуализации и дашборды, используя self-service инструменты - Tableau, Power BI или Qlik.

Одна из основных проблем Tableau, Power BI или Qlik - у них нет единого семантического слоя, единой логической модели, единого определения всех атрибутов, фактов и показателей для всей бизнес-аналитики компании. Именно поэтому они растут в компании без контроля и governance, порождая множество версий правды в отчетности и аналитике в компании. Через какое-то время компании сталкиваются с тем, что уже не могут разобраться какому отчету доверять - данные не сходятся не только в разных системах Tableau, Power BI или Qlik, но и между отчетами в одной системе. Получается, что компании вкладывают огромные средства в построение единой версии правды на уровне хранилищ данных, а в конечном счете получают невероятное количество отдельных и ungoverned отчетов, визуализаций, дашбордов, которым они не могут доверять.

Tableau, Power BI и Qlik - отличные инструменты, если вы хотите, чтобы бизнес-пользователь мог выполнять локальную аналитику self-services для нужд своего отдела. Тем не менее, чтобы построить data-driven компанию на уровне всего предприятия, вам потребуется инструмент, который позволит упорядочить, структурировать и стандартизовать всю вашу бизнес-аналитику. 

Поскольку я больше 15-ти лет в области DWH и BI на платформе Microstrategy, попробовал немного систематизировать и структурировать информацию о Microstrategy Enterprise Semantic Graph.

Итак, Microstrategy Enterprise Semantic Graph или семантические слой - единый слой атрибутов, фактов, показателей и объектов аналитики, описывающий связь бизнес-терминов с вашими источниками данных (КХД, АХД, Big data и прочие). Пользователь погружается в среду единой терминологии, единой бизнес-логики формирования всех показателей в отчетах и дашбордах, не задумываясь из каких БД берутся данные.

Единый слой бизнес-абстракции позволяет:

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

  • обеспечить сходимость данных между всеми отчетами компании в разных департаментах и гарантировать, что любой показатель во всех отчетах компании рассчитывается всегда одинаково (data governance, единая версия правды);

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

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

  • понимать в любой момент кто, когда, как часто и какими данными пользуется, например, с целью помещения наиболее востребованных данных в in-memory для достижения лучшей производительности или рекомендовать пользователям наиболее популярный контент на основе собранной статистике активности пользователе;

  • предоставлять доступ к единому метаслою через Power BI, Qlik, Tableau, SDK & API, R, Python или приложения собственной разработки;

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

  1. Объединение In-memory кубов, КХД, АХД и Big Data источников в единой модели семантического слоя

    С помощью Microstrategy Enterprise Semantic Graph вы можете объединять несколько источников данных в единой логической модели. Пользователю не надо задумываться над тем откуда он берет данные при построении отчета - из In-memory кубов, КХД, АХД и других источников.

  1. Построение ad-hoc отчетов, pixel-perfect дашбордов, self-service & data discovery в Microstrategy

    На основе единого метаслоя пользователь может самостоятельно сделать отчет любой сложности - ad hoc, dashboards, self-service & data discovery, documents, data mining & predictive, freeform и т.д. MicroStrategy позволяет реализовать в отчетах дизайн любой сложности и располагать элементы ровно там, где это необходимо.

  1. Добавление, обработка данных из внешних источников и объединения их с единым семантическим слоем

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

  1. Визуализация данных на основе единого метаслоя, используя Tableau, Power BI или Qlik

    Для обращения из Tableau/Qlik/Power BI к единому метаслою вы можете использовать Microstrategy Connector for Tableau/Qlik/Power BI. Кроме того, мы можете делать выгрузку данных из метаслоя напрямую в базу или в текстовый файл.

  1. Создание code free нативных мобильных BI приложений, используя Microstrategy Mobile

    MicroStrategy позволяет создавать code free нативные, функциональные и интуитивные аналитические мобильные приложения, в которых также можно реализовывать workflow с помощью функциональности write-back и помещать произвольный контент (видео, картинки, документы, email и web-контент).

  1. Аналитическая обработка данных с помощью встроенных аналитических функций, R или Python

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

  1. Контроль показателей и рассылка уведомлений

    Часто пользователи рассылают свои отчеты по почте всем заинтересованным. MicroStrategy может это делать самостоятельно. Любой отчет можно разослать по почте в разных форматах: XLS, PDF или просто вставить отчет в текст письма. Частота рассылки может настраиваться по времени, по событию, по условию показателей. Также механизм рассылки можно использовать для выгрузки данных на FTP, базу данных, API, отправки push-уведомления на мобильные устройства.

  1. Hyper Intelligence – контекстная «zero-click» аналитика

    Microstrategy предоставляет функциональность Hyper Intelligence – контекстная аналитика на любом веб-сайте, устройстве или в приложении. Позволяет получать ответы в режиме реального времени, не прерывая рабочий процесс - кликов не требуется.

  1. Создание write-back отчетов и приложений

    Функциональность write-back позволяет пользователям писать и обновлять данные в системах-источниках ERP, CRM и операционных базах данных напрямую из desktop, web и mobile приложений Microstrategy.

  1. Встроенная отчетность и аналитика в ваши web приложения

    Embedding API позволяет довольно легко встраивать отчеты и дашборды MicroStrategy в ваши Web приложения.

  1. Гео-аналитика

    Поддержка интеграции с картами, возможность наложения различных слоев (филиалы, регионы, дивизионы и прочее) на интерактивную карту Mapbox, Google Maps, ESRI и т.д.

  1. Голосовые помощники и чат-боты

    Есть возможность интегрировать Microstrategy с голосовыми помощниками (Siri, Alexa, Alisa…) или чат-ботами для быстрого получения ответа на ваши вопросы.

  1. Получение данных в приложениях Microsoft Office из единого семантического слоя

    Эта надстройка позволяет использовать Microsoft Office для подключения к данным из метаслоя MicroStrategy. Надстройка предоставляет возможность импортировать и обновлять отчеты и наборы данных из MicroStrategy Enterprise Semantic Graph в Microsoft Office.

  1. Обсуждение отчетов и дашбордов в системе BI

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

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

    Microstrategy поддерживает линейное масштабирование, кластеризацию, сочетание 2-х режимов при работе пользователей с отчетами/дашбордами - live connect и in-memory, поддержкивает многоуровневое кэширование, multi-pass SQL engine, возможность выставления приоритетов для разных задач, пользователей, групп пользователей и прочее. Платформа Microstrategy это однозначно лучший выбор для больших компаний с большими объемами данных, количеством пользователей и широким разнообразием требуемой фукнцианальности BI решения и каналов доставки данных до пользователей.

    Пару лет назад @abezugly написал статью об опыте М.Видео-Эльдорадо по внедрению визуализаций в Tableau над SAP HANA https://habr.com/ru/company/mvideo/blog/483656/. После того, как стало окончательно понятно, что у Tableau после объема данных в 10 Гб с перформансом начиняется существенная деградация, нас пригласили сделать пилот на BI платформе Microstrategy. На пилоте за пару недель мы показали, что дашборды в Microstrategy с объемом данных 1-2 млрд записей, могут отрабатывать за 1-2 секунды, что стало стартом большого проекта по созданию операционно-аналитической системы отчетности М.видео-Эльдорадо на платформе Microstrategy.

В следующем видео довольно детально раскрывается вопрос, что такое Microstrategy Semantic Graph и почему это имеет решающее значение для удовлетворения меняющихся корпоративных требований к гибкости, безопасности и data governance в проектах при внедрении бизнес-аналитики:

Надеюсь, обзор и материалы оказались вам полезны и позволили сформировать представление о том, что такое единым семантической слой и зачем вообще все это надо.

Комментарии (9)


  1. BansheeRotary
    08.02.2022 18:09
    +1

    Microstrategy - это точно очень крутой продукт (точнее, портфолио продуктов). Но, все-таки, как в концепции Microstrategy предлагается "расшивать" узкое место в виде подразделения, которое поддерживает актуальность единого семантического слоя? Ведь не все задачи требуют централизации, а ресурсы центра компетенций всегда ограничены. Я неоднократно видел, как в компаниях, в которых аналитика была исключительно централизованной, буйным цветом прорастали условные "Power BI Desktop", те самые Data Silos, которые очень трудно победить административными методами.


    1. VLVE Автор
      08.02.2022 21:24

      Это решается на уровне разграничения прав и правилегий пользователей - есть public objects доступные всем пользователям. В ней поддерживается governance, единая логическая модель (атрибуты, факты, показатели), политики безопасности доступа к данным, единый гайдлайн отчетности и прочее. Все остальное - пользовательская область, где пользователи могут наворачить что хотят, в том числе подключая сторонние источники данных и объединяя их с единым слоем бизнес абстракции. Если что-то в пользовательской зоне становится полезным и интересным большому кругу пользователей или имеет бизнес-ценность для компании, это может быть добавлено в единый семантический слой.


    1. Trabant_Vishnya
      08.02.2022 21:33

      Если это в PBI, то еще хоть как-то можно потом перенести и администрировать, так как можно по шагам разложить модель и логику ETL.
      А вот когда речь о пользовательских Excel файликах...
      Обычно такое куда чаще процветает: выгрузки из SAP BW\Qlik + ручной ETL.
      И вот тут повеситься проще, чем нормально это разобрать и обучить юзеров :)


  1. AMS_CEO
    09.02.2022 16:02

    Microstrategy enterprise semantic graph позволяет также:


    - оптимизировать запросы к различным источникам данных и сохранять результаты запросов к различным источникам данных в кэше или in-memory кубах Microstrategy.

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

    - реализовывать аналитические приложения в реальном времени.

    По ссылке пример реализации real-time приложения из kafka: https://youtu.be/ERr9UdA8dD4


  1. LVG
    09.02.2022 17:23

    Интересно - если в компании один DWH и один BI - семантический сллой не нужен? В этом случае Звезда Data Driven компании достижима?

    Ну или в более общем виде вопрос - какова карта принятия решения - нужен не нуженединый семантический слой???


    1. AMS_CEO
      09.02.2022 18:37

      1/ Нужен ли семантический слой для одного хранилища и BI. Я считаю так: сейчас это одно хранилище на одной технологии, далее Вы вырастите и захотите поменять СУБД на in-memory, MPP .... так вот вам ненужно будет метаслой переписывать и переделывать пользовательский интерфейс, модель, визуализации, приложения останутся прежними.

      2/ Звезда Data Driven компании достижима? - конечно. Вопрос только какими усилиями и средствами? Представьте что вам дали инструментарий, но, Вы говорите ненужно я сам его разработаю за сколько-то лет. Тут Вам предлагается инструмент для структурирования, управления, централизации и в дальнейшем переиспользования (знаний, алгоритмов ...)

      3/ Про карту принятия решения: Если Вы понимаете, что в компании существует несколько "версий правды" данных, разночтение алгоритмов, присутствует огромный бэклог на доработки, разработки нового функционала - то это первые значительные признаки что нужно уже задуматься о внедрении семантического слоя. Если проблем нет, то нужно задуматься вообще нужен этот продукт кому-нибудь :).


    1. VLVE Автор
      09.02.2022 18:39

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


  1. JoeJoeTheCapibara
    10.02.2022 14:00

    Владимир, большое Вам спасибо за статью!


    Да, пьесса "А слона то я и не заметил!" в одном действии. В ролях: Андрей Соколов (Советский Союз), Microstratery Enterpise Sematic Graph (в роли Слона).

    Вот, вроде, и, периодически, имел дело с решениями Microstrategy на протяжении почти 20-ти лет, но последние 10 лет они как-то выпали из моего поля зрения. Как оказывается, очень зря.

    После прочтения статьи возникло несколько вопросов/мыслей:

    1) Как понимаю, ESG является частью Microstrategy Cloud Platform и данным функционалом можно пользоваться по моделии PaaS, так ли это?

    2) Для меня, и как для архитектора, и как для управленца, тема Data Governance вот уже второй десяток лет является одной из ключевых при построении платформ данных уровня предприятия и, как следствие этого, очень больной темой, поскольку часто очень уж сложно идёт внедрение этого, без сомнения, важнейшего подхода. Поэтому, хотел у Вас спросить, какие есть возможности по интеграции ESG с Data Catalog-решениями других производителей, например, c Informatica Enterprise Data Catalog (либо с аналогичным функционалом Informatica Intelligent Cloud Services)?
    Если такие возможности есть, то это давало бы отличную возможность для реализации практически всестороннего решения задач Data Governance и Data Management на уровне предприятия.

    Заранее благодарен Вам за ответы!


    1. VLVE Автор
      10.02.2022 14:04

      Добрый день!

      Спасибо за положительный отзыв о статье. 

      Что касается ваших вопросов:

      1/ Microstrategy Enterprise Semantic Graph является неотъемлемой частью платформы Microstrategy. По какой модели вы планируете использовать - это ваш выбор.

      2/ Сразу скажу, что у меня лично не было опыта внедрения Data Catalog-ов. Тем не менее, некоторые из компаний, с которыми общаюсь, делали попытки внедрения Data Catalog. Проекты действительно довольно сложные. Мне пока не известны компании кто в этом преуспел. Даже те, кто публично выступали с историями успеха внедрения Data Catalog, на самом деле по факту использовали и продолжают использовать confluence для описания своего дата актива. В связи с этим, до какого-то практического или даже теоретического опыта интеграции Data Catalog c Microstrategy Enterprise Semantic Graph еще не доходило, поэтому мне не приходилось исследовать данный вопрос. 


      Однако давайте попробуем определиться, что значит интеграция DC и ESG? :)


      Например, многие DC предлагают виртуализацию данных. 

      В какой-то степени Microstrategy ESG это и есть виртуализация данных, т.е. «те же яйца, но вид с боку» предоставляя примерно тоже самое:

      • виртуальное объединение и подключение к различным источникам данных в виде семантического слоя (слоя виртуализации), к которому может обращаться через Microstrategy/Power BI/Tableau/Qlik/Excel, R, Python, Rest APIs, приложения собственной разработки и тд.

      • оптимизация запросов к различным источникам данных с возможностью сохранения результатов запросов в кэше или in-memory кубах Microstrategy

      • поддержка как чтения, так и записи данных в источники

      • управление безопастностью 

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

      • поддержка real-time 

      • ... и тд

      Предположу, что под интеграцией DC и ESG вы подразумеваете синхронизацию слоев виртуализации DC и Microstrategy ESG?

      Если так, то полагаю такой интеграции нет. Если что-то другое, то уточните, пожалуйста.