こんにちは。CData Software Japan の加藤です。
Elasticsearch は、全文検索エンジンとして高い人気を誇るソフトウェアですね。Elasticsearch を含むElastic stack にはKibana のような分析用環境も用意されていますが、普段の業務で別のBIツールを使っていれば、どのデータについてもなるべくそのBI ツールで分析したいですよね。
というわけで、今回はGoogle Data Studio (日本語名:Googleデータポータル)とElasticsearch を連携する方法をご紹介します。連携にはCData Connect を使いますが、(記事中でも触れるように)CData Connect はGoogle Data Studio の正式なデータソースとしてサポートされているので、連携も簡単です。
それでは、やってみましょう!
CData Connect とは
CData Connect は、SaaS ベースで提供されるデータハブサービスです。Salesforce、NetSuite、Dynamics、Marketo、kintone など多様なSaaS にBI、アナリティクス、iPaaS、ノーコード開発プラットフォームからアクセスするための仮想エンドポイントです。連携方法が異なるSaaS をMySQL、SQL Server、OData の3種類のインターフェースに仮想化することで、データ連携をシンプルに実現します。"SQL as a Service" といっていいかもしれません。
日本では2021年1月中のリリースを予定しているので、ご期待ください。
Google Data Studio へのSaaS データ連携
Google Data Studio は、BigQuery やGoogle Analytics などいろいろなデータをサポートしています。とはいえ、Google 以外のSaaS データをどうやって連携すればいいのでしょうか? CData Connect を使えば、Google Data Studio に多様なSaaS データを連携することができます。さらにCData Connect はGoogle Data Studio のデータソースとして正式にサポートされているので、クラウドベースで簡単にSaaS間の連携が可能です。
この記事では、Google Data Studio からElasticsearchに接続する方法をご紹介します。
必要なもの
- Elastic Cloud 環境
- Google アカウント
- CData Connect アカウント
CData Connect を使うポイント
Google Data Portal がPartner コネクタとしてCData Connect を正式サポート。この1つのコネクタでSalesforce でもMarketo でもNetSuite でもCData Connect がサポートするコネクタに同じインターフェースでつなぐことができます。
CData Connect がSaaS データ(通常はJSON やXML)をカラムとレコードを持ったテーブルにモデル化。メタデータの検出・付与までを行います。Salesforce やkintone のようにカスタムオブジェクトを持つデータソースでもメタデータの動的検出を行います。これによりデータ加工なしで分析にすぐ利用できるデータとしてData Studio に渡します。
CData Connect の設定
まずはCData Connect 側でElasticsearch との接続用の設定を行います。今回はElastic Cloud にデプロイする想定です。Elastic Cloud 環境の準備がない方はこちらの記事等を参考に設定をお願いします。CData Connect に連携する際に必要な情報は以下です。
プロパティ名 | 値 |
---|---|
サーバー名 | 任意 |
ポート番号 | デフォルトでは"9243" |
ユーザー名 | デフォルトでは"elastic" |
パスワード | 任意 |
上の情報を控えておいてください。
CData Connect のID、パスワードを入手したら、以下の画面からログインできます。
ログインすると以下のページが表示されるので、「Elasticsearch」のボタンをクリックして早速Elasticsearch をデータソースとして追加します(接続文字列は隠してます)。
接続設定用のページが表示されるので、「Settings」タブで先程用意した「サーバー名」と「ポート番号」を入力しましょう。
次に「Advanced」タブから「ユーザー名」と「パスワード」を入力します。
「Settings」タブに戻って「Test Database」をクリックし、「This connection was successful.」と表示されれば接続は成功です。
Google Data Studio からElasticsearch に連携
それではいよいよGoogle Data Studio からElasticsearch のデータにアクセスしましょう。といっても簡単なステップです。まずはマーティングプラットフォームのGoogle データポータルのページにアクセスしましょう。
こんなページが表示されるので、右上の「データポータルにログイン」からGoogle アカウントを使ってログインします。
「作成」から「データソース」を選択します。
上のようなページが表示されるので、検索ボックスに例えば「cdata」と入力すると、「Partner Connector」中にCData Connectが表示されます。
クリックすると、認証情報の入力画面が表示されます。CData Connect のアカウント情報を入力しましょう。注意事項として、「ユーザー名」は"domain/user"の形式での入力です。
認証が通るとコネクタの設定画面が表示されますので、「Database」から最初にCData Connect のダッシュボードで設定したElasticsearch の接続設定を選択し、「次へ」をクリック。
次に分析対象となるテーブルを選択します。お好みのテーブルで構いませんが、今回はKibana のeコマース関連のサンプルデータを使用します。
テーブルの設定が終わったら、右上の「接続」をクリック。
成功すると、上の表示データ設定用の画面が表示されます。表示するディメンションの選択、型や集計方法の設定ができます。設定が完了したら、右上の「レポートを作成」をクリック。
後は、Google データポータルのパワフルなBI機能を活用して分析・可視化を行うことができます。上は分析の一例です。
おわりに
本記事では、Google データポータルからElasticsearch への接続を、CData Connect を通して行う方法をご紹介しました。Google データポータルのパートナーコネクタとして登録されているので、設定も数ステップで完了して簡単ですね。みなさんもぜひお試しを。