はじめに
CData Sync は、ETL/ELT 方式のデータ統合基盤をノーコードで構築することができる製品です。CData Sync 製品のVersion23 よりBox の大量データをデータ基盤に構築することができるようになりました。
CData Sync でレプリケーションできるテーブルリストはこちらからご確認いただけます!
Box Connector for CData Sync - データモデル
Box のメタデータについて
Box では、メタデータを使用すると、Box 内のファイルに関連付けられるカスタム情報を定義して保存できます。
メタデータの使用 – Box Support
ちなみに・・・
CData Sync では、Box のメタデータのどの情報を取りたいかによって取得するテーブル名がちがいます。
◇[Metadata Templates]の場合:
水色のマーカー箇所の項目が取得できます。
◇[Files] /[FileMetadataInstances] の場合:
黄色のマーカー箇所の項目が取得できます。
本記事でご紹介するシナリオ
本記事では、Box 内のファイルのメタデータをMySQL にレプリケーション(複製)してPower BI から可視化する方法をご紹介します。
前提
本手順では以下のソフトウェアを利用しています。
・Windows11
・CData Sync ™ - Cross-Platform Edition - 23.0.8590.0/ Java版
・CData Box (23.0.8519.0)
・Box
・Microsoft Power BI Desktop
・MySQL
事前準備
◆事前準備として、必要な製品のインストールを行います。
・CData Sync Version 23( 30日間無償トライアル版 )
https://www.cdata.com/jp/sync/download/
・Microsoft Power BI Desktop
https://www.microsoft.com/ja-JP/download/details.aspx?id=58494
・MySQL
https://dev.mysql.com/downloads/
◆Box のアカウントへログインください。
https://account.box.com/login
◆次に、こちらのURLよりCData Sync の管理コンソール画面へアクセスください。
http://localhost:8181/
(参照)CData Sync - サーバーの起動 | 23.0.8522
取得したいデータ
今回は、顧客名がどの会社で、部門はどこで、受領日はいつか、詳細を一覧にして、Power BI で可視化して見たいと思うので、下記の黄色いマーカー箇所のデータを取得しようと思います。
手順
1. CData Sync からBox へ接続する
左側に表示されている[接続]タブ から、Connectionsの[+接続を追加]をします。
[コネクタを選択]する画面が表示されましたら、データソースとしてBox コネクターをインストールしてください。
Sync App は、Box への接続にOAuth 認証標準を使います。
今回は、下記のように入力します。
<接続の必須項目>
・接続名:任意の接続名
・OAuth Scheme:OAuth
・コールバックURL:http://localhost:8181/src/oauthCallback.rst(すでに設定されていると思います)
「高度な設定」の「Miscellaneous」にある「Include Custome Fields」を「True」に設定することで、Box のファイル毎のメタデータ情報まで取得するようになります。
Box Connector for CData Sync - IncludeCustomFields
入力を終えたら、「保存およびテスト」を押します。
OAuth認証の画面がブラウザに表示されますので、承認していただくと接続が「✅成功しました」とSync に表示されます。
非常にシンプルにBox へアクセスすることができましたね。
2. CData Sync からMySQL へ接続する
先ほどと同じように、[コネクタを選択]する画面から、今度は同期先としてMySQL のコネクターをインストールをしてください。
今回は、下記のように入力します。入力を終えたら、「保存およびテスト」を押します。
<接続の項目>
・接続名:任意の接続名
・Server:MySQLのサーバー名
・Port:3306
・User:MySQLのユーザー名
・Password:MySQLのパスワード
・Database:Box のメタデータ情報を同期させたいデータベース
・Use SSL:False
BoxとMySQLの接続が成功しました。
3. Box からMySQL へ レプリケーション(複製)する
Boxへの接続、MySQLへの接続がそれぞれ完了したので、次はジョブを作成していきます。
左側のタブ[ジョブ]を開き、[+ジョブを追加]します。
ご自身で、どのようなジョブかわかるように任意の名前を入力してください。
そして、先ほど接続したBox とMySQL をそれぞれデータソース・同期先として選択してジョブを追加します。
先ほどつくったジョブBox2MySQLを開いたら、概要の画面にうつります。
そこから、[タスク]タブを選択してください。
今回は、Box のファイルのメタデータ情報を取得したいので、[Files]を選びます。
先ほど選択したタスクが追加されたら、[Files]にチェックをつけて、MySQL へBox のメタデータがレプリケーション(複製)されるジョブを実行します。
[Files]をクリックすると下記のような画面が表示されます。[プレビュー]から[▷実行]をクリックすれば、同期した内容を確認することができます。
MySQL のほうを見てみると、取りたかったBox のメタデータがしっかりとレプリケーション(複製)されていますね。
4. Power BI からMySQL への接続
弊社には、MySQL Power BI Connector がありますので、今回はこのPower BI に特化したCData Driver を使用して、MySQL に同期されたBox のメタデータをPower BI で可視化できるようにしたいと思います。
ちなみにこちらも30日間の無償トライアルがございますので、ぜひ試してみてください。
https://www.cdata.com/jp/drivers/mysql/powerbi/
こちらの記事を参考にしました。
https://www.cdata.com/jp/kb/tech/mysql-powerbi-dataflow.rst
Box のメタデータをMySQL にレプリケーションしてPower BI で可視化することができました。
まとめ
本記事では、新しくCData Sync に追加されたBox コネクターを使って、Box のメタデータをMySQL にレプリケーションしてPower BI で可視化する方法を紹介しました。顧客・部門・受領日などの詳細を一覧にして、Power BI で見ることができたら便利ですよね。CData Sync は、MySQL 以外にもSQL Server やAmazon Redshift、DB2など様々なオンプレミスDB、クラウドDB、データウェアハウスを同期先としてサポートしています。CData Sync はこちらのページから30日間の無償トライアルが可能ですので是非お試しください。
関連コンテンツ