最近のデジタルマーケティング業界では、Zero Copyがバズワードとしてある。
要は、データをCloud DWH側で処理をさせて、デジタルマーケティングのツール側からはその結果だけ参照させようという取り組みだ。 そうすると、データの二重管理にならないし、IT側がデータガバナンス効かせられるし、という発想もあるし、マーケツール側でデータ処理が弱い場合はCloud DWHのエコシステムに乗っかろうという発想でもある。
というわけで、Zero Copyを各社発表してきているわけである。(結果とはいえ、マーケツール側に保存しないといけないじゃん、とかそういうツッコミは置いておいて。)
このZero Copyに対するソリューションとして話にあがるのが、任意のDWHに直接クエリを投げられるFederated Queryがある。 (他にもDatabricksのDalta Sharingのようにストレージ自体を共有してしまうという考えもある。)
従来、自社BI/MAのストレージに格納させてから加工するタイプのソリューションだった場合に、Federated Queryをサポートして、インタラクティブにクエリできるソリューションを提供し始めている。今回はDomoのFederated Query for Trinoを試してみる。Domoの場合はDomo Cloud Amplifierという形で二系統提供している。Domo Cloud Amplifierでない場合は機能制限が多いが、まだDomo Cloud AmplifierにTrinoがサポートされていないため、前者を利用する。

Federated Queryを設定する
Domoの管理画面から、Federated Queryを選択し、Trinoを選択する。

下記の接続設定がでるので、それぞれ自身の環境にそった情報を入力する
- HOST api-presto.treasuredata.com (USリージョンの場合)
- PASSWORD (からで良い)
- PORT: 443
- USERNAME (TD Master APIKEYを指定)

次に、Datasetsへの接続のために、下記を設定する。
- Database: td-trino (or td-presto)
- Schema: 取り込みたいテーブルがあるデータベース
- Tables: 取り込みたいテーブル

最後に、キャッシュの設定をする。これはデータソースの更新頻度に合わせた秒数を設定する。

接続が確立すると、下記のようにDomoの標準機能としてデータ分布などが参照できるようになる。

また、ここからDomoの特徴としてカード作成なども可能となり、ダッシュボードの作成ができるようになっている。

制約
Cloud Amplifierではない場合には、通常のデータセットとは異なり、いくつかの制約が発生する。
例えば、Domo内のETL機能が使えなかったりする。そのため、事前のデータ加工などが必要になってくる。
より詳細は下記を見ると良い。
おわり
Federated QueryなどでZero Copyをサポートしました、という形は今後も増えていくだろう。 ただ、データをどこで処理させるかによって、当然のことながら連携元では様々な制約が生まれるケースもある。 このあたりを自然に連携できるようになっていくのかは、各社の動向を注目するとよいだろう。
DomoでFederated Queryができるようになると、いよいよ懐かしのMetricInsightsの既視感がすごい・・・
