注
次のコネクタの記事は、このコネクタの所有者であり、Microsoft Power Query コネクタ認定プログラムのメンバーである Denodo によって提供されています。 この記事の内容に関する質問がある場合、またはこの記事に加えたい変更がある場合は、Denodo の Web サイトにアクセスし、そこでサポート チャネルを使用してください。
概要
アイテム | 説明 |
---|---|
リリース状況 | 一般提供 |
プロダクツ | Power BI (セマンティック モデル) Power BI (データフロー) ファブリック (データフロー Gen2) |
サポートされている認証の種類 | 基本 ウィンドウズ |
注
一部の機能は 1 つの製品に存在する可能性がありますが、展開スケジュールとホスト固有の機能のため、他の製品には存在しない場合があります。
[前提条件]
このコネクタを使用するには、Denodo プラットフォームをインストールし、そのサービスを構成して開始している必要があります。 ODBC DSN を使用する接続の場合は、ODBC データ ソース アドミニストレーターで接続を正しく構成している必要があります。
サポートされている機能
- 輸入
- DirectQuery (Power BI セマンティック モデル)
Power Query Desktop から ODBC データ ソースに接続する
接続を確立するには、次の手順を実行します。
データに接続するには、[ホーム] リボンから [データの取得] を選択し、[データベース] セクションで [Denodo] を選択します。
選択したデータ ソースに接続するには、次の 2 つの方法があります。
- ODBC データ ソース名 (DSN) 経由
- 接続文字列の使用
[Denodo Connector] ダイアログ ボックスの [DSN または接続文字列] セクションで、目的の接続の種類に応じて、データ ソース名 (DSN) または接続文字列を指定します。
Denodo 互換の接続文字列を作成するときは、コネクタ自体によって接続時に透過的に設定されるため、 Driver フィールドを省略する必要があることを考慮する必要があります。
接続文字列には、 SERVER、 PORT 、 DATABASE の 3 つの必須パラメーターが含まれている必要があります。
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 データ ソースに属していると認識するのを防ぎ、その結果、それぞれの認証資格情報を個別に要求することができます。
2 番目のセクション 「デバッグ モードを有効にする」は、ログ ファイルにトレース情報を追加できる省略可能なフィールドです。 これらのファイルは、[オプション] メニューの [診断] タブを使用してアプリケーションでトレースを有効にすると、Power BI Desktop によって作成されます。 [デバッグ モードを有効にする] の既定値は false であり、このシナリオでは、Denodo Power BI カスタム コネクタのログ ファイルにトレース データはありません。
3 番目のセクションである Native Query は、クエリを入力できる省略可能なフィールドです。 このクエリ フィールドを使用すると、結果のデータ セットは、テーブルまたはテーブルのセットではなく、クエリの結果になります。
データ ソースが関連付けられているデータベースの 1 つだけをクエリするクエリを記述できます。
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
Denodo Connector の最後のセクションはデータ接続モードで、インポート モードまたは DirectQuery モードを選択できます。
終了したら、 [OK] を選択します。
Denodo Virtual DataPort で使用可能なデータのプレビューを表示するナビゲーター ウィンドウを表示する前に、認証を求められます。 Denodo Power BI カスタム コネクタでは、Windows と Basic の 2 種類の認証がサポートされています。
Windows: Windows 認証を使用することを選択すると、Power BI Desktop は Kerberos 認証を使用して Virtual DataPort に接続します。
この場合、次のようになります。
Virtual DataPort サーバーで Kerberos 認証を有効にする必要があります。
データ ソースが接続する Denodo Virtual DataPort データベースは、 オプション ODBC/ADO.net 認証の種類 を Kerberos に設定して構成する必要があります。
ODBC ドライバーがオペレーティング システムのチケット キャッシュから Kerberos チケットを要求するため、Power BI Desktop は Windows ドメインで実行されている必要があります。
DSN 構成の [詳細オプション] ページに、認証方法として Kerberos を使用するために必要なすべての構成が含まれていることを確認します。
基本: この認証の種類では、Virtual DataPort サーバーの資格情報を使用して、Power BI Desktop を Virtual DataPort データに接続できます。
注
以前のバージョンの Denodo コネクタでは、特定のパスワード文字をエスケープする必要がありました。 バージョン 1.0.8 以降では、これは不要です。
完了したら、[ 接続] を選択します。
ナビゲーターで、必要なデータベースから必要なデータを選択し、[読み込み] を選択するか、受信データを変更する場合は [データの変換] を選択します。
オンプレミス データ ゲートウェイを使用して Power BI サービスから ODBC データ ソースに接続する
接続を確立するには、次の手順を実行します。
ブリッジとして機能するオンプレミス データ ゲートウェイ (エンタープライズ ゲートウェイ) を構成し、オンプレミスのデータ (クラウドではなく Power BI Desktop アプリケーション内のデータ) と Power BI サービスの間で迅速かつ安全なデータ転送を提供します。
サインインしてゲートウェイを登録します。 オンプレミス データ ゲートウェイ アプリで、[ 状態 ] タブを選択して、ゲートウェイがオンラインであり、使用する準備ができていることを確認します。
Power BI サービスのゲートウェイ設定ページを使用して、Denodo Power BI カスタム コネクタのデータ ソースを作成します。
データ ソースを作成するには、任意のデータ ソースに接続する方法を指定する必要があります。
- DSN 経由
- 接続文字列の使用
注
接続文字列または DSN のどちらを使用して接続するかを決定する場合は、後者を使用することをお勧めします。 これは、DSN 構成には、接続文字列を使用する場合に直接使用できない構成オプションが多数用意されているためです。
また、認証モードを指定する必要があります。 使用可能な認証方法は次のとおりです。
Windows: Windows 認証を使用することを選択すると、Power BI サービスは Kerberos 認証を使用して Virtual DataPort に接続します。 必要なもの:
[データ ソースの設定] に、Kerberos チケットを作成するユーザー名とパスワードを入力します。
Virtual DataPort サーバーで Kerberos 認証を有効にする必要があります。
データ ソースが接続する Denodo Virtual DataPort データベースは、 オプション ODBC/ADO.net 認証の種類 を Kerberos に設定して構成する必要があります。
DSN 構成の [詳細オプション] ページに、認証方法として Kerberos を使用するために必要なすべての構成が含まれていることを確認します。
基本: この認証の種類では、Power BI サービスでデータ ソースを作成し、Virtual DataPort サーバーの資格情報を使用して Virtual DataPort データに接続できます。
Windows 認証を使用する場合は、データ ソースの 詳細設定 でシングル サインオン (SSO) 認証スキーマを有効にして、Power BI でレポートにアクセスするユーザーと同じ資格情報を使用して Denodo の必要なデータにアクセスできます。
SSO を有効にするには、2 つのオプションがあります。 DirectQuery クエリには Kerberos 経由の SSO を使用し、 DirectQuery クエリとインポート クエリには Kerberos 経由で SSO を使用します。 DirectQuery ベースのレポートを使用している場合、どちらのオプションも、Power BI サービスにサインインするユーザーの SSO 資格情報を使用します。 違いは、 インポート ベースのレポートを操作する場合です。 このシナリオでは、前者のオプションではデータ ソース ページに入力された資格情報 ([ユーザー名 ] フィールドと [パスワード ] フィールド) が使用され、後者ではデータ セット所有者の資格情報が使用されます。
Kerberos ベースの SSO を使用するには、考慮する必要がある特定の前提条件と考慮事項があることに注意してください。 これらの必須要件の一部を次に示します。
Microsoft Power BI Gateway を実行している Windows ユーザーに対して Kerberos の制約付き委任を有効にする必要があり、この目的のために Microsoft が提供する手順に従って、ローカル Active Directory と Microsoft Entra ID の両方の環境の構成を実行する必要があります。
既定では、Microsoft Power BI Gateway は SSO 認証操作の実行時にユーザー プリンシパル名 (UPN) を送信します。 そのため、Denodo Kerberos 認証でログイン識別子として使用する属性を確認し、
userPrincipalName
と異なる場合は、この値に従ってゲートウェイ設定を調整する必要があります。\Program Files\On-premises data gateway
に格納されるMicrosoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
と呼ばれる Microsoft Power BI Gateway 構成ファイルには、ADUserNameLookupProperty
とADUserNameReplacementProperty
という 2 つのプロパティがあり、ゲートウェイは実行時にローカルの Microsoft Entra ID 参照を実行できます。ADUserNameLookupProperty
では、ローカル AD のどの属性に対して、Microsoft Entra ID から取得されるユーザー プリンシパル名をマップする必要があります。 そのため、このシナリオでは、ADUserNameLookupProperty
をuserPrincipalName
する必要があります。 次に、ユーザーが見つかったら、ADUserNameReplacementProperty
値は、偽装されたユーザーの認証に使用する属性 (Denodo のログイン識別子として使用する属性) を示します。また、この構成ファイルの変更はゲートウェイ レベルであるため、Microsoft Power BI Gateway を介して SSO 認証が行われるソースに影響を与える点も考慮する必要があります。
Denodo コネクタのデータ ソースが作成されたら、Power BI レポートを更新できます。 powerbi.com でレポートを発行するには、次の手順を実行する必要があります。
- Power BI Desktop でレポートを開きます。
- ファイル>を選択し、公開>を Power BI に公開します。
- レポートをコンピューターに保存します。
- 発行するワークスペースを選択します。
詳細な構成
ConnectionTimeout パラメーターの使用。
サーバーへの接続の試行を中止するまでの待機時間を制御する場合は、 ConnectionTimeout
パラメーターを使用できます。
このパラメーターは、詳細エディターからのみ使用できます。 そのためには、 ConnectionTimeout
パラメーターをレコード オプションに追加し、 duration
型の値を関連付ける必要があります。
duration
の種類の詳細については、こちらをご覧ください。
QueryTimeout パラメーターの使用。
クエリの実行を中止するまでの待機時間を制御する場合は、 QueryTimeout
パラメーターを使用できます。
このパラメーターは、詳細エディターからのみ使用できます。 そのためには、 QueryTimeout
パラメーターをレコード オプションに追加し、 number
型の値を関連付ける必要があります。 この数値はミリ秒単位で表されます。たとえば、10000 は 10 秒です。
UserAgent パラメーターの使用。
クライアント アプリケーションの名前を指定する場合は、 UserAgent
パラメーターを使用できます。
このパラメーターは、詳細エディターからのみ使用できます。 そのためには、 UserAgent
パラメーターをレコード オプションに追加し、 text
型の値を関連付ける必要があります。
Compression パラメーターの使用。
クライアント アプリケーションと Denodo サーバーが WAN 経由で接続されている場合は、この設定をアクティブにすることをお勧めします。 このような場合、クライアント アプリケーションが中程度または大規模なデータ ボリュームを読み取ると、パフォーマンスが大幅に向上することが予想されます。 このためには、 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 プラットフォームの制限によるものです。 これを回避するには、データ変換ウィンドウで失敗したデータ ソース (クエリ) を選択し、 View>Advanced Editor を使用して高度なエディターにアクセスします。 次に、M 言語のデータ ソース式を編集し、Denodo.Contents
関数呼び出しのoptions
引数に次のプロパティを追加します。
CreateNavigationProperties=false
そのため、呼び出しは次のようになります。
Source = Denodo.Contents(<dsn>, null, [CreateNavigationProperties=false])
このプロパティは、このデータ ソースでアクセスされる Denodo ビューに登録されているリレーションシップからナビゲーション プロパティを生成しないように Power BI に指示します。 そのため、これらのリレーションシップの一部を実際に Power BI データ モデルに存在させる 必要がある場合は、後で手動で登録する必要があります。