製品をチェック

製品の詳細・30日間の無償トライアルはこちら

CData Connect

REST データをPower BI Service にインポートしてビジュアライズ

CData Connect Server を使用してREST のOData フィードを作成し、Power BI Service でカスタムレポートを作成します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-01-03

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

Power BI を使えば会社のデータを美しいビジュアルに変換して収集および整理することができるため、重要なことだけに集中できます。CData Connect Serverと組み合わせることで、ビジュアライゼーションやダッシュボードなどのためにREST データを使用できます。この記事では、CData Connect Server を使用してREST のOData フィードを生成し、REST データをPower BI にインポートして、REST データを使ったレポートをPower BI サービスで作成する方法について説明します。

注意:Connect Server のオンプレミスデータゲートウェイとSQL インターフェースを使って(データをインポートする代わりに)リアルタイムでREST データに接続することもできます。詳細については、関連するKnowledge Base の記事を参照してください。

REST データの仮想SQL データベースを作成

CData Connect Server は、簡単なポイントアンドクリックインターフェースを使用してAPI を生成します。

  1. Connect Server にログインし、「Databases」をクリックします。 データベースを追加
  2. 「Available Data Sources」から「REST」を選択します。
  3. 必要な認証プロパティを入力し、REST に接続します。

    データソースへの認証については、データプロバイダーのヘルプドキュメントの「はじめに」を参照してください: データプロバイダーはREST API を双方向データベーステーブルとして、XML/JSON ファイル(ローカルファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)を読み取り専用のビューとしてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。認証についての詳細は、ヘルプドキュメントの「はじめに」を参照してください。

    URI を設定し、認証値を指定したら、Format を"XML" または"JSON" に設定して、データ表現をデータ構造により厳密に一致させるようにDataModel を設定します。

    DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、以下の基本的な設定を切り替えます。

    • Document (デフォルト):REST データのトップレベルのドキュメントビューをモデル化します。データプロバイダーはネストされたエレメントをデータの集計として返します。
    • FlattenedDocuments:ネストされたドキュメントとその親を単一テーブルとして暗黙的に結合します。
    • Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれます。

    リレーショナル表現の構成について詳しくは、「REST データのモデル化」を参照してください。次の例で使用されているサンプルデータもあります。データには、人、所有している車、およびそれらの車で行われたさまざまなメンテナンスサービスのエントリが含まれています。The data includes entries for people, the cars they own, and various maintenance services performed on those cars.

    Configuring a connection (Salesforce is shown).
  4. Test Database」をクリックします。
  5. 「Permission」->「 Add」とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー)を追加します。

Power BI からConnect Server に接続

Power BI サービスにREST データをインポートしてビジュアライズするには、Connect Server API ユーザーを追加してConnect Server にREST OData エンドポイントを追加し、Power BI Desktop からサービスにデータセットを作成して公開します。

Connect Server ユーザーの追加

Power BI からConnect Server を介してREST に接続するユーザーを作成します。

  1. [Users]->[ Add]とクリックします。
  2. ユーザーを構成します。 Creating a new user
  3. [Save Changes]をクリックして新しいユーザーの認証トークンをメモします。 Connect Server users
  4. 「Database」をクリックし、REST 仮想データベースを選択します。
  5. 「Permission」タブで、新規作成した(少なくともSELECT 権限を持つ)ユーザーを追加して「Save Changes」をクリックします。 Adding Permission

Connect Server にREST OData エンドポイントを追加

REST に接続したら、目的のテーブルのOData エンドポイントを作成します。

  1. [OData]->[Tables]->[Add Tables]とクリックします。
  2. REST データベースを選択します。
  3. 使用するテーブルを選択し、[Next]をクリックします。 Selecting a Table (Salesforce is shown)
  4. (オプション)テーブルの定義を編集して特定のフィールドなどを選択します。
  5. 設定を保存します。

Power BI デスクトップからデータセットを公開

Connect Server にOData エンドポイントを追加すると、OData 接続を使用してPower BI デスクトップにデータセットを作成し、そのデータセットをPower BI サービスに公開できます。

  1. Power BIを開いて「Get Data」->「More」とクリックし、OData フィードを選択して「Connect」をクリックします。
  2. Create a new connection in Power BI
  3. URL をConnect Server インスタンスのBase URL(例: CONNECT_SERVER_URL/api.rsc)に設定し、「OK」をクリックします。
  4. User namePassword を上記のユーザー名と認証トークンに設定します。
  5. 設定を適用するレベルとして、フルのBase URL(CONNECT_SERVER_URL/api.rsc)を選択します。 Connect to CData Connect Server instance
  6. 「Navigator」ダイアログでテーブルを選択し、ビジュアライズします。
  7. 「Load」をクリックしてPower BI にデータをプルします。
  8. 「Relationships」タブで選択したエンティティ間の関係性を定義します。
  9. 「Home」メニューから「Publish」をクリックして「Workspace」を選択します。

Power BI Service のREST データでレポートとダッシュボードを作成

Power BI サービスにデータセットを公開したので、公開されたデータを使って新しいレポートとダッシュボードを作成できます。

  1. PowerBI.com にログインします。
  2. 「Workspaces」をクリックし、ワークスペースを選択します。
  3. 「Create」をクリックし、「Report」を選択します。
  4. レポートに使用する公開済みデータセットを選択します。 Select a dataset
  5. フィールドとビジュアライゼーションを選択してレポートを追加します。 Visualizing REST データ in the Power BI service

アプリケーションからREST データへSQL でアクセス

Power BI サービスからリアルタイムREST データへの直接接続ができるようになりました。これで、REST を複製することなく多くのデータソースや新しいビジュアライゼーション、レポートを作成することができます。

アプリケーションから直接250+ SaaS 、Big Data 、NoSQL ソースへのSQL データアクセスを取得するには、CData Connect Server を参照してください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。