Power Apps データフローを使ってSpark データをMicrosoft CDS に連携

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Apache Spark Power BI Connector

Power BI からApache Spark データにリアルタイムアクセスする認定コネクタ。 ハイパフォーマンス、リアルタイム連携、高度なスキーマ自動検出、SQL -92 をサポート。



Spark コネクターでPower Apps のオンプレミスデータゲートウェイでSpark データアクセス可能に

Power Apps は、ローコードアプリ開発ツールです。Power Appsでは、Power Apps上で使えるデータベースライクなCDSというサービスがあるのですが、このサービスに連携するためのデータフローというデータインテグレーション機能が存在します。AccessやSharePointリストを元に、CDSのエンティティ(テーブルのようなもの)を自動生成し、定期的にデータを同期させてくれるというスグレモノです!デフォルトでも30種類くらいのサービスに接続できるようになっているのですが、それを今回のリリースではCData的待望のODBCに接続できるようになりました! ここでは、汎用ODBC データプロバイダーとしてSpark に接続し、Power Apps オンプレミスデータゲートウェイからSpark データを連携利用する手順を説明します。

Spark Data に接続するDSN を設定

Power BI Connector for Spark をダウンロードします。インストールが完了すると、以下のように接続設定画面が表示されるので、 DSN を設定します。 DSN 設定の詳細については、ドキュメントを参照してください。

SparkSQL への接続

SparkSQL への接続を確立するには以下を指定します。

  • Server:SparkSQL をホストするサーバーのホスト名またはIP アドレスに設定。
  • Port:SparkSQL インスタンスへの接続用のポートに設定。
  • TransportMode:SparkSQL サーバーとの通信に使用するトランスポートモード。有効な入力値は、BINARY およびHTTP です。デフォルトではBINARY が選択されます。
  • AuthScheme:使用される認証スキーム。有効な入力値はPLAIN、LDAP、NOSASL、およびKERBEROS です。デフォルトではPLAIN が選択されます。

Databricks への接続

Databricks クラスターに接続するには、以下の説明に従ってプロパティを設定します。Note:必要な値は、「クラスター」に移動して目的のクラスターを選択し、 「Advanced Options」の下にある「JDBC/ODBC」タブを選択することで、Databricks インスタンスで見つけることができます。

  • Server:Databricks クラスターのサーバーのホスト名に設定。
  • Port:443
  • TransportMode:HTTP
  • HTTPPath:Databricks クラスターのHTTP パスに設定。
  • UseSSL:True
  • AuthScheme:PLAIN
  • User:'token' に設定。
  • Password:個人用アクセストークンに設定(値は、Databricks インスタンスの「ユーザー設定」ページに移動して「アクセストークン」タブを選択することで取得できます)。

オンプレミスデータゲートウェイで Spark コネクターを認識させる

    次にオンプレミスデータゲートウェイに対して、インストールしたSpark コネクターを認識させます。
  • Power Appsの環境では、モデル駆動アプリで利用できるCDSにデータを連携するので、CDSの環境を予め構成しておいてください。
  • オンプレミスデータゲートウェイを立ち上げて「コネクタ」のタブに移動しフォルダパスから「C:\Program Files\CData\CData Power BI Connector for Spark」を選択します。
  • カスタムデータコネクタが識別されれば、設定完了です。
  • データフローの接続を構成する

    それでは Power Appsの画面に移動して、データフローを作成してみましょう。

    • Power Appsの画面から「データフロー」を選択し、「データフローを作成する」をクリックします。
    • 任意の名称を入力し、「作成」をクリック
    • データソース一覧の中から「ODBC」を選択します。
    • 接続設定画面では、先程設定した接続情報を使うので接続文字列のところに「DSN=接続名称(今回の場合はDSN=CData Power BI Spark )」を入力します。 オンプレミスデータゲートウェイからは、接続先のゲートウェイが表示されるので、それを選択。認証の種類は、現在のPower Apps データフローの仕様上、ODBC接続では必須みたいなので、Basicを選択し、適当な文字列を入力しておきます。(この文字列は使われないので、特に気にしなくて大丈夫です。)
    • 次の画面に進むと、対象のテーブル・もしくはビュー選択画面に移動します。テーブルを選択すると、プレビューが表示され、正常にコネクターとゲートウェイ経由でSpark のデータが参照できていることがおわかりいただけると思います。テーブルを選択して、次へ進みます。
    • クエリの編集画面では、特にカラムの変換など必要ない場合は、変更する必要はありません。そのまま次へ進んでも大丈夫です。
    • 重要なエンティティマップです。ここで、CDSにエンティティを構成するための各種設定を実施します。今回は新しくエンティティを構成してしまうので、「新しいエンティティを読み込む」にチェックを入れます。デフォルトでは、対象フィールドのタイプが複数行テキストになってしまうので、これらを「テキスト」のタイプに変更し、最後にプライマリフィールドを選択テーブルへ設定すればOKです。
      また、もしデータの差分をCDS側に残しておきたい場合は、「クエリ出力に存在しない行を削除します」にチェックを入れておきましょう。
    • 最後にデータの更新方法を選択します。せっかくなので、自動的に更新にしてみましょう。以下のように1時間ごとに更新というように設定しておけば、1時間毎に随時登録されたデータが吸い上げられ、最新のデータがCDS上に登録されていきます。
    • 設定後、「作成」をクリックすると、エンティティの作成と初期のデータ同期が開始されます。「完了済み」になればOKです。
    • データタブの「エンティティ」を選択すると、自動的に生成されたエンティティが一覧に含まれていることがわかります。

    このように、Power Apps から簡単にSpark データを接続して利用することができました。Power BI Connector には30日間の無償版がありますので、是非お試しください。