Поделиться через


Денодо

Замечание

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

Сводка

Товар Описание
Статус релиза Общая доступность
Продукция Power BI (семантические модели)
Power BI (потоки данных)
Fabric (Dataflow 2-го поколения)
Поддерживаемые типы проверки подлинности Базовый
Виндоус

Замечание

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

Предпосылки

Чтобы использовать этот соединитель, необходимо установить платформу Denodo и настроить и запустить ее службу. В случае подключения с помощью DSN ODBC необходимо правильно настроить подключение в администраторе источника данных ODBC.

Поддерживаемые возможности

  • Импорт
  • DirectQuery (семантические модели Power BI)

Подключение к источнику данных ODBC из Power Query Desktop

Чтобы сделать подключение, выполните следующие действия.

  1. Чтобы подключиться к данным, выберите "Получить данные " на ленте "Главная " и выберите "Денодо " в разделе "База данных ".

    Соединитель Denodo в Power Query Desktop.

  2. Существует два способа подключения к источнику данных.

    • Через DSN (имя источника данных ODBC)
    • Использование строки подключения

    В разделе DSN или Строка подключения в диалоговом окне соединителя Denodo укажите имя источника данных (DSN) или строку подключения в зависимости от типа подключения, который вы предпочитаете.

    Диалоговое окно соединителя Denodo.

    При создании строки подключения, совместимой с Denodo, необходимо учитывать, что поле "Драйвер" должно быть опущено, так как это прозрачно устанавливается во время подключения самим соединителем.

    Строка подключения должна содержать три обязательных параметра: SERVER, PORT и DATABASE:

    SERVER=<Server name>;PORT=<Port number>;DATABASE=<Database name>
    

    Кроме того, он может содержать необязательный параметр: SSLmode:

    SERVER=<Server name>;PORT=<Port number>;DATABASE=<Database name>;SSLmode=<SSL mode>
    

    Параметры проверки подлинности должны быть опущены, так как проверка подлинности настраивается в последующих шагах.

    Замечание

    При написании строки подключения необходимо учитывать следующее:

    • Строка подключения должна иметь правильный порядок параметров: SERVER, PORT, DATABASE и SSLMode.
    • Имя этих параметров всегда должно быть записано одинаково. Например, если вы решили написать их в верхнем регистре, они всегда должны быть написаны в верхнем регистре; Если вы решите написать их прописными буквами (написание первой буквы слова в верхнем регистре и остальные буквы в нижнем регистре) они всегда должны быть написаны таким образом.

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

  3. Второй раздел Включить режим отладки, является необязательным полем, которое позволяет добавлять сведения трассировки в файлы журнала. Эти файлы создаются Power BI Desktop при включении трассировки в приложении с помощью вкладки "Диагностика " в меню "Параметры ". Обратите внимание, что значение по умолчанию для Включить режим отладки равно false, и в этом сценарии в файлах журнала не будет данных трассировки из пользовательского соединителя Denodo Power BI.

  4. Третий раздел , Машинный запрос, является необязательным полем, где можно ввести запрос. Если используется это поле запроса, результирующий набор данных будет результатом запроса вместо таблицы или набора таблиц.

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

    SELECT title, name FROM film JOIN language ON film.language_id = language.language_id WHERE film.language_id = 1
    

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

    SELECT i_item_sk, country FROM sakila.country, ewd.item
    
  5. Последний раздел в Соединителе Denodoэто режим подключения к данным, где можно выбрать режим импорта или режим DirectQuery.

  6. По завершении нажмите кнопку ОК.

  7. Перед отображением окна навигатора, отображающего предварительный просмотр доступных данных в Denodo Virtual DataPort, вам будет предложено выполнить проверку подлинности. Настраиваемый соединитель Denodo Power BI поддерживает два типа проверки подлинности: Windows и Basic.

    • Windows: при выборе использования проверки подлинности Windows Power BI Desktop подключается к Virtual DataPort с помощью проверки подлинности Kerberos.

      Проверка подлинности Denodo Windows в Power BI Desktop.

      В данном случае:

      • Проверка подлинности Kerberos должна быть включена на сервере Virtual DataPort.

      • База данных Denodo Virtual DataPort, к которому подключается источник данных, должна быть настроена с параметром типа проверки подлинности ODBC/ADO.net , заданного для Kerberos.

      • Power BI Desktop должен работать в домене Windows, так как драйвер ODBC запрашивает билет Kerberos из кэша билетов операционной системы.

      • Убедитесь, что страница "Дополнительные параметры " конфигурации DSN содержит всю необходимую конфигурацию для использования Kerberos в качестве метода проверки подлинности.

        Страница

    • Базовый. Этот тип проверки подлинности позволяет подключить Power BI Desktop к данным Virtual DataPort с помощью учетных данных сервера Virtual DataPort.

      Базовая аутентификация Denodo в Power BI Desktop.

      Замечание

      В более старых версиях соединителя Denodo требуется экранирование определенных символов паролей. По состоянию на версию 1.0.8 это больше не требуется.

  8. После завершения нажмите кнопку "Подключить".

  9. В навигаторе выберите нужные данные из базы данных и выберите "Загрузить" или выберите "Преобразовать данные ", если вы собираетесь изменить входящие данные.

    Денодо навигатор.

Подключение к источнику данных ODBC из службы Power BI с помощью локального шлюза данных

Чтобы сделать подключение, выполните следующие действия.

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

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

    Локальный шлюз данных с открытой вкладкой состояния.

  3. С помощью страницы параметров шлюза в службе Power BI создайте источник данных для пользовательского соединителя Denodo Power BI.

    Добавьте источник данных Denodo.

    Чтобы создать источник данных, необходимо указать способ подключения к источнику данных.

    • Через DSN
    • Использование строки подключения

    Замечание

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

    Кроме того, необходимо указать режим проверки подлинности. Доступные методы проверки подлинности:

    • Windows: при выборе использования проверки подлинности Windows служба Power BI подключается к Virtual DataPort с помощью проверки подлинности Kerberos. Тебе нужно:

      • В параметрах источника данных введите имя пользователя и пароль для создания билета Kerberos.

      • Проверка подлинности Kerberos должна быть включена на сервере Virtual DataPort.

      • База данных Denodo Virtual DataPort, к которому подключается источник данных, должна быть настроена с параметром типа проверки подлинности ODBC/ADO.net , заданного для Kerberos.

      • Убедитесь, что страница "Дополнительные параметры " конфигурации DSN содержит всю необходимую конфигурацию для использования Kerberos в качестве метода проверки подлинности.

        Страница

    • Базовый. Этот тип проверки подлинности позволяет создать источник данных в службе Power BI для подключения к данным Virtual DataPort с помощью учетных данных сервера Virtual DataPort.

  4. При использовании проверки подлинности Windows в разделе "Дополнительные параметры " для источника данных можно включить схему проверки подлинности единого входа (SSO), чтобы использовать те же учетные данные пользователя, который обращается к отчетам в Power BI для доступа к необходимым данным в Denodo.

    Единый вход в Denodo с помощью Kerberos.

    Существует два варианта включения единого входа: использование единого входа с помощью Kerberos для запросов DirectQuery и использование единого входа через Kerberos для DirectQuery и импорта запросов. Если вы работаете с отчетами на основе DirectQuery , оба варианта используют учетные данные единого входа пользователя, который входит в службу Power BI. Разница возникает при работе с импортируемыми отчетами. В этом сценарии первый параметр использует данные, введенные на странице источника (имя пользователя и пароль), а второй использует учетные данные владельца набора данных.

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

    • Ограниченное делегирование Kerberos должно быть включено для пользователя Windows под управлением Шлюза Microsoft Power BI, а конфигурация локальных сред Active Directory и Microsoft Entra ID должна выполняться в соответствии с инструкциями, предлагаемыми корпорацией Майкрософт для этой цели.

      По умолчанию Microsoft Power BI Gateway отправляет имя пользователя (UPN) при выполнении операции проверки подлинности единого входа. Поэтому вам нужно просмотреть атрибут, который будет использоваться в качестве идентификатора для входа в Denodo Kerberos Authentication, и, если он отличается от userPrincipalName, изменить настройки шлюза в соответствии с этим значением.

    • Файл конфигурации Microsoft Power BI Gateway с именем Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config, сохраненный в \Program Files\On-premises data gateway, имеет два свойства, называемых ADUserNameLookupProperty и ADUserNameReplacementProperty, которые позволяют шлюзу выполнять локальные поиски идентификатора Microsoft Entra на этапе выполнения. Необходимо ADUserNameLookupProperty указать, с каким атрибутом локального AD нужно сопоставить основное имя пользователя, полученное из идентификатора Microsoft Entra. Таким образом, в этом сценарии ADUserNameLookupProperty должно быть userPrincipalName. Затем, после того как пользователь будет найден, значение ADUserNameReplacementProperty указывает на атрибут, который следует использовать для аутентификации пользователя, проходящего олицетворение (атрибут, который будет использоваться в качестве идентификатора входа в Denodo).

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

  5. После создания источника данных для соединителя Denodo можно обновить отчеты Power BI. Чтобы опубликовать отчет на powerbi.com, необходимо выполнить следующие действия.

    • Откройте отчет в Power BI Desktop.
    • Выберите Файл>Опубликовать>Опубликовать в Power BI.
    • Сохраните отчет на компьютере.
    • Выберите рабочую область, в которой требуется опубликовать.

Расширенная конфигурация

Использование параметра ConnectionTimeout.

Если вы хотите контролировать, сколько времени ждать, прежде чем отказаться от попытки подключения к серверу, можно использовать ConnectionTimeout этот параметр.

Этот параметр можно использовать только из расширенного редактора. Для этого ConnectionTimeout параметр необходимо добавить в параметры записи, связав значение типа duration с ним.

Дополнительные сведения о типе durationсм. здесь.

Использование параметра ConnectionTimeout.

Использование параметра QueryTimeout.

Если вы хотите контролировать, сколько времени ждать, прежде чем отказаться от попытки выполнения запроса, можно использовать QueryTimeout этот параметр.

Этот параметр можно использовать только из расширенного редактора. Для этого QueryTimeout параметр необходимо добавить в параметры записи, связав значение типа number с ним. Это числовое значение представлено в миллисекундах, например 10000 равно 10.

Использование параметра QueryTimeout.

Использование параметра UserAgent.

Если вы хотите указать имя клиентского приложения, можно использовать UserAgent этот параметр.

Этот параметр можно использовать только из расширенного редактора. Для этого параметр UserAgent необходимо добавить в параметры записи, связав его со значением типа text.

Использование параметра UserAgent.

Использование параметра сжатия.

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

Этот параметр можно использовать только из расширенного редактора. Для этого параметр Compression необходимо добавить в параметры записи, назначив значение типа number (0 или 1).

Использование параметра сжатия.

Устранение неполадок

Загрузка данных, когда поле в представлении Denodo имеет более 42 отношений с другими представлениями.

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

Preview.Error: The type of the current preview value is too complex to display.

Эта ошибка возникает из-за ограничения на платформе Microsoft Power Query. Чтобы обойти это, выберите источник данных (запрос) в окне преобразования данных и получите доступ к расширенному редактору с помощью Просмотр>Расширенный редактор. Затем измените выражение источника данных на языке M, добавив следующее свойство в options аргумент Denodo.Contents вызова функции:

CreateNavigationProperties=false

Таким образом, ваш звонок будет выглядеть примерно так:

  Source = Denodo.Contents(<dsn>, null, [CreateNavigationProperties=false])

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