見出し画像

Tableau Einstein と Salesforce Data Cloud を繋ぐ Semantic Layer

Dreamforce 2024直後の2024-10-07にDreamforce Global Gathering for Dev/Arch in Tokyoで発表した内容の補足記事です。資料は以下の通り公表していますが、説明文がないとわかりにくいので。

なお、本エントリーはDreamforce 2024への参加やその他の活動を通じて平塚が理解した内容を記述したものであり、Salesforce.com のレビューを受けたものではありません。あくまでもひとりのユーザーの理解だと捉えていただけると幸いです。

そもそもSemantic Layerとは

まずSemantic Layerのことはご存知でしょうか?以下は'Unlock the Power of Data with Semantic Layer' session, Dreamforce 2024 の資料を基に平塚が再作成した図です。

この資料ではBIやReporting, Machine Learningといったデータを活用する層をData Consumption Layer、Data SourceやData Lakeなどのデータを供給する層をData Layerと呼んでいます。このとき、Data Consumption LayerとData Layerの間に存在する層がSemantic Layerです。

Semantic LayerはData Consumption Layerのアプリケーションや、そのアプリケーションを利用するエンドユーザが、一般的なビジネス用語を用いてData Layerに存在するデータにアクセスするためにサポートサポートする層です。例えば"会計年度期間" というと企業によっては4月始まりの企業鵜もあれば、10月始まりの企業も存在します。そこを自社に併せた期間を設定してくれます。また、"売上計上月"も契約取得時に計上したいケースもあれば、契約満了時に計上したいケースもあるでしょう。このようなビジネス表現をそのビジネスのコンテクストに応じてシステム的なQuery等に変換してくれることが期待されています。

Tableau EinsteinのSemantic Layerはどのように扱われるのか

以下の図は 'Unlock the Power of Data with Semantic Layer' session, Dreamforce 2024 で公開されていたTableau Semanticsのアーキテクチャ概要です。わかりづらいのですが、Tableau Einsteinは画面上部のConsumption & Application に存在していることが想定されています。そしてこのTableau Einsteinは"Data Cloudの中に存在するSemantic Modelsにアクセスしている"ことが分かると思います。

これがどういったことを示すかというと、Tableauは自らの中にSemantic Layerを持つのではなく、外部のSemantic Modelを参照することを前提とされているのだと理解しています。

例えば先日も dbt Cloud Semantic Layer Connector to Tableau Cloud のアナウンスがありましたね。

dbt Cloud Semantic LayerがTableau Einsteinにどのような影響を与えるかは理解し切れていませんが、Data CloudのSemantic Modelと同じような影響を与えるのだろうと予想しています。

Data CloudのSemantic Layerはどのようなスケジュールで提供されるのか

これまた 'Unlock the Power of Data with Semantic Layer' session, Dreamforce 2024 で公開されたTableau SemanticsのRoadmapです。

Semantic AuthoringというのはData CloudでSemantic Modelを定義するための仕組みです。以下の様なWeb UIベースでの設定画面が紹介されていました。こちらは25年2月にGA予定。

ところで前述のRoadmapではPresentとして2023年9月にSemantic Queryがリリースされていると記述されています。このSemantic Queryとはなんでよしょう?

salesforcebloggerのエントリー"Introducing Data Cloud Reports on Tableau Semantics"によると以下の記載があります。

The Semantics Query Generator is an API-based service that interacts with the Semantic Model and generates ‌optimized SQL over Data Cloud objects. This API accepts a semantic query as a parameter, a context of a tenant, and then internally fetches the needed data-model metadata and calculates and returns the query result.

Introducing Data Cloud Reports on Tableau Semantics; salesforceblogger.com

実は平塚も詳しい公開資料を見つけられていないのですが、"詳しい人"(詳細は割愛)したところ、"明示的に利用を宣言しなくても自動的に活用されているAPIベースのSQLエンジン"ということは伺うことができました。おそらく、Tableau Agent: Web Authoringではこの仕組みが利用されているのだと思います。

Tableau Agent: Web Authoring; https://www.tableau.com/ja-jp/tableau-agent

なお、詳しい人に「Tableau EinsteinのデータソースはSales CloudとData Cloudのどちらを選んだ方がよりスマートな回答を得られるのかな?」という質問にも「Data Cloudだよ」との回答を得ているので、上記の理解で正しいのだと思います(語学力に不安があるため、公式回答ではない、参考程度にとどめてください)。

これらのことから、現時点でもTableau EinsteinのデータソースとしてはData Cloudを採用する方が恩恵を受けられそうです。

おわりに

Tableau EinsteinのSemantic Layerに関する概要紹介は一旦は以上です。しかしながら、実はTableauからData CloudをデータソースとするときにはData Cloudの標準DMOを利用した方が効果が高い(はず)というお話もあり、このトピックの内容はこれだけに留まりません。今後もSalesforce Data Cloudのトピックの中で情報発信していきますので引き続きフォローいただけると幸いです。

また、本エントリーの中で誤認している箇所等があれば、是非是非ご連絡ください!

いいなと思ったら応援しよう!