Найти тему
Ёлва: ИТ-Консалтинг

ФУНКЦИОНАЛЬНОЕ ГЛУБОКОЕ СРАВНЕНИЕ MICROSOFT POWER BI И YANDEX DATALENS

Оглавление

В данной статье проведем сравнение продукта Yandex DataLens с другим популярным на сегодняшний день инструментом – Microsoft Power BI. Познакомимся с этими системами и рассмотрим их функциональность.

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

Yandex DataLens – BI-решение от крупного российского лидера в сфере информационных технологий компании Яндекс. Входит в состав большого количества решений сервиса Yandex Cloud и является бесплатным инструментом для визуализации данных. Продукт появился на свет в 2019 году и за это время успел пройти длинный путь развития до актуального и современного на сегодняшний день инструмента BI-аналитики. Представители команды Yandex DataLens активно взаимодействуют с пользователями в комьюнити, готовы ответить на любые вопросы и сообщают обо всех нововведениях платформы.

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

Стандартные визуализации

Стандартные визуализации в Power BI

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

Power BI содержит большое количество стандартных визуализаций, которые можно использовать при создании дашбордов прямо из коробки:

  • Диаграмма с областями: базовые (многоуровневые) и с накоплением,
  • Линейчатые диаграммы и гистограммы,
  • Карточки,
  • Комбинированные диаграммы (наложение двух типов графиков на один),
  • Кольцевая диаграмма,
  • Диаграмма дерева,
  • Таблица,
  • Воронкообразная диаграмма,
  • Индикатор (датчик),
  • Карта Bing,
  • Матрицы,
  • Круговая диаграмма,
  • Точечная диаграмма,
  • Срезы (фильтры)

Пример дашбордов в Power BI, включающие стандартные визуализации:

Рис. 1. Пример №1 дашборда в Power BI из стандартных визуализаций
Рис. 1. Пример №1 дашборда в Power BI из стандартных визуализаций
Рис. 2. Пример №2 дашборда в Power BI из стандартных визуализаций
Рис. 2. Пример №2 дашборда в Power BI из стандартных визуализаций

Также в Power BI имеется встроенный маркет диаграмм, где можно познакомиться с диаграммами разработанными разработчиками по всему миру и взять кастомную диаграмму к себе в проект.

Стандартные визуализации в DataLens

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

  • Линейная диаграмма,
  • Накопительная диаграмма с областями (и нормированная),
  • Столбчатая диаграмма (и нормированная),
  • Линейчатая диаграмма (и нормированная),
  • Точечная диаграмма,
  • Круговая диаграмма,
  • Кольцевая диаграмма,
  • Индикатор (карточка),
  • Древовидная диаграмма,
  • Таблица,
  • Сводная таблица,
  • Карта (Яндекс Карты)

На скриншотах представлен внешний вид диаграмм для ознакомления с визуальной составляющей системы:

Рис. 3. Пример №1 дашборда в DataLens из стандартных визуализаций
Рис. 3. Пример №1 дашборда в DataLens из стандартных визуализаций
Рис. 4. Пример №2 дашборда в DataLens из стандартных визуализаций
Рис. 4. Пример №2 дашборда в DataLens из стандартных визуализаций
Рис. 5. Пример №3 дашборда в DataLens из стандартных визуализаций
Рис. 5. Пример №3 дашборда в DataLens из стандартных визуализаций

Обратите внимание, как детально и красиво смотрятся данные на визуализации с картой, благодаря использованию движка Яндекс Карты внутри сервиса DataLens.

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

Подготовка данных и логика вычислений

Подготовка данных и логики вычислений в Power BI

Перед тем как создавать визуализации необходимо получить данные из нужных источников и подготовить их. Получение данные осуществляется при помощи коннекторов, затем обработка производится во внутреннем инструменте Power BI под названием Power Query.

Для получения данных необходимо использовать соответствующий коннектор. Ознакомиться с доступными коннекторами можно на официальном сайте: https://docs.microsoft.com/ru-ru/power-query/connectors/. У Power BI большое количество различных коннекторов и зачастую для выполнения задачи может подходить сразу несколько коннекторов. В таком случае необходимо детально изучать преимущества и недостатки каждого в конкретной ситуации для правильного выбора и предотвращения сбоев в будущем. У Power BI нет собственных облачных сервисов по обработке данных, поэтому если для системы нет коннектора, то необходимо использовать облачные сервисы сторонней службы, например, Azure. В такой службе вы сможете организовать определенную архитектуру получения и обработки данных, а Power BI будет брать подготовленные данные из финального источника.

Для обработки данных в Power BI есть внутренний сервис под названием Power Query. Этот сервис позволяет повторять последовательности обработки данных и загружать их внутри модели данных Power BI. Сервис отображает предварительный просмотр полученных из источника данных и позволяет проводить большое количество действий над ними, такие как, объединение данных (в том числе из разных источников), применение различных текстовых и числовых функций, работать с датами, соединять таблицы и многое другое. Если доступного функционала не хватает, то в PowerQuery можно использовать скриптовый язык для работы с данными под названием M. Интерфейс Power Query выглядит следующим образом:

Рис. 6. Интерфейс Power Query
Рис. 6. Интерфейс Power Query

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

После подготовки данных, когда они находятся в нужном для аналитики виде, окно PowerQuery закрывается и на этом этапе происходит полное обновление, загрузка и обработка данных. Обработанные данные кладутся в оперативную память и готовы для отображения на визуализациях Power BI.

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

Подготовка данных и логики вычислений в DataLens

В отличии от Power BI, DataLens имеет принципиально другую архитектуру получения и обработки данных, так как является одним из составляющих большого количества сервисов Yandex Cloud.

Коннекторов в DataLens не очень много, большинство из них – это популярные базы данных и сервисы Яндекса. Такая структура выбрана по той причине, что в Yandex Cloud большое количество сервисов для получения и подготовки данных даже из самых труднодоступных источников. Таким образом, процесс получения данных выглядит как грамотно продуманная архитектура из совокупности нескольких сервисов Yandex Cloud для получения, первичной очистки и подготовки данных и перекладывания уже готовых данных только лишь для аналитики в базу данных. Таким образом, DataLens уже подключается к этой базе данных и работает с данными, подготовленными для аналитики, что не создает лишней путаницы для аналитика и нагрузки на сервис.

Давайте рассмотрим коннекторы на сегодняшний день:

Рис. 7. Коннекторы DataLens
Рис. 7. Коннекторы DataLens

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

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

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

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

Рис. 8. Схема данных в датасете DataLens
Рис. 8. Схема данных в датасете DataLens

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

Рис. 9. Подготовка данных в датасете
Рис. 9. Подготовка данных в датасете

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

Настройки безопасности (права доступа)

Настройка прав доступа в Power BI

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

В Power BI для разграничения доступа реализован функционал RLS (row-level-security), что означает ограничение на уровне строк. При реализации группы пользователей на языке запросов DAX задается выражение, которое по умолчанию накладывает фильтр на отчет еще до доступа пользователем. В результате пользователь видит отчет только по тем фильтрам, которые ему разрешены и к остальным данным доступа не имеет. Например, если мы задаем права доступа пользователю, который является менеджером по стране Россия, то мы можем сделать ему RLS, который будет отображать информацию в отчете только по России. Таким образом, этот пользователь не сможет, даже при большом желании, посмотреть информацию по другим странам и общую сводную информацию по всем странам, так как над уровнем пользователя отрабатывает RLSзапрос и отчет составляется уже на ограниченном наборе данных под конкретную группу пользователей. После публикации отчета в веб интерфейс становится доступна возможность указания конкретных пользователей в определенные группы безопасностей. После добавления пользователей в группу безопасности им становится доступен отчет исходя из назначенных им прав.

Это единственная настройка безопасности, которая имеется в Power BI, которая обладает достаточно мощным функционалом.

Настройка прав доступа в DataLens

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

Первый уровень – это создание и добавление пользователей в Yandex Cloud. Вы можете добавить пользователя в домене @yandex.ru или настроить интеграцию с корпоративными учетными записями (подробнее про такую интеграцию можно посмотреть здесь — https://cloud.yandex.ru/docs/datalens/security/#federated-user) и предоставить ему соответствующие права в Yandex Cloud. Права есть на каждый отдельный сервис Yandex Cloud. Например, пользователя можно сделать администратором DataLens и таким образом, пользователь будет иметь доступ только к одному сервису Yandex Cloud – DataLens. Но, только лишь, получение доступа в DataLens недостаточно, необходимо также предоставить права внутри этого сервиса.

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

Третий уровень – это ограничение на уровне строк. Похожий функционал мы уже рассматривали у Power BI, тут он реализован на уровне датасета. Для каждого поля можно задать определенные правила на просмотр пользователем и в этом же интерфейсе указать конкретных пользователей (их логины), для которых это правило применимо.

Такая многоуровневая система безопасности позволяет гибко и осознанно распределять права для пользователей сервиса DataLens.

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

Если у вас остались какие-либо вопросы, или нужна консультация обращайтесь к нам, наши специалисты с радостью Вас проконсультируют.