Upgrade to Pro — share decks privately, control downloads, hide ads and more …

セマンティックレイヤー入門

 セマンティックレイヤー入門

Findy「ABEMAの事例とともに学ぶ!セマンティックレイヤーで変わるデータエンジニアリングの世界」イベントの登壇資料です。

Ikki Miyazaki

March 24, 2025
Tweet

More Decks by Ikki Miyazaki

Other Decks in Technology

Transcript

  1. Copyright stable, inc. All rights reserved.
 本日お話しすること
 2 - セマンティックレイヤーがなぜ必要とされるのか?

    
 - セマンティックレイヤーの仕組み 
 - セマンティックレイヤーで実現したい未来 
 - セマンティックレイヤー導入の課題 
 セマンティックレイヤーの入門的な内容についてお話しします。 

  2. Copyright stable, inc. All rights reserved.
 自己紹介
 3 宮﨑一輝( ikki)


    stable株式会社 代表取締役 & データエンジニア
 - 略歴
 - コンサル → データアナリスト → データエンジニア
 - 2023年にstable株式会社を創業
 - 得意領域 
 - dbtを用いたデータモデリング 
 - データ分析
 - その他
 - 犬2匹を飼っています🐶

  3. Copyright stable, inc. All rights reserved.
 顧客
 会社説明
 4 データ基盤

    
 支援
 データ活用の推進 
 事業価値への貢献 
 stableは、データ基盤を作って終わりではく、その先のデータ活用推進や 
 事業価値への貢献まで見据えて支援を行っている支援会社です。 

  4. Copyright stable, inc. All rights reserved.
 1. 前置き
 2. なぜセマンティックレイヤーが必要なのか

    
 3. セマンティックレイヤーは何をしているか 
 4. セマンティックレイヤーで実現したいこと 
 5. セマンティックレイヤーの導入課題 
 6. まとめ
 5
  5. Copyright stable, inc. All rights reserved.
 分析基盤の発展の流れ 
 6 「なぜセマンティックレイヤーが必要なのか?」について、分析基盤の発展の

    
 流れとともに見ていく。 
 分析基盤
 1.0
 分析基盤
 2.0
 分析基盤
 3.0
 直接クエリ 
 セマンティックレイヤーの 導入
 データモデリングの 導入

  6. Copyright stable, inc. All rights reserved.
 分析基盤1.0
 7 分析基盤1.0は、それぞれのユーザーが、生データに対して SQLを投げてデータを

    
 抽出しているような状態。 SQLが複雑で、集計定義の統一も不可能に近い。 
 分析基盤1.0

  7. Copyright stable, inc. All rights reserved.
 分析基盤1.0
 8 分析基盤1.0は、それぞれのユーザーが、生データに対して SQLを投げてデータを

    
 抽出しているような状態。 SQLが複雑で、集計定義の統一も不可能に近い。 
 分析基盤1.0
 ❌ ユーザーは複雑な SQLを
 書かなくてはいけない 
 ❌ 人によって独自の定義で 集計するため定義がバラバラ 

  8. Copyright stable, inc. All rights reserved.
 分析基盤2.0
 9 分析基盤2.0は、データモデリングがされている状態。生データの加工・統合に 


    より、ユーザーが使いやすく、定義が統一されたデータ基盤になる。 
 分析基盤2.0
 データ
 モデリング 

  9. Copyright stable, inc. All rights reserved.
 分析基盤2.0
 10 分析基盤2.0は、データモデリングがされている状態。生データの加工・統合に 


    より、ユーザーが使いやすく、定義が統一されたデータ基盤になる。 
 分析基盤2.0
 データ
 モデリング 
 ✅ 生データを加工・統合することで、分 析しやすい状態にする 
 ✅ ユーザーが同じテーブルを 
 参照することで定義が統一される 

  10. Copyright stable, inc. All rights reserved.
 分析基盤2.0
 11 分析基盤2.0は、データモデリングがされている状態。生データの加工・統合に 


    より、ユーザーが使いやすく、定義が統一されたデータ基盤になる。 
 分析基盤2.0
 データ
 モデリング 
 ❌ 結局ユーザーは SQLを
 書かなくてはいけない 

  11. Copyright stable, inc. All rights reserved.
 分析基盤2.0改
 12 ユーザーが SQLを書かなくてもデータを見れるようにするために、データマートやダッ

    シュボードを用意することはできるが、データ整備側の負担は大きい。 
 分析基盤2.0 改
 データ
 モデリング 
 ユーザーごとに 
 ダッシュボードを用意 

  12. Copyright stable, inc. All rights reserved.
 分析基盤2.0改
 13 ユーザーが SQLを書かなくてもデータを見れるようにするために、データマートやダッ

    シュボードを用意することはできるが、データ整備側の負担は大きい。 
 分析基盤2.0 改
 データ
 モデリング 
 ❌ データ整備側の負担が大きい。 
 管理する対象も増える。 
 ✅ ユーザーは SQLを
 書かなくてもよくなる 

  13. Copyright stable, inc. All rights reserved.
 分析基盤2.0におけるラストワンマイル問題 
 14 データモデリングが充実した分析基盤

    2.0をもってしても、ラストワンマイル問題を効 率的に解決することは難しい。 
 分析基盤2.0
 データ
 モデリング 
 データ活用の 
 ラストワンマイル問題 

  14. Copyright stable, inc. All rights reserved.
 分析基盤3.0
 15 分析基盤3.0は、セマンティックレイヤーが間に挟まっている状態。ユーザーは SQLを

    書かなくてよくなり、管理的な負担も抑えられることが期待される。 
 分析基盤3.0
 データ
 モデリング 
 ✅ 粒度違いのテーブルやダッシュボードを 
 管理することなく、管理対象を統一できる 
 セマンティック 
 レイヤー 
 ✅ ユーザーは SQLを
 書かなくてもよくなる 

  15. Copyright stable, inc. All rights reserved.
 1. 前置き
 2. なぜセマンティックレイヤーが必要なのか

    
 3. セマンティックレイヤーの仕組み 
 4. セマンティックレイヤーで実現したいこと 
 5. セマンティックレイヤーの導入課題 
 6. まとめ
 16
  16. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み 
 17 セマンティックレイヤーの仕組みの概要は以下の図の通り。

    
 「定義」「リクエスト」「内部処理」の 3つの観点で詳細を見ていく。 
 セマンティック 
 レイヤー 
 データエンジニア 
 分析ユーザー 
 データベース 
 定義
 リクエスト 
 クエリ発行 
 結果
 結果

  17. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み 
 18 セマンティックレイヤーの仕組みの概要は以下の図の通り。

    
 「定義」「リクエスト」「内部処理」の 3つの観点で詳細を見ていく。 
 セマンティック 
 レイヤー 
 データエンジニア 
 分析ユーザー 
 データベース 
 定義
 リクエスト 
 クエリ発行 
 結果
 結果
 内部処理
 定義
 リクエスト 

  18. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / 定義
 19

    セマンティックレイヤーを使うためには、主に「ディメンション」「メジャー」「リレーショ ン」を定義しておく必要がある。 
 ディメンション
 メジャー
 リレーション
 定義が必要な主なもの 
 ・・・ 分析の切り口となる要素 
 ・・・ 分析の測定対象となる定量的なデータ 
 ・・・ テーブル間の関係性 

  19. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / 定義 /

    ディメンション
 20 ディメンション
 メジャー
 リレーション
 定義が必要な主なもの 
 - 分析対象を様々な切り口(軸)で
 「分類・グルーピング」するための属性 
 - 分析者が「〜ごとの」 という分析を
 するときの「〜」の部分 にあたる
 - 値としては人名・地名・商品名・日付 
 などの名詞からなるデータが中心 となる
 - 日付に関しては、「年 /月/日」の階層構造
 を定義することでドリルダウンが実現可能 

  20. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / 定義 /

    メジャー
 21 ディメンション
 メジャー
 リレーション
 定義が必要な主なもの 
 - 分析の測定対象となる定量的なデータ 
 - 分析者が「〜ごとの xxxx」という分析を
 するときの「xxxx」の部分 にあたる
 - 売上高、数量、金額、スコア、率などの 
 定量的なデータが中心 となる
 - カラムを定義するだけでなく、 集計方法( SUM, COUNT, AVG, MAX など)も定義する 必要がある

  21. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / 定義 /

    リレーション
 22 ディメンション
 メジャー
 リレーション
 定義が必要な主なもの 
 - テーブル間の関係性・結合方法を定義する 
 - リレーションを定義することで、 複数のテーブルにディ メンションとメジャーが分かれている場合でも集計す ることが可能 になる
 - ディメンショナルモデリングを用いている場合、 スター スキーマを定義するのと等しい 

  22. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / リクエスト
 23

    分析ユーザーは、 SQLを書かずに、ディメンションとメジャーを選択するだけで分析す ることが可能。 
 商品
 分析ユーザー 
 商品・月 ごとの売上を
 集計したいな〜 
 日付(Month)
 ディメンション
 メジャー
 売上
 定義済みのディメンション・メジャーを 
 選択するだけで集計可能( = SQL不要)

  23. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / 内部処理
 24

    選択されたディメンションとメジャーを元に、内部で SQLが自動生成される。 
 商品
 日付(Month)
 ディメンション
 メジャー
 売上
 商品・月ごとの売上を 
 集計したい 
 select
 item_name
 , order_month
 , sum(sales) as sales
 from
 orders
 group by
 item_name
 , order_month
 指定したメジャー・ディメンションから 
 SQLを自動生成してくれる 

  24. Copyright stable, inc. All rights reserved.
 セマンティックレイヤーの仕組み / まとめ
 25

    セマンティックレイヤーは、事前の定義と、ユーザーのリクエストに応じて、 
 クエリを自動生成して結果を返してくれる仕組み。 
 定義
 リクエスト 
 内部処理 
 ディメンション・メジャー 
 ・リレーションを定義する 
 集計したい要素を 
 選択して集計( SQL不要)
 クエリが自動生成される 

  25. Copyright stable, inc. All rights reserved.
 (再掲)分析基盤3.0
 26 分析基盤3.0は、セマンティックレイヤーが間に挟まっている状態。ユーザーは SQLを

    書かなくてよくなり、管理的な負担も抑えられることが期待される。 
 分析基盤3.0
 データ
 モデリング 
 ✅ 粒度違いのテーブルやダッシュボードを 
 管理することなく、管理対象を統一できる 
 セマンティック 
 レイヤー 
 ✅ ユーザーは SQLを
 書かなくてもよくなる 

  26. Copyright stable, inc. All rights reserved.
 1. 前置き
 2. なぜセマンティックレイヤーが必要なのか

    
 3. セマンティックレイヤーの仕組み 
 4. セマンティックレイヤーで実現したいこと 
 5. セマンティックレイヤーの導入課題 
 6. まとめ
 27
  27. Copyright stable, inc. All rights reserved.
 実現したいこと①:ラストワンマイル問題の解消 
 28 データモデリングをするだけでは、ユーザーにデータを届ける「ラストワンマイル」部

    分のトレードオフ課題は残っている。 
 ユーザーが SQL書く必要がある 
 データ整備側の負担が増える 
 トレードオフ 

  28. Copyright stable, inc. All rights reserved.
 実現したいこと①:ラストワンマイル問題の解消 
 29 セマンティックレイヤーの導入により、「ラストワンマイル問題」の解決が期待される。

    
 データ
 モデリング 
 ✅ 複数のテーブルやダッシュボードを 
 管理することなく、管理対象を統一できる 
 セマンティック 
 レイヤー 
 ✅ ユーザーは SQLを
 書かなくてもよくなる 

  29. Copyright stable, inc. All rights reserved.
 実現したいこと②:LLMによるデータ分析
 30 LLMの発展により、ディメンションとメジャーを指定する必要もなくなり、 


    自然言語でのリクエストが一般的になっていくと考えられる。 
 商品
 分析ユーザー 
 商品・月 ごとの売上を
 集計したい 
 日付(Month)
 ディメンション
 メジャー
 売上
 GUIでディメンション・メジャーを 
 選択する体験が一般的 
 自然言語でリクエストできるように 
 これまで 
 これから 

  30. Copyright stable, inc. All rights reserved.
 実現したいこと②:LLMによるデータ分析
 31 LLMを使ったSQL生成は今後スタンダードになると考えられるが、セマンティックレイ ヤーがあることで、

    SQL生成の精度が高くなることが期待される。 
 データ
 モデリング 
 セマンティックレ イヤー
 LLMを使った SQL生成
 LLMを使った SQL生成
 解釈の幅が広いため、 
 意図通りの結果が返ってこない可能性が高い 

  31. Copyright stable, inc. All rights reserved.
 実現したいこと③:Headless BIによるBIツールの自由な選択 
 32

    Headless BIとも呼ばれるセマンティックレイヤーの導入により、高機能な BIツール や、ユーザーに合わせた BIツール選定がしやすくなることが期待される。 
 データ
 モデリング 
 セマンティック 
 レイヤー 
 別名:Headless BI
 可視化などの機能を 
 持たないBIツールという意味
 BIツールを自由に選択できる 

  32. Copyright stable, inc. All rights reserved.
 1. 前置き
 2. なぜセマンティックレイヤーが必要なのか

    
 3. セマンティックレイヤーの仕組み 
 4. セマンティックレイヤーで実現したいこと 
 5. セマンティックレイヤーの導入課題 
 6. まとめ
 33
  33. Copyright stable, inc. All rights reserved.
 課題①:データエンジニアのリソース不足 
 34 セマンティックレイヤーはディメンション・メジャーなどの事前定義が必要。

    
 定義を行うデータエンジニアのリソース不足が課題のひとつとして挙げられる。 
 セマンティック 
 レイヤー 
 分析ユーザー 
 データベース 
 リクエスト 
 クエリ発行 
 結果
 結果
 データエンジニア 
 定義
 事前定義の 
 リソース不足 

  34. Copyright stable, inc. All rights reserved.
 課題①:データエンジニアのリソース不足 
 35 分析ユーザーにセマンティックレイヤーの実装の一部を任せることで、

    
 データエンジニアの負担を減らすような運用が理想的か。 
 セマンティック 
 レイヤー 
 分析ユーザー 
 データエンジニア 
 自分が作成した指標について 
 Pull Requestを送る
 承認
 同期
 データベース 
 クエリ発行 
 結果
 リクエスト 
 結果

  35. Copyright stable, inc. All rights reserved.
 課題②:データモデリングの不在 
 36 データモデリングを行わず、セマンティックレイヤーの導入を行うことは可能。

    
 だが、それでは「汚いデータが見やすくなっただけ」になる可能性が高い。 
 分析基盤
 1.0
 分析基盤
 2.0
 分析基盤
 3.0
 直接クエリ 
 セマンティックレイヤーの 導入
 データモデリングの 導入
 いきなりセマンティックレイヤーを導入してしまう 

  36. Copyright stable, inc. All rights reserved.
 課題②:データモデリングの不在 
 37 データモデリング解決したい課題は異なっている。セマンティックレイヤーは

    
 「ラストワンマイル問題」の解決に主軸を置くのが最適なのでは。 
 データ
 モデリング 
 セマンティックレ イヤー
 汚いデータの修正、指標定義の統一 
 ラストワンマイル問題の解決 

  37. Copyright stable, inc. All rights reserved.
 1. 前置き
 2. なぜセマンティックレイヤーが必要なのか

    
 3. セマンティックレイヤーの仕組み 
 4. セマンティックレイヤーで実現したいこと 
 5. セマンティックレイヤーの導入課題 
 6. まとめ
 38
  38. Copyright stable, inc. All rights reserved.
 三行まとめ
 39
 1. セマンティックレイヤーは、


    データ活用の「ラストワンマイル問題」 を解決する。
 2. セマンティックレイヤーは、事前定義された指標をもとに、SQLを 自動生成してくれる 。
 3. まずはデータモデリング をしよう。
 その先にセマンティックレイヤーの活躍場所がある。

  39. Copyright stable, inc. All rights reserved.
 おわりに
 40 結論
 セマンティックレイヤーで、

    
 データ活用の「ラストワンマイル問題」を解決しよう! 
 \ カジュアル面談募集中 /