Slide 1

Slide 1 text

TiDBとChatGPTを使えば アプリはもっとシンプル化できる PingCAP株式会社 Japan CTO 林正記(Hayashi Masaki) 


Slide 2

Slide 2 text

PingCAPの自己紹介
 - NewSQLデータベース TiDBを継続的に開発
 - 2015年設立後、TiDBを開発し毎年メジャーアップデートを実施
 - CNCFに寄贈し、現在Graduatedステータス
 - フルマネージド型DBサービス「TiDB Cloud」の展開も強化中
 
 - ワールドワイドでビジネス展開
 - 2021年4月に日本支社設立
 - MySQL開発MgrのSanny Bains等も入社
 - 元日本マイクロソフト社長 平野拓也がアドバイザーとして参画
 Sunny Bains
 ex. InnoDB R&D Mgr 
 平野 拓也氏
 ex. 日本マイクロソフト社長 


Slide 3

Slide 3 text

OSSの活発度が知りたい?OSS insight!
 GitHub上のイベント情報をうまく使えばグラフィカルに表示すればプロジェクトを理解できる https://ossinsight.io GitHubデータ ・アーカイブデータ - GHarchive(1時間ごとに更新) - 46億レコード(現在は50億レコード) ・リアルタイムデータ - GitHubイベントAPI - 平均30万レコード/時間

Slide 4

Slide 4 text

OSS insightの検討事項
 1.現在の状況に対するグラフ化 - 大量のデータ - (リアルタイムデータに対して)集計含め様々な種類のクエリが来る 2.カスタマイズ   標準UIで用意していない可視化対応

Slide 5

Slide 5 text

OSS insightの検討事項
 1.現在の状況に対するグラフ化 - 大量のデータ - (リアルタイムデータに対して)集計含め様々な種類のクエリが来る 2.カスタマイズ   標準UIで用意していない可視化対応

Slide 6

Slide 6 text

データストアの選択
 1つのDBで全てをかなえることは難しい RDB (OLTP) RDB (OLAP) NoSQL Hadoop +色々 ①スケーラビリティ △ △ 〇 〇 ②複雑な分析クエリ △ 〇 x 〇~△ ③更新がまあまあある 〇 △ 〇 〇~△

Slide 7

Slide 7 text

現実解?の構築は結構難しい
 更新用にRDBをシャーディングして、ETLパイプラインを構築し、DWHに同期 シャーディングして スケーラビリティ担保 Kafka経由でデータを流し て、分析クエリに対応 よく使うクエリは クエリキャッシュ 勉強することいっぱい…

Slide 8

Slide 8 text

シンプル化できる?
 更新用にRDBをシャーディングして、ETLパイプラインを構築し、DWHに同期 ①NewSQLでシャーディング不要に - Spanner - TiDB - CockroachDB - YugabyteDB ②HTAPでOLTP,OLAPを1つのDBで実現 - AlloyDB - SingleStore - TiDB - Snowflake

Slide 9

Slide 9 text

①NewSQLでシャーディング不要に
 RDB (ex. MySQL) NoSQL (ex. Cassandra) New SQL (ex. TiDB) CAPの考え方 CA AP CP+HA クエリ SQL API, SQL(CQL) SQL  - トランザクション 〇 X 〇  - JOIN 〇 X 〇 Readスケーラビリティ 〇 リードレプリカ テーブル再設計 ◎ 分散アーキテクチャ ◎ 分散アーキテクチャ テーブル再設計不要 Writeスケーラビリティ △ Writerは単一ボトルネック (要シャーディング) ◎ 分散アーキテクチャ ◎ 分散アーキテクチャ (大きい1テーブル対応可) - NewSQL = 分散アーキテクチャによるスケーラビリティ+ACIDトランザクション
  ⇒シャーディングに頼らないRDB+スケーラビリティの直接的回答
 - 有名プロトコルを互換しているので、RDBのスキルセットを活かせる


Slide 10

Slide 10 text

シンプル化できる?
 更新用にRDBをシャーディングして、ETLパイプラインを構築し、DWHに同期 ①NewSQLでシャーディング不要に - Spanner - TiDB - CockroachDB - YugabyteDB ②HTAPでOLTP,OLAPを1つのDBで実現 - AlloyDB - SingleStore - TiDB - Snowflake

Slide 11

Slide 11 text

②HTAPでOLTP,OLAPを1つのDBで実現
 HTAP = OLTP + リアルタイムOLAP分析を1つの基盤で HTAP的なメッセージがマーケットでも増えてきた

Slide 12

Slide 12 text

②HTAPでOLTP,OLAPを1つのDBで実現
 HTAPの実装は、メモリ型・ストア型色々ある TiDB AlloyDB プロトコル MySQL PostgreSQL Scalability Read, Write (NewSQL) Read マルチクラウド AWS, GCP(, On-Premise) GCP HTAP実装 ストア (TiFlashにより大容量のカラム化が可能) メモリ内 MPP ◎ - データ容量が増えるほどストア型が有利 (+ MPPも重要)

Slide 13

Slide 13 text

シンプル化できる?(再掲)
 更新用にRDBをシャーディングして、ETLパイプラインを構築し、DWHに同期 ①NewSQLでシャーディング不要に - Spanner - TiDB - cockroachDB - YugabyteDB ②HTAPでOLTP,OLAPを1つのDBで実現 - AlloyDB - SingleStore - TiDB - Snowflake RDB (OLTP) RDB (OLAP) NoSQL Hadoop +色々 NewSQL NewSQL &HTAP ①スケーラビリティ △ △ 〇 〇 〇 〇 ②複雑な分析クエリ △ 〇 x 〇~△ △ 〇 ③更新がまあまあある 〇 △ 〇 〇~△ 〇 〇

Slide 14

Slide 14 text

2つを満たしてくれたTiDB
 NewSQL TiDBは、更新・参照業務と分析業務を1アーキテクチャで実現。 TiDBは通常のDBと異なり、2つのエンジンを搭載し、あらゆる業務を1つのプラットフォームで実施可能。 また、全てのコンポーネントがリニアにオンラインスケールアウト /インが可能 アプリケーション TiKV TiKV TiKV TiKV TiFlash TiFlash TiFlash TiFlash 更新・参照用ストレージエンジン … TiKV TiKV TiKV TiKV TiFlash TiFlash PD PD PD TiFlash TiFlash 更新、参照 分析用ストレージエンジン データ同期 分析処理 … 全体管理 TiDB TiDB … TiDB ・更新処理か分析処理かを TiDBで自動判別 ・適切なエンジンで処理を実施 クエリ処理コンポーネント Row-Base Store Column-Base Store

Slide 15

Slide 15 text

TiDB???

Slide 16

Slide 16 text

フルマネージド(TiDB Cloud)を活用
 ソフトウェアの運用ナレッジは不要。 更にMySQLのスキルセットを活かせるのがうれしい - お客様専用のVPC、Compute 
 - デフォルトでマルチAZ構成 
 - 障害・メンテナンス対応は全てPingCAPが実 施
 - VPC Peering, Private Link, Public IP経由で 接続
 - 専用WebコンソールやAPIで操作 


Slide 17

Slide 17 text

TiDB Cloud 無償トライアル https://tidbcloud.com/signup Serverless TierではTiDB Cloudを現在無償でご利用頂けます。

Slide 18

Slide 18 text

NewSQLデモ:スケールアウト(&MySQL互換)
 NewSQL TiDBは、更新・参照業務と分析業務を1アーキテクチャで実現。 TiDBは通常のDBと異なり、2つのエンジンを搭載し、あらゆる業務を1つのプラットフォームで実施可能。 また、全てのコンポーネントがリニアにオンラインスケールアウト /インが可能 アプリケーション TiKV TiKV TiKV TiKV TiFlash TiFlash TiFlash TiFlash 更新・参照用ストレージエンジン … TiKV TiKV TiKV TiKV TiFlash TiFlash PD PD PD TiFlash TiFlash 更新、参照 分析用ストレージエンジン データ同期 分析処理 … 全体管理 TiDB TiDB … TiDB ・更新処理か分析処理かを TiDBで自動判別 ・適切なエンジンで処理を実施 クエリ処理コンポーネント Row-Base Store Column-Base Store

Slide 19

Slide 19 text

HTAPデモ:クエリの実行計画を見てみる


Slide 20

Slide 20 text

アーキテクチャはこうなった(Before)
 更新用にRDBをシャーディングして、ETLパイプラインを構築し、DWHに同期 シャーディングして スケーラビリティ担保 Kafka経由でデータを流し て、分析クエリに対応 よく使うクエリは クエリキャッシュ

Slide 21

Slide 21 text

アーキテクチャはこうなった(After)
 全てTiDBに任せる OLTP, OLAPは 全てTiDBで処理

Slide 22

Slide 22 text

OSS insightの検討事項
 1.現在の状況に対するグラフ化 - 大量のデータ - (リアルタイムデータに対して)集計含め様々な種類のクエリが来る 2.カスタマイズ   標準UIで用意していない可視化対応

Slide 23

Slide 23 text

AIを活用したクエリ生成機能
 TiDBにChatGPTを統合し、クエリ生成機能(Chat2Query)を実現 データ活用の民主化を加速 - 自然言語を入れるだけで、非エンジニアでも有効なクエリを作成可能 
 - 複雑なクエリでもTiDBなら高速に処理 


Slide 24

Slide 24 text

クエリ生成デモ:クエリ生成を体感する
 実際のデータからクエリが作成されることを確認する

Slide 25

Slide 25 text

まとめ ・TiDB (NewSQL & HTAP)が持つ1システムでの多機能化によって、今まで複数のシステ ムを活用して実現していたサービスも1つのDBでできるようになり、全体の運用コスト(+ 学習コスト)も抑えられる
 
 ・もう大容量・高性能・分析みたいな要件は怖くない。
 
 ・AIによるクエリ生成機能を使えば、ユーザーのカスタマイズ性を上げるサービスを作れ る


Slide 26

Slide 26 text

アンケートご協力へのお願い Developers Summit 2023 PingCAP/TiDBのロゴ入り ノベルティを抽選で 100名様にプレゼント! 回答期限は2/10(金)17:00まで。 サーモステンレスマグ 380ml テキスタイルモバイル アクセサリーケース(L) Tシャツ #devsumi2023TiDB

Slide 27

Slide 27 text

Thank You! https://www.pingcap.com/ [email protected]