Tableau

AtScale Developer Editionでセマンティックレイヤーを構築してみる

こんにちは、インターン生の大石です。

今回は、AtScaleというツールについてご紹介させていただきます。
PoCや学習目的に無償で使用できるDeveloper Editionでセマンティックレイヤーを構築する方法を解説しますので、AtScaleについて知りたい、セマンティックレイヤーに興味があり、自分で試してみたいという方は是非ご覧ください。

目次

セマンティックレイヤーとは?

データ分析の現場でこのような課題に直面したことはないでしょうか。

  • 部署ごとに「売上」の定義が異なり、レポートの数字が一致しない
  • BIツールでダッシュボードを作るたびに、複雑なSQLを書く必要がある
  • データソースが増えるたびに、各ツールの接続設定を個別に管理しなければならない
  • 生成AIにデータを活用させたいが、どう接続すればいいか分からない

これらの課題を解決するのがセマンティックレイヤーです。
セマンティックレイヤーは、複雑な生データとビジネスユーザーの間に位置する「中間レイヤー」として機能し、以下のメリットをもたらします。

  • メトリクスの統一 
    組織全体で一貫した定義とロジックを共有できます。「先月の売上」を誰が見ても同じ結果になるため、データに基づく意思決定の信頼性が向上します。
  • 生産性の向上 
    ビジネスロジックを一度定義すれば、複数のBIツールやアプリケーションから再利用できます。アナリストは複雑なJOINやフィルタ条件を毎回書く必要がなくなります。
  • AI/LLMとの統合 
    生成AIエージェントに対して、正確で文脈を持ったデータを提供できます。自然言語での質問を適切なクエリに変換し、信頼できる回答を生成する基盤となります。

セマンティックレイヤーについてはこちらでも詳しく説明されています。
https://www.atscale.com/glossary/semantic-layer/

AtScaleについて

セマンティックレイヤーを実装するプラットフォームとして、AtScaleが挙げられます。
AtScaleは「ユニバーサルセマンティックレイヤー」を標榜しており、Tableau、Power BI、Excel、Lookerなど、様々なBIツールや分析環境と接続することが可能です。

AtScale HPより:https://www.atscale.com/

また、AtScaleはデータ仮想化のアプローチを採用しています。
Snowflake、Google BigQuery、Amazon Redshiftなどのクラウドデータプラットフォーム上で直接クエリを実行するため、データのコピーや移動が不要なことも特徴です。

実際に使ってみる

ここからは、AtScale Developer Editionを利用して実際にセマンティックレイヤーを実装してみましょう。
AtScale Developer Editionは完全無料で利用でき、エンタープライズ版と同じコア機能を使えるため、概念実証(PoC)や学習目的、小規模なチームでの利用に最適です。

今回はデータソースにBigQuery、BIツールにTableau Desktopを接続します。
(筆者はmacOSを使用しています)

AtScale Developer Editionのセットアップ

developerプランでは、Dockerfileをインストールしてセルフホストする必要があります。
まずは、公式サイトにアクセスしてサインアップします。
https://www.atscale.com/start/ 

サインアップが完了したら、zipファイルをダウンロードして解凍します。
ターミナルでdocker-compose.ymlを含むフォルダに移動して、以下のコマンドを実行します。

# コンテナを起動するコマンド
docker compose up -d

起動が完了したら、以下のリンクにアクセスするとAtScaleのログイン画面が表示されます。
http://localhost/

初回はusername, passwordともに”admin”としてログインします。
ライセンスキー欄に、サインアップ時に登録したメール宛に届いたキーを入力します。

Internet Sales Tutorialのモデルが表示できれば、セットアップ完了です!

BigQueryと接続する

いくつかTutorial Modelが用意されていますが、これらはAtScaleが内部に保持しているDBに接続しています。
実際に使用したいデータを読み込むには、外部のデータソースに接続する必要があります。
今回はBigQueryのテーブルをAtScaleから読み込む手順を解説します。

まずはGoogle Cloud側での設定を行います。
AtScaleが使用するサービスアカウントを作成して、BigQuery Adminロールを付与しておきます。

サービスアカウントのキーを作成して、JSONファイルとしてダウンロードします。

AtScale側でデータベースを追加します。
Data Sourcesの + から、BigQueryを選択してウェアハウス設定を行います。

Add ConnectionにJSONファイルをアップして、接続テストが成功すれば完了です!
データソースに追加されているのが確認できます。

Tableauと接続する

データソースと接続できたので、BIツールと接続してセマンティックレイヤーが機能していることを確認しましょう。
今回はTableau Desktopを選択します。
(.tdsファイルで外部DBに接続するため、Tableau Publicでは今回ご紹介する方法は利用できません。)

Deployed Catalogsから、作成したモデルの.tdsファイルをダウンロードします。

ダウンロードしたファイルをTableau Desktopで開きます。
ユーザー名とパスワードを聞かれるので、AtScaleのユーザーとして設定したものを入力してください。

Tableauのダッシュボード画面を確認して、AtScaleのモデルで定義したメトリクスやディメンションがフィールドとして表示されていれば完了です!

PostgreSQL JDBC ドライバーが必要と表示された場合

DBに接続する際、ドライバーが必要な場合があります。
以下の手順を実施して、Tableau Desktopを再起動してください。

https://jdbc.postgresql.org/download/
PostgreSQL JDBC ドライバー 8 42.7.5をダウンロードして、下記のフォルダに.jarファイルを移動する
(フォルダがない場合は作成する)

/Library/Tableau/Drivers

まとめ

今回はAtScale Developer Editionのセットアップと接続方法をご紹介しました。
AtScaleで指標や集計を定義しておけば、Power BIやExcelから表示しても数値がズレることがありません。

AtScaleはGUIでの操作に加えて、オープンソースのセマンティックモデリング言語(SML)も利用でき、git管理ができることもメリットですね。

また、AIエージェントやチャットbotが利用するデータを提供することで、AI Readyのデータ基盤としても活用できます。
下記で紹介されているので、興味がある方はこちらも試してみてください。
https://www.atscale.com/use-cases/generative-ai/

真打ち登場LOD ~TableauのEXCLUDE関数を知ろう~前のページ

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Tableau

    Tableau Serverの基礎をまとめてみた

    【目次】・はじめに・Tableau Serverが必要な理由・環…

  2. Tableau

    Tableau:分かりやすいLOD – INCLUDE編

    エクスチュア渡部です。今回はLODブログの第3弾です。INCLUD…

  3. Excel

    コホート分析(Cohort Analysis)って何?〜Tableau/GA/Excel/Sprea…

    はじめにさぁ、ようやく皆さんお待ちかねの「コホート分析」です。我々…

  4. Tableau

    真打ち登場LOD ~TableauのINCLUDE関数を知ろう~

    こんにちは。エクスチュアの大吉です。前回の記事では、FIXE…

  5. Tableau

    【TC19ブログ】Tableau新データモデリング(リレーションシップ)解説

    ※本記事はTC19のDevsOnStageで発表と、TC19でのセッシ…

  6. Tableau

    Tableauで強調円グラフを作ってみた〜特殊チャート①〜

    はじめにこんにちは!インターン生の與那覇(ヨナハ)です今回は、長谷…

カテゴリ
最近の記事
  1. AtScale Developer Editionでセマンテ…
  2. 真打ち登場LOD ~TableauのEXCLUDE関数を知ろ…
  3. DataformでactAs権限に適合する設定をする
  4. 真打ち登場LOD ~TableauのINCLUDE関数を知ろ…
  5. 真打ち登場LOD ~TableauのFIXED関数を知ろう~…
  1. Adobe Analytics

    カスタムイベントとは-Adobe Analyticsの指標説明
  2. ヒートマップ

    【Tips】ヒートマップ機能について②~ムーブメント、アテンション編~
  3. Cortex

    [Snowflake新機能]AI_AGGを試してみた
  4. Generative AI

    AIを使ったマーケティングゲームを作ってみた
  5. Mouseflow

    Mouseflow vs Hotjar:どちらを選ぶべき?
PAGE TOP