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

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

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

MySQL Power BI Connector

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



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

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

MySQL Data に接続するDSN を設定

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

Server およびPort プロパティがMySQL への接続には必須です。IntegratedSecurity をFALSE に設定した場合、User、Password も必須になります。 オプションで、Database を設定することもできます。Database は設定がない場合すべてのデータベースを使えるようになります。

パスワード方式によるSSH 接続

パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。

  • User: MySQL のユーザ
  • Password: MySQL のパスワード
  • Database: MySQL の接続先データベース
  • Server: MySQL のサーバー
  • Port: MySQL のポート
  • UserSSH: "true"
  • SSHAuthMode: "Password"
  • SSHPort: SSH のポート
  • SSHServer: SSH サーバー
  • SSHUser: SSH ユーザー
  • SSHPassword: SSH パスワード

接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;

公開鍵認証方式方式によるSSH 接続

公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。

  • User: MySQL のユーザ
  • Password: MySQL のパスワード
  • Database: MySQL の接続先データベース
  • Server: MySQL のサーバー
  • Port: MySQL のポート
  • UserSSH: "true"
  • SSHAuthMode: "Public_Key"
  • SSHClientCertType: キーストアの種類
  • SSHPort: SSH のポート
  • SSHServer: SSH サーバー
  • SSHUser: SSH ユーザー
  • SSHClientCert: 秘密鍵ファイルのパス

接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;

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

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

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

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

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