【Tableau Conference 2025】 – dbt Semantic Layer × Tableau

【Tableau Conference 2025】 – dbt Semantic Layer × Tableau
eyecatch_dbt_tableau

はじめに

こんにちは。m.fujitaです。
2025年4月15日~4月17日に開催された、Tableau Conferenceに参加してきました。
その中で印象に残ったセッションについてご紹介します。
本日はdbt Semantic Layer×Tableauの話題です。

このブログを読んでほしい人

今回のブログは、こんな人達に読んでほしいなと思って書きます。
・dbtとTableauを使っている人
・Tableau Conferenceで発表されたSemantic Layer(Tableau Next)との違いを知りたい人

dbt (data build tool)

dbt は、データ分析者がSQLというデータベースを操作する言語を使って、
データウェアハウス(分析に使うデータを集めた場所)の中にあるデータを整理したり、変換したり、加工したりするのを助けてくれるツールです。

例えるなら、dbt はデータ分析における「料理レシピ」のようなもの。
生の食材(まだ整理されていないデータ)を、分析しやすい美味しい料理(分析Readyなデータ)に変えるための手順を、
SQL という共通言語で記述し、管理することができます。
そして、このレシピ(dbt のコード)に従って、dbt が実際にデータを調理(変換・加工)してくれるのです。

Semantic Layer

そもそも、Semantic Layerってなに?っていう所から疑問に思うこともあるかもしれません。
一言でいうと、自社独自で使われている切り口をデータで表現しようとする仕組みです。

もう少し詳しく補足すると、Semantic Layerは、生データや複雑なデータ構造を、ビジネスユーザーにとって理解しやすく、使いやすい形に変換・抽象化する役割を担います。
具体的には、以下のような要素を含んでいることが多いです。

・ビジネス用語への翻訳: テーブル名やカラム名を、売上、顧客、商品といったビジネスで使われる言葉に置き換えます。
・指標の定義: 複数のデータ項目を組み合わせて、売上高、顧客獲得単価、コンバージョン率などの重要なビジネス指標を定義します。
・リレーションシップの定義: 複数のデータセット間の関連性を定義し、結合処理などを意識せずにデータを扱えるようにします。
・アクセス制御: 誰がどのデータにアクセスできるかを管理し、セキュリティを確保します。

つまり、Semantic Layerがあることで、データ分析を行う人が、データの専門知識がなくても、
自社のビジネスロジックや視点に基づいて、必要な情報を効率的に取得し、分析できるようになるのです。

dbt Semantic Layer

dbt Semantic Layer は、dbt Cloud上でSemantic Layerの定義ができる仕組みになっています。

・dbt プロジェクトとの統合: dbt で変換・モデリングされたデータモデル(テーブルやビュー)をベースに Semantic Layer を構築できます。
これにより、データ変換のロジックと分析のための定義を一元的に管理できます。
・メトリクスの定義: 売上、利益、顧客数といった重要なビジネス指標(メトリクス)を、SQL を書くことなく定義できます。
・ディメンションの定義: 顧客、製品、地域などの分析軸となるディメンションを定義できます。これにより、メトリクスを様々な切り口で集計・分析することが容易になります。
・一貫性の確保: 定義されたメトリクスやディメンションは一元管理されるため、異なる分析ツールやレポート間で定義のずれを防ぎ、一貫性のあるデータ分析を実現できます。
・セルフサービスBIの促進: ビジネスユーザーは、定義済みのメトリクスやディメンションを利用して、自身で必要な分析やレポート作成を行うことが容易になります。

つまり、dbt Semantic Layer は、dbt Cloud の強力なデータ変換・モデリング機能と連携することで、
より効率的で一貫性のあるデータ分析基盤を構築するための重要な要素と言えます。

dbtにはdbt Coreとdbt Cloudがあり、dbt Semantic Layerはdbt Cloudの機能になります。
違いにつきましては、下記ページをご確認ください。

dbt Coreとdbt Cloudの関係性・違いなどについてまとめてみた #dbt
https://dev.classmethod.jp/articles/differences-between-dbt-core-and-dbt-cloud/

dbt Cloud pricing
https://www.getdbt.com/pricing

dbt×TableauのDevs on Stage

さて、4月16日に開催されたTableau Conference 2025のDevs on Stageにて
Tableau Cloud にdbt Semantic Layerのコネクタが追加される旨の発表がありました。
リリースが楽しみです!

Devs on Stageで紹介された内容は、アクティビティログの可視化になります。

↓こちらがTableau Cloudからdbt Semantic Layerに接続するコネクタ設定になります。

dbt Semantic Layerで定義したActivity Log+Org Chartを使って
Tableauの箱ひげ図として可視化ができました。

Tableau DesktopとTableau Serverでは現在も利用可能です。
ただし、Tableau2020.4以降で使用可能な拡張機能となっております。

https://exchange.tableau.com/ja-JP/products/1020

Achieve Governance Harmony: Powering Tableau with dbt

個別セッションも見てきました。
dbt Semantic Layerを使ってTableauのダッシュボードに可視化するというプレゼンになっていました。

dbt がデータの変換、テスト、および管理を効率化し、継続的なデータ運用サイクルをサポートするツールであることを示しています。
無限ループの図は、継続的に処理、分析、改善されるべきものであるという考え方を強調しています。

SQLを簡素化して可読性や信頼性を高めることができ、デバッグがしやすくなります。
Githubでのバージョンコントロールも可能です。

テクノロジーツアー

Rintaroさんが日本人向けにスポンサーブースを回るテクノロジーツアーを開催してくださいました。
その中で、dbtブースにお邪魔するタイミングがあり、こちらの模様がブログになっております。
https://www.getdbt.com/blog/tableau-conference-recap-2025

遠くにRikaさんが見えていますが、私も後ろ姿でこっそり写っています

Tableau NextのSemantic Layer

この度、Main KeynoteでTableau Nextについて発表がありました。

上記のSemantic Layerは、Tableau Next上ではTableau Semanticsと呼ぶそうです。

日本人向けのTC事前セッションでは、このような形での絵を発表してくださっていました。
Tableau NextはSalesforce Platform上に構築されるのが前提となっております。

dbt Semantic LayerとTableau NextのTableau Semanticsの比較

結局何が違うんだろう?ということで比較表を作ってみました。
ただし、Tableau SemanticsはTableau Conferenceで発表されたばかりの機能なので、正確でない可能性があります。
詳細は、公式サイトをご覧ください。

特徴 dbt Semantic Layer Tableau Semantics (Tableau Nextで発表)
主な目的 指標定義の一元管理、BIツール間の整合性確保、Metrics as Code※ データモデリングと指標定義の簡素化、Salesforce Data Cloudとの統合強化
定義場所 dbtプロジェクト (YAMLファイル) Tableauプラットフォーム内 (Data Cloudのデータ管理レイヤー内)
定義方法 コード (YAML)、バージョン管理可能 GUIベースの可能性が高い
BIツール連携 Tableau、Google Sheets、Modeなど複数のBIツールと連携可能 Tableau製品群およびSalesforceエコシステムとのネイティブな連携を重視
成熟度 GA (一般提供) 2025年2月GA(Tableau Nextの一部として発表)
中心となる思想 Metrics as Code※、ツール非依存性、データエンジニアリングのベストプラクティス Tableauユーザーの使いやすさ、Salesforce Data Cloudとの連携による価値最大化
価格 dbt Cloudのプランに依存 (開発者シート、従量課金) 現時点では未公開

※Metric as Code:指標定義をコードで管理する概念のこと。バージョン管理、テスト、再利用性が向上。

まとめ

今日は下記の内容をお伝えしました。

・dbt Semantic Layer
・Tableau Semantic
・dbt Semantic LayerとTableau Semanticの違い

Tableau Semanticは発表されたばかりの機能ですし、今後が楽しみですね。
dbt Semantic LayerとTableau Desktop/Serverのコネクタは2020.4からGAになっているようですが、使ったことがなかったので
次回使ってみたブログを書けたらいいなぁと思っています。乞うご期待。