Power BI Report Server でリアルタイム PingOne のデータ のレポートを表示
CData ODBC ドライバは、Microsoft Windows のODBC ネイティブサポートにより、Microsoft Power BI などのセルフサービス分析ツールとシームレスに連携できます。CData ODBC Driver for PingOne を使えば、Power BI レポートをPingOne のデータにリンクし、ダッシュボードでPingOne のデータをモニタリングできます。スケジュール更新やオンデマンド更新を設定することで、分析結果に常にリアルタイムのPingOne のデータを反映させることも可能です。この記事では、ODBC ドライバを使用して Microsoft Power BI Desktop でPingOne のデータのリアルタイムビジュアライゼーションを作成し、Power BI Report Server に公開する方法をご紹介します。
CData ODBC ドライバは、ドライバーに組み込まれた最適化されたデータ処理により、Power BI でリアルタイムPingOne のデータを操作するための優れたパフォーマンスを実現します。Power BI から PingOne に複雑な SQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされている SQL 操作を PingOne に直接プッシュし、組み込み SQL エンジンを利用してサポートされていない操作(主に SQL 関数や JOIN 操作)をクライアント側で処理します。組み込みの動的メタデータクエリ機能により、Power BI ネイティブのデータ型を使用してPingOne のデータを可視化・分析できます。
PingOne にODBC データソースとして接続
まだ設定していない場合は、ODBC データソース名(DSN)で接続プロパティを指定します。これはドライバーインストールの最後のステップです。Microsoft ODBC データソースアドミニストレーターを使用して、ODBC DSN を作成・設定できます。Power BI Desktop から Power BI Report Server に Power BI レポートを公開するには、クライアント(デスクトップ)とサーバーの両方のマシンに ODBC ドライバをインストールし、各マシンで同じ名前の DSN を使用する必要があります。
PingOne に接続するには以下のプロパティを設定します。
- Region:自身のPingOne 組織のデータがホスティングされている地域。
- AuthScheme:PingOne に接続する際に使用する認証の種類。
- WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。
WorkerAppEnvironmentId の設定
WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。
はじめに、このプロパティの値を見つけます。
- 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
- OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
- 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
- リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
-
Environment ID フィールドの値をコピーします。
以下の例に似たものになるはずです:
WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'
次に、WorkerAppEnvironmentId をEnvironment ID フィールドの値に設定します。
AuthorizationServerURL の設定
AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。
OAuth でのPingOne への認証
PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。
- ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
- ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
- 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。
OAuth(認可コードグラント)
AuthScheme をOAuth に設定します。
デスクトップアプリケーション
OAuth アクセストークンの取得およびリフレッシュ
以下を設定して、接続してください。
- InitiateOAuth:GETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
- OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
- OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333
接続すると、CData 製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。
- ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
- OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。
ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。
Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。
DSN を設定する際に、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時のパフォーマンス向上に役立ちます。
DSN を作成したら、以下の手順で Power BI Desktop から PingOne DSN に接続します。
- Power BI Desktop を開き、[データを取得] -> [ODBC]をクリックします。PowerBI.com から Power BI Desktop を起動するには、ダウンロードボタンをクリックし、次に[Power BI Desktop]をクリックします。
- メニューでシステム DSN を選択します(Power BI Report Server に公開するために必要)。データをインポートするための SQL クエリがわかっている場合は、[詳細オプション] ノードを展開し、[SQL ステートメント]ボックスにクエリを入力できます。
- [ナビゲーター] ダイアログでテーブルを選択します。
[編集] をクリックしてクエリを編集します。インポートしたテーブルがクエリエディターに表示されます。クエリエディターでは、PingOne のデータ のローカルコピーを他のデータソースで充実させたり、PingOne のカラムをピボットしたりできます。Power BI は、ドライバーが取得した PingOne メタデータから各カラムのデータ型を検出します。
Power BI は、クエリへの変更を [適用したステップ] セクションに記録し、リモートPingOne のデータに対して実行される基になるデータ取得クエリを調整します。 [閉じて適用] をクリックすると、Power BI がデータ取得クエリを実行します。
または、[読み込み] をクリックしてデータを Power BI に取り込みます。
データのビジュアライゼーションを作成
データを Power BI に取り込んだら、[フィールド] ペインからキャンバスにフィールドをドラッグして、[レポート] ビューでデータビジュアライゼーションを作成できます。以下の手順で円グラフを作成してみましょう。
- [ビジュアライゼーション] ペインで円グラフアイコンを選択します。
- [フィールド] ペインでディメンションを選択します。例: Id
- [フィールド] ペインでメジャーを選択します。例: Username。以下の方法でビジュアライゼーションと使用するデータを変更できます。
- チャートの省略記号(...)ボタンをクリックして並べ替えオプションを変更します。並べ替えカラムの選択や並べ替え順序の変更オプションが表示されます。
- ハイライトとフィルタリングの両方を使用してデータにフォーカスできます。フィルタリングはフォーカス外のデータをビジュアライゼーションから削除し、ハイライトはフォーカス外のデータを薄暗く表示します。フィールドをクリックしてハイライトします。
- [フィルター] ペインにフィールドをドラッグすることで、ページレベル、レポートレベル、または単一のビジュアライゼーションにフィルターを適用できます。フィールドの値でフィルタリングするには、[フィルター] ペインに表示される値のいずれかを選択します。
- [更新] をクリックしてデータの変更をレポートに同期し、Power BI レポートをクライアントマシンに保存します。
PingOne のデータ レポートを Power BI Report Server にアップロード
ODBC データソースに基づくレポートを、Power BI Report Server を使用して組織内の他の Power BI ユーザーと共有できます。
- PingOne 用の ODBC ドライバをレポートサーバーにインストール・設定します(上記の手順を参照)。
- レポートサーバー(通常は http://MYSERVER/reports)にログインし、新しいレポートのアップロードをクリックして、先ほど保存したレポートを選択します。
- レポートサーバーにアクセスできる任意のマシンから PingOne レポートを表示します。