Slide 1

Slide 1 text

#SaaSEM

Slide 2

Slide 2 text

© SaaS Engineering Meetup #SaaSEM アジェンダ 第7回 B2B SaaS × AI機能開発 〜テナント分離のパターン解説〜

Slide 3

Slide 3 text

© SaaS Engineering Meetup #SaaSEM 発起人について ソフトウェアエンジニア 兼 CEO 兼 VPoE 小笹 佑京(Ozasa Yuki) 株式会社アンチパターン 代表取締役 日本 CTO 協会 Contributor 立教大学卒業後、2014年に株式会社イノベーションに入社。 マーケティングオートメーション SaaS開発業務に従事。 2016年には同社でマザーズ上場を経験。 2018年より開発本部長を歴任。 2019年7月株式会社アンチパターンを創業。 ■主な登壇暦 ・GitHub dockyardコミュニティ 竣工イベント ・AWS主催 モダンアプリケーション開発の新潮流 2023 ・Postman API Night Tokyo 2024 Spring ・JP_Stripes 東京 Vol.17 ・日本CTO協会主催 Developer eXperience Day 2024

Slide 4

Slide 4 text

© SaaS Engineering Meetup オープニング #SaaSEM

Slide 5

Slide 5 text

© SaaS Engineering Meetup 日本企業の DXが 成果を生んでいない 我々が取り組むべき日本の課題

Slide 6

Slide 6 text

© SaaS Engineering Meetup #SaaSEM 解決すべき日本の課題 - 日本の現状 「成果が出ている」の回答割合は確かに増加傾向にあるものの、 米国企業の「成果が出ている」の回答割合は89.0%であり、比べると依然として差がある状態 独立行政法人情報処理推進機構『DX動向2024』より抜粋 https://www.ipa.go.jp/digital/chousa/dx-trend/eid2eo0000002cs5-att/dx-trend-2024.pdf 6

Slide 7

Slide 7 text

© SaaS Engineering Meetup #SaaSEM 解決すべき日本の課題 - 日本の現状 「新製品・サービスの創出」や「顧客起点の価値創出によるビジネスモデルの根本的な変革」には 75%以上の企業が取り組むものの、成果が出ているのは 22.1%、17.7%と相対的に低い結果が出ている 独立行政法人情報処理推進機構『DX動向2024』より抜粋 https://www.ipa.go.jp/digital/chousa/dx-trend/eid2eo0000002cs5-att/dx-trend-2024.pdf 7

Slide 8

Slide 8 text

© SaaS Engineering Meetup SaaS 課題解決のキーファクター

Slide 9

Slide 9 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 SaaS に合わせて業務プロセスを変革 することで DX を促進する。 ユーザー SaaS ベンダー ナレッジの提供 活用データの提供 活用データの分析 ナレッジを活かした機 能開発 最適な業務プロセスを 構築するために 必要なナレッジの集合。

Slide 10

Slide 10 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 営業管理ソフト 会計ソフト 労務ソフト 営業管理 SaaS 会計 SaaS 労務 SaaS コスト & リスク コスト & リスク => 割り勘効果 を得ている 自社開発 & パッケージソフト SaaS 利用

Slide 11

Slide 11 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯

Slide 12

Slide 12 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯

Slide 13

Slide 13 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 テナントという概念が入り込むことで複雑性が高まっている × テナント ● 認証・認可 ● 料金プラン ● 請求 ● セキュリティ ● 可用性 ● 利用量計測 etc…

Slide 14

Slide 14 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 テナントという概念が入り込むことで複雑性が高まっている × テナント ● 認証・認可 ● 料金プラン ● 請求 ● セキュリティ ● 可用性 ● 利用量計測 etc… 【運用者視点】 アクセスしてきたユーザーについて ● 所属するテナントは? ● 役割(ロール)は? ● プランは? ● どの機能を使える? ● いくらで請求? 【テック視点】 ● リソースの共有範囲 ● テナント分離 ● データパーティショニング etc…

Slide 15

Slide 15 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 SaaS 関連書籍も出ており、ナレッジが共有され始めているが それでもまだまだ足りない!

Slide 16

Slide 16 text

© SaaS Engineering Meetup #SaaSEM 立ち上げの経緯 自ら機会を作り出し、機会によって変えていくために立ち上げいたします B2B SaaS の魅力や将来性の高さを発信し、 その過程で特異性に触れていきながら、 認知/啓蒙/学習を推し進めることで、 日本における B2B SaaS の業界の底力をあげ、 大きく躍進できる SaaS を日本から生み出すべく、本活 動を開始いたします。

Slide 17

Slide 17 text

© SaaS Engineering Meetup セッション TIME #SaaSEM

Slide 18

Slide 18 text

© SaaS Engineering Meetup AIとSaaSにおけるトレンドについて #SaaSEM

Slide 19

Slide 19 text

© SaaS Engineering Meetup #SaaSEM テーマ 第7回 B2B SaaS × AI機能開発 〜テナント分離のパターン解説〜 引用:https://xtech.nikkei.com/atcl/nxt/column/18/02877/070100002/

Slide 20

Slide 20 text

© SaaS Engineering Meetup #SaaSEM Tier の考え方は航空機の収益構造に似ている Tierの考え方 https://gigazine.net/news/20170316-airline-class-economics/

Slide 21

Slide 21 text

© SaaS Engineering Meetup #SaaSEM SaaSにおけるTierごとの収益構造の実際 Tierの考え方 ■ Costs:費用 ■ Revenue:収益 ■ Catlog size:顧客数 プランなど Tier を 考えることは ビジネスを考えること に直結する。

Slide 22

Slide 22 text

© SaaS Engineering Meetup #SaaSEM SaaSにおけるTierごとの収益構造の実際 Tierの考え方 ■ Costs:費用 ■ Revenue:収益 ■ Catlog size:顧客数 プランなど Tier を 考えることは ビジネスを考えること に直結する。 「SlackやUnityといった企業では、 Top 1%の顧客が40%以上を占めるケースも存在」 引用元: https://price-hack.com/articles/1212

Slide 23

Slide 23 text

© SaaS Engineering Meetup #SaaSEM プライシングの考え方 おおよそ3種類のアプローチが存在 自社視点 競合視点 顧客視点 ● 「Cost-plus方式」 ○ コスト(原価+販管費)に対して、適切なマージンを 設定し販売 ● 「Competitor-based方式」 ○ 競合企業群の価格水準 ● 「Value-based方式」(バリューベースプライシング ) ○ 顧客が製品に対し感じる価値に基づき価格を決 める方法

Slide 24

Slide 24 text

© SaaS Engineering Meetup #SaaSEM 利益設計 バリューベースで高利益率を目指せる 図の引用元:https://www.youtube.com/watch?v=sPk_-wdbl8U

Slide 25

Slide 25 text

© SaaS Engineering Meetup #SaaSEM VaaSとは 生成AIの登場により新しい概念も提唱されてきている “Value as a Service”(VaaS) 成果重視 データの活用と プレゼンテーション ● 月額の固定料金やユーザー数課金ではなく、タスクの 成果によって課金されるモデル ● 例 ○ Salesforceの「Agentforce」では1会話あたりの 課金 ○ サポートシステムにおいて「解決済みチケット数」 に基づいて課金 ● バリューベースで価格設定がされ、顧客にとってどれく らいの経済効果を生んだのかをデータ分析をすること でプレゼンテーションする

Slide 26

Slide 26 text

© SaaS Engineering Meetup AI機能開発における テナント分離パターン #SaaSEM

Slide 27

Slide 27 text

© SaaS Engineering Meetup #SaaSEM SaaSデプロイメントモデル サーバ DB サーバ DB サーバ DB テナント A用 テナント B用 テナント C用 サイロ サイロモデルでも、コードベースは 1つ (会社ごとのカスタマイズは行わない) 27

Slide 28

Slide 28 text

© SaaS Engineering Meetup #SaaSEM SaaSデプロイメントモデル サーバ DB テナント A,B,C共有 プール 共用インフラでも適切な論理テナント分離を考える 28

Slide 29

Slide 29 text

© SaaS Engineering Meetup #SaaSEM SaaSデプロイメントモデル DB サーバ DB DB テナント A用 テナント B用 テナント C用 ハイブリッド 分離した部分を意識しないでよいプログラミングを心がける 29

Slide 30

Slide 30 text

© SaaS Engineering Meetup #SaaSEM SaaSデプロイメントモデルごとの特徴 サイロ プール ブリッジ ・ユーザ認証 ・テナント識別 ・データベース切替 ・運用コスト ・複雑度 ・テナント分離  (主にセキュリティと 性能) 不要な場合あり 不要 不要 大 小 高 必要 必要 不要 小 中 比較的小 必要 必要 必要 中 大 中 アプリケーションで

Slide 31

Slide 31 text

© SaaS Engineering Meetup #SaaSEM SaaSデプロイメントモデルごとの特徴 サイロ プール ブリッジ ・ユーザ認証 ・テナント識別 ・データベース切替 ・運用コスト ・複雑度 ・テナント分離  (主にセキュリティと 性能) 不要な場合あり 不要 不要 大 小 高 必要 必要 不要 小 中 比較的小 必要 必要 必要 中 大 中 アプリケーションで どのモデルをどの時点で採択するのかは、 プロダクトの特性 (市場の特性 )や事業の成長度合い に大きな影 響を受ける。 ビジネスサイドとテックサイド (エンジニア )で よく話し合って決めるべき。

Slide 32

Slide 32 text

© SaaS Engineering Meetup #SaaSEM AI活用について おおよそ3種類のアプローチが存在(当然組み合わせるものとして) プロンプト RAG ファインチューニング ● 生成AIに対する命令や質問 ● 生成AIによるテキスト生成に、外部情報の検索を組み合 わせることで、回答精度を向上させる技術 ● 公開されている学習済のモデルに、独自のデータを追加 で学習させ、新たな知識を蓄えたモデルを作り出す技術

Slide 33

Slide 33 text

© SaaS Engineering Meetup #SaaSEM 活用パターン 最もシンプルな形式 アプリケーション 生成AIサービス

Slide 34

Slide 34 text

© SaaS Engineering Meetup #SaaSEM 活用パターン プロンプト活用のテナント対応 アプリ Tenant 1 Tenant 2 Tenant 3 プロンプト 補強 テナント コンテキスト テナントコンテキストを元にデータ やドキュメントを収集

Slide 35

Slide 35 text

© SaaS Engineering Meetup #SaaSEM 活用パターン RAGのテナント分離パターン - サイロ Tenant 1 Tenant 2 基盤モデル Store Store 基盤モデル ● メリット ○ テナントごとに柔軟な対応が可能 ○ 明確な分離境界 ○ 他テナントの処理の影響を受けにくい ● デメリット ○ 個別の構成の検討の必要性 ○ インフラと管理コストの増加

Slide 36

Slide 36 text

© SaaS Engineering Meetup #SaaSEM 活用パターン RAGのテナント分離パターン - プール Tenant 2 Tenant 1 スキーマ分離 行レベル分離 Index分離(ベクターDB) 基盤モデル層 データ層 ● メリット ○ コスト効率/リソー ス効率の向上 ○ インフラと管理コ ストの削減 ● デメリット ○ テナントごとの設 定の難化 ○ 権限分離の複雑 化 ○ 統計情報への他 テナントの影響 ○ ノイジーネイバー の問題

Slide 37

Slide 37 text

© SaaS Engineering Meetup #SaaSEM 活用パターン RAGのテナント分離パターン - ブリッジイメージ Tenant 2 Tenant 1 基盤モデル層 データ層 ● メリット ○ サイロとプール のいいこと取り ● デメリット ○ 開発コストの増 加

Slide 38

Slide 38 text

© SaaS Engineering Meetup #SaaSEM 活用パターン RAGのテナント分離パターン - ハイブリッド Tenant 2 Tenant 1 アプリ (ルーティング ) Tenant ID Model ID DB ID 1 1 1 2 2 1 3 1 2 +ティアとの紐づきなど

Slide 39

Slide 39 text

© SaaS Engineering Meetup #SaaSEM 活用パターン ファインチューニングのテナント分離パターン - ブリッジイメージ Tenant 2 Tenant 1 汎用 基盤モデル層 テナントデータ 学習済み 基盤モデル層

Slide 40

Slide 40 text

© SaaS Engineering Meetup #SaaSEM SaaS全体の分離モデル AWSアカウントレベルの分離パターン - アプリはプール Tenant 1 Tenant 2 テナントデータ 学習済み基盤モデル テナントデータ 学習済み基盤モデル 汎用基盤モデル Shared DB アプリ プロバイダAWSアカウント 顧客AWSアカウント 顧客AWSアカウント

Slide 41

Slide 41 text

© SaaS Engineering Meetup #SaaSEM SaaS全体の分離モデル AWSアカウントレベルの分離パターン - ほぼほぼサイロ Tenant 1 Tenant 2 SaaS provider アプリ アプリ モニタリ ング Dev Ops 顧客AWSアカウント 顧客AWSアカウント プロバイダ

Slide 42

Slide 42 text

© SaaS Engineering Meetup #SaaSEM まとめ 自社の戦略にあったモデルをしっかり考えて選択しましょう ● 生成AIの場合は特にテナント分離を DBやモ デル単位でしていくことでテナントごとの チューニングが可能になり、価値を向上しや すくなる傾向にあるものの、サイロになって いくことで運用負荷は上がっていくことが容 易に想像できる ● ティアとセットでモデルを選択することで上 位の顧客に関してのみテナントごとの最適 化を行うなど意志を持って設計することが重 要 ● 感想:生成AIは提供者側はとても大変

Slide 43

Slide 43 text

© SaaS Engineering Meetup クロージング

Slide 44

Slide 44 text

© SaaS Engineering Meetup #SaaSEM ● 退出時に展開されるアンケートにご協力お願いいたします>< ● 今後について ○ 第8回 SaaS × DB:テナント分離パターン(12/17) ○ 第9回 AWS re:Invent 2024 SaaS特化 re:Cap(1/23) ○ 第10回以降 "Building Multi-Tenant SaaS Architectures"の章ごと解説シリーズ (2月以降) ● ついでに宣伝 ○ アーキテクチャConference 2024 - Findy Tools(11/26) ■ 登壇します! ■ 「ビジネスの成長を加速するB2B SaaSのスケーリングアーキテクチャ」という タイトルです! クロージング 今後も活動を進めていきますのでフィードバックいただけると幸いです