Что такое XMLA Endpoint для Power BI и зачем это нужно?

Tags: XMLA, Power BI, SSAS

Новости о подключении конечных точек XMLA к наборам данных Power BI теперь появляются во всем Интернете после недавнего публичного анонса предварительного просмотра. Однако становится ясно, что термин «конечная точка XMLA» все еще слишком сложен для многих разработчиков отчетов Power BI. Многие люди задают вопрос, что такое конечная точка XMLA и в чем ее преимущества? Что она может делать? Иили самое главное, зачем она мне нужна как разработчику отчетов? Мы постараемся дать ответы на все эти вопросы в этой статье.

За кулисами набора данных Power BI

Чтобы понять, что такое конечная точка XMLA и что она для вас делает, сначала вам нужно понять, что стоит за красивым отчетом Power BI, который вы видите, то есть невидимые для вас вещи.

Отчет Power BI - это элемент визуализации, связанный с набором данных в оперативной памяти за сценой (я говорю о наиболее распространенном методе использования Power BI; импорт данных). Набор данных в памяти содержит все данные, загруженные в память, со всеми вычислениями, связями и логикой для подключения к источнику данных. Когда вы открываете файл * .PBIX, в нем появляются два элемента; отчет (часть визуализации) и набор данных (модель данных). Это разделение видно в сведениях о ресурсах приложения Power BI Desktop в диспетчере задач;

 

Как видно на этом снимке экрана, в списке Power BI Desktop запущена задача служб Microsoft SQL Server Analysis Services. Отчет Power BI хранит свои данные в памяти, которая управляется службой Microsoft SQL Server Analysis Services (давайте назовем ее сокращенным знакомым именем SSAS). Даже если вы запустите Power BI Desktop на компьютере, на котором не установлен SSAS, вы увидите эту службу, потому что Power BI Desktop автоматически устанавливает с ним версию SSAS.

Набор данных Power BI размещается через ядро служб аналитики SQL Server.

Когда вы публикуете файл * .pbix на веб-сайте, вы также увидите это разделение модели данных (набор данных) и визуализации (отчет):

 

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

SSAS - это больше, чем вы видите

Итак, теперь, когда вы знаете, что набор данных Power BI представляет собой модель SSAS за сценой, возникает следующий вопрос: в чем смысл? Или какая польза от этого для меня? Чтобы понять это, давайте посмотрим, что такое SSAS на самом деле.

SSAS - это механизм моделирования в Microsoft SQL Server, и ему уже более 20 лет. SSAS - это технология моделирования на стороне сервера. Это означает, что модель будет размещена на сервере, и для ее работы доступны клиентские инструменты. На протяжении многих лет двумя наиболее распространенными клиентскими инструментами для работы с SSAS были и остаются: инструменты данных SQL Server (SSDT) и SQL Server Management Studio (SSMS).

 

Эти инструменты предназначены не только для построения модели в SSAS, но и для управления ею. А когда речь идет об управлении, это означает мониторинг, управление,

резервное копирование и восстановление модели и многие другие функции. Вот представление базы данных (модели) SSAS из SSMS.

 

Модели SSAS можно отслеживать с помощью большого количества запросов и команд, называемых динамическими представлениями управления (DMV). Например, следующая команда показывает всех пользователей, запрашивающих или работающих с этой моделью SSAS:

 

SQL Server Analysis Services - это серверная технология, которая может дать вам много подробностей о модели, и ее можно отслеживать с помощью клиентских инструментов, используя множество сценариев и команд, таких как представления динамического управления.

Могу ли я получить доступ к модели SSAS моего набора данных Power BI?

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

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

До сих пор не было возможности подключиться к набору данных Power BI, размещенному в службе, за исключением двух методов: Power BI Desktop (с помощью получения данных из набора данных Power BI) и Excel (с помощью Power BI Publisher для Excel или анализа в Excel).

 

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

XMLA Endpoint

Сейчас самое время объяснить, что такое конечная точка XMLA. XMLA Endpoint создает канал связи для других инструментов и служб (которые могут быть также сторонними инструментами) к модели SSAS. Конечная точка XMLA доступна для моделей SSAS, размещенных через SQL Server, и используется уже давно. Вот почему вы можете использовать такой инструмент, как SSMS и подключиться к локальному движку SSAS. Без XMLA Endpoint доступ к модели SSAS будет очень ограниченным и, скорее всего, не будет поддерживаться.

Конечная точка XMLA создает канал связи для других инструментов и служб (которые могут быть также сторонними инструментами) к модели SSAS.

Хорошей новостью является то, что Endpoint XMLA теперь доступна для наборов данных Power BI. Что ж, это означает, что теперь вы можете использовать ЛЮБЫЕ клиентские инструменты, которые поддерживают подключение XMLA, для подключения к наборамданных Power BI. Когда мы говорим «ЛЮБОЙ», мы подразумеваем следующее. Помимо клиентских инструментов SSMS или SSDT или Microsoft SQL Server вы можете использовать сторонние инструменты, такие как DAX Studio и Power BI, а также такие инструменты, как Tableau! Да, вы правильно поняли; Вы можете использовать Tableau для подключения к набору данных Power BI, размещенному в службе Power BI, и затем визуализировать в Tableau. (Хотя, вероятно, у вас не будет превосходной визуализации, как у Power BI, потому что вы используете Tableau, но вы можете сделать это - в любом случае).

Эта диаграмма от Microsoft говорит сама за себя, что все эти инструменты теперь можно использовать для подключения к набору данных Power BI, размещенному в службе:

 

Другими словами, набор данных Power BI теперь полезен не только для инструментов Power BI, он может служить источником для любых других инструментов, которые поддерживают XMLA-соединения: Tableau, SSMS, Power BI Helper и т. д.

Как работает соединение XMLA?

На данном этапе подключение XMLA только что объявлено и имеет некоторые ограничения, однако со временем оно будет улучшаться все больше и больше. В настоящее время только рабочее соединение XMLA только для чтения может быть установлено с рабочими пространствами, выделенными для премиальной емкости в службе Power BI.

URL конечной точки XMLA

Если вы перейдете в рабочее пространство, выделенное для премиальной емкости, в разделе Premium Capacity вы увидите URL-адрес соединения с конечной точкой XMLA:

 

Формат будет следующим:

powerbi://api.powerbi.com/v1.0/myorg/<workspace name>

Имя рабочего пространства может содержать пробелы и чувствительно к регистру. Пример:

powerbi://api.powerbi.com/v1.0/myorg/Reza SAMPLE workspace

Административный контроль в конфигурации емкости

Администратор вашей емкости должен позволить вам использовать конечную точку XMLA. Это возможно через Admin Portal -> Capacity Setting -> selecting the capacity -> Workloads

 

Если вы хотите использовать эту функцию, конечная точка XMLA должна быть установлена на 1.

Инструменты клиента

И у вас должен быть клиентский инструмент для этого типа соединения. Пока вы ждете следующую версию Power BI Helper (будет выпущена очень скоро), вы можете использовать такой инструмент, как SSMS. Однако вам потребуется SSMS 18.0 RC1 или выше, которую можно скачать здесь. И клиентские инструменты могут иметь эти библиотеки, установленные для возможности подключения.

Пример подключения

Вот пример соединения, созданного с использованием конечной точки XMLA через SSMS:

 

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

 

Резюме

Конечная точка XMLA, скорее всего, является одной из основных функций, меняющих правила игры, добавленных в Power BI за последние несколько месяцев. Используя конечные точки XMLA, вы можете использовать клиентские инструменты для контроля, управления и мониторинга наборов данных Power BI в службе. Кроме того, набор данных Power BI теперь можно использовать в качестве модели данных для других инструментов визуализации, таких как Tableau. В ближайшем будущем Power BI Helper предоставит вам функциональность подключения через конечную точку XMLA. XMLA Endpoint на данный момент доступна только для чтения, поэтому она не даст вам возможности записывать изменения обратно в модель, но режим «чтение/запись» запланировано и, надеемся, скоро появится. Когда это станет доступной резервной копией, восстановление и многие другие функции, такие как миграция из оперативного соединения для импорта данных и т. д., могут стать доступными вариантами.

No Comments

Add a Comment