Power BI Предварительная версия
Интеграция с Power BI позволяет напрямую выполнять запросы к Semantic Layer, что дает возможность строить дашборды в Power BI на основе доверенных, актуальных данных. Интеграция обеспечивает живое подключение к Semantic Layer через Power BI Desktop или Power BI Service.
Эта интеграция в настоящее время доступна в предварительной версии. Готовность к использованию в производственной среде зависит от участия Microsoft в стандарте Apache Ossie.
Используете Power BI? Вы можете повлиять на будущее этой интеграции. Узнайте у своего представителя Microsoft о поддержке Ossie!
Предварительные требования
- Вы настроили Semantic Layer.
- Вы используете поддерживаемый канал выпуска dbt или dbt версии 1.6 или выше.
- Вы установили Power BI Desktop или Power BI On-premises Data Gateway.
- Power BI Service не поддерживает пользовательские коннекторы напрямую. Чтобы использовать коннектор в Power BI Service, необходимо установить и настроить его на локальном шлюзе данных (On-premises Data Gateway).
- Для входа вам понадобятся адрес хоста dbt, идентификатор среды (Environment ID) и сервисный токен или персональный токен доступа. Для этой учетной записи должен быть настроен Semantic Layer.
- У вас должна быть учетная запись dbt на тарифе Starter или Enterprise. Подходит как для мультитенантного (Multi-tenant), так и для однотенантного (Single-tenant) развертывания.
📹 Узнайте о семантическом слое dbt с помощью видеокурсов по запросу!
Изучите наш курс по семантическому слою dbt, чтобы узнать, как определять и запрашивать метрики в вашем проекте dbt.
Кроме того, погрузитесь в мини-курсы по запросам к семантическому слою dbt в ваших любимых инструментах: Tableau, Excel, Hex и Mode.
Установка коннектора
Коннектор Power BI может быть несовместим с более ранними версиями Power BI Desktop. Для наилучших результатов рекомендуем установить последнюю версию непосредственно из Microsoft Store или Центра загрузки.
Коннектор Power BI для Semantic Layer состоит из пользовательского коннектора Power BI .pqx и драйвера ODBC. Установите оба компонента с помощью нашего установщика для Windows, выполнив следующие действия:
-
Скачайте и установите установщик
.msi -
Запустите установщик и следуйте инструкциям на экране, чтобы установить драйвер ODBC и коннектор для Power BI Desktop.
Проверка установки
Обратите внимание: пользователям более ранних версий Power BI может потребоваться настроить коннектор, прежде чем они смогут проверить установку.
Чтобы проверить установку:
- Откройте ODBC Data Sources (64-bit) на своём компьютере.
- Перейдите на вкладку System DSN и убедитесь, что
dbt Labs ODBC DSNзарегистрирован. - Перейдите на вкладку Drivers и убедитесь, что
dbt Labs ODBC Driverустановлен. - Откройте Power BI Desktop, перейдите в Settings, затем в Data Source Settings. Убедитесь, что коннектор
dbt Semantic Layerзагружен корректно.
Чтобы опубликованные отчеты в Power BI Service могли использовать коннектор, IT-администратор вашей организации должен установить и настроить его в On-premises Data Gateway.
Для ИТ-администраторов
Этот раздел предназначен для IT-администраторов, которые устанавливают ODBC-драйвер и коннектор в On-premises Data Gateway.
Чтобы опубликованные отчёты могли использовать коннектор в Power BI Service, ИТ-администратор должен установить и настроить его:
- Установите драйвер ODBC и коннектор в локальный шлюз данных (On-premises Data Gateway). Запустите тот же установщик
.msi, который использовался для Power BI Desktop, и выполните установку на компьютере, где размещён шлюз. - Скопируйте файл коннектора в каталог шлюза:
- Найдите файл
.pqx:C:\Users\<YourUser>\Documents\Power BI Desktop\Custom Connectors\dbtSemanticLayer.pqx. - Скопируйте его в каталог пользовательских коннекторов локального шлюза данных Power BI:
C:\Windows\ServiceProfiles\PBIEgwService\Documents\Power BI Desktop\Custom Connectors.
- Найдите файл
- Проверьте установку, выполнив действия из раздела Установка коннектора.
- Включите коннектор в Power BI Enterprise Gateway:
- Откройте
EnterpriseGatewayConfigurator.exe. - Перейдите в раздел Connectors.
- Убедитесь, что коннектор
dbt Semantic Layerустановлен и активен.
- Откройте
Для получения дополнительной информации о настройке пользовательских коннекторов в Power BI On-premises Data Gateway обратитесь к официальной документации Power BI.
Настройка коннектора
После установки коннектора вам потребуется настроить учетные данные проекта для подключения к Semantic Layer из отчета.
После установки коннектора необходимо настроить учетные данные проекта, чтобы подключиться к Semantic Layer из отчета.
- Создайте пустой отчет.
- В левом верхнем углу нажмите Get data.
- Найдите Semantic Layer, затем нажмите Connect.
- Укажите данные подключения. Значения Host и Environment ID можно найти в настройках Semantic Layer для вашего проекта dbt.
подсказка
Убедитесь, что в разделе Data Connectivity mode выбран DirectQuery, так как коннектор Semantic Layer не поддерживает режим Import. Подробнее см. в разделе Considerations.
- Нажмите OK, чтобы продолжить.
- На следующем экране вставьте свой сервисный или персональный токен, а затем нажмите Connect.
- Вы увидите боковую панель с несколькими «виртуальными» таблицами.
ALLпредставляет все определённые вами объекты семантического слоя. Остальные таблицы представляют каждый из ваших сохранённых запросов. Выберите ту, которую хотите загрузить в свой дашборд. Затем нажмите Load.
После настройки коннектора вы можете настроить опубликованные отчеты в следующем разделе для использования этого подключения.
Настройка опубликованных отчётов
После публикации отчета и при первом нажатии Publish для конкретного отчета необходимо настроить Power BI Service для использования On-premises Data Gateway вашей организации для доступа к данным из Semantic Layer:
- В правом верхнем углу нажмите Settings > Power BI settings.
- Перейдите на вкладку Semantic models и выберите свой отчёт на боковой панели слева.
- В разделе Gateway and cloud connections выберите On-premises Data Gateway, на котором ваш ИТ-администратор установил коннектор Semantic Layer.
- Если в поле Status указано Not configured correctly, потребуется настроить подключение.
- Нажмите на стрелку в столбце Actions, затем нажмите Manually add to gateway.
- Укажите имя подключения и введите параметры подключения.
- Установите для подключения значение Encrypted (обязательно). В противном случае серверы Semantic Layer отклонят подключение.
- Нажмите Create. Будет выполнена проверка подключения (если вы не решите её пропустить). Если подключение установлено успешно, оно будет сохранено.
Теперь вы можете вернуться к опубликованному отчету в Power BI Service и убедиться, что данные загружаются корректно.
Использование коннектора
В этом разделе описывается, как использовать коннектор Semantic Layer в Power BI.
Коннектор Semantic Layer создает:
- Виртуальную таблицу для каждого сохраненного запроса.
- Таблицу
METRICS.ALL, содержащую все метрики, при этом измерения и сущности отображаются как обычные столбцы измерений.
Эти таблицы фактически не соответствуют физическим таблицам в вашем хранилище данных. Вместо этого Power BI отправляет запросы к этим таблицам, а серверы Semantic Layer (до выполнения запроса в хранилище):
- Парсят SQL.
- Извлекают все запрашиваемые столбцы, group by и фильтры.
- Генерируют SQL для запроса к существующим таблицам.
- Возвращают данные обратно в Power BI, который «не знает», что все это происходило.
Это обеспечивает очень гибкие аналитические сценарии, такие как перетаскивание метрик и разрез данных по измерениям и сущностям — Semantic Layer автоматически сгенерирует корректный SQL для запроса к вашему источнику данных.
Изменение временной гранулярности
При выборе временных измерений в меню Group By отображается список доступных уровней детализации времени. По умолчанию выбран самый низкий уровень детализации. Metric time — временное измерение по умолчанию для группировки метрик.
Примечание: Пользовательские уровни детализации времени (например, финансовый год) в настоящее время не поддерживаются и недоступны в этой интеграции. Доступны только стандартные уровни детализации (например, день, неделя, месяц и так далее). Если вам нужен доступ к пользовательским уровням детализации, рассмотрите возможность использования API семантического слоя.






