2.3K Views
June 22, 24
スライド概要
関⻄DB勉強会 第14回 TiDB全部⼊り! NewSQL & HTAPから 最近のVector Searchまで PingCAP株式会社 Developer Advocate 関⼝ 匡稔
アジェンダ ● TiDBの概要 ● アーキテクチャ ● TiDB Cloud紹介 ● 最新状況
関⼝匡稔 @bohnen PingCAP株式会社 Developer Advocate Solution Architect
TiDBの概要
TiDBとは? 数百TB、100万QPS以上をさ く TiDBはグローバルで3000社以上で採⽤ MySQL互換 分散データベース! ● MySQL互換 ● スクラッチでオープンソース (Apache 2.0) ○ Go(TiDB, PD), Rust (TiKV), C++ (TiFlash) ● オンプレミスにも、クラウドにも対応 ● 本番運用可能な運用ツール・ダッシュボード OSSの中でもトップクラスの⾼評価、信頼性
TiDBの思想 ー SQL at Scale ● TiDBは元々スケーラビリティの問題を解決するために⽣まれた 「数か⽉ごとに管理するMySQLクラスタを倍にすることが求め られるようなビジネスをサポートする技術がなかった」 - Ed Huang, PingCAP Founder and CTO ● 現在では更に、分析やマルチテナンシー、AIといったものをサポー トする必要性に迫られているが、スケーラビリティがなければすべ てが台無しになってしまう。
NewSQL + HTAP Design Goals AZ AZ AZ LB SQL ● MySQL互換 ● 運用 容易さ TiDB TiDB TiDB TiKV TiKV TiKV ● 水平スケール ● 強い一貫性 KVS ● 高い可用性と信頼性
HTAP: OLTP + OLAP BI DB APPサーバ ETL DWH レプ リカ ポータル OLTP OLAP 行指向 列指向 データ 同期 ⼀つのデータベースシステムに OLTP⽤(TiKV)とOLAP⽤ (TiFlash)の⼆つのストレージエ ンジンを持つ ⼀つのシステムで両⽅のユース ケースに対応でき、リアルタイ ム分析に寄与。データパイプラ インもシンプルに。
デモ: HTAPによる分析クエリの速度向上
様々なプラットフォームで 実行をサポート パターン パターン パターン 1 2 3 Instance Kubernetes Cloud TiUP TiDB Operator TiDB Cloud TiDBのセットアップから運⽤まで ※ローカルでも使える K8sでのセットアップ‧運⽤ フルマネージドDBaaS ServerlessとDedicatedがある
デモ: TiUP Playground
TiDB Architecture
TiDBのアーキテクチャ 分散データベースとしての 機能はほぼTiKV + PDが 担っている。 分散KVS + ステートレスな SQL/KV API変換フロントエ ンド というイメージ
TiDBのアーキテクチャ詳細 分散KVS、Raft、Multi-Raft、分散トランザク ション、メタデータとTSO、HTAP、MySQL互換 レイヤー 時間の都合で割愛!! ゆるして
TiDB Cloud 紹介
TiDB Cloudのラインナップ Serverless(共有型) Dedicated(占有型) TiDB Serverless はマルチテナント マネージドTiDBサービスです。 サーバ構成などを気にせず⼿軽に利 ⽤できます。 TiDB Dedicated はお客様専⽤のマ ネージドTiDBサービスです。 基幹システムなどに要求される⾼い ⾮機能要件を満たします。 ● 最低課⾦なしの完全従量課⾦ ● 透明性の⾼いノード単位課⾦ ● TiFlash(HTAP)も利⽤可能 ● ⾼い耐障害性、カスタマイズ性 ● ⾼速起動、ブランチ、Data Service ● 移⾏ツールやCDCなどもオンデマン Vector Searchといった先進機能 ドで利⽤可能
Agileな機能開発 ● ● ● ● ● ● ● ● ● Data Service (SQLをAPIとして公開) Private Link対応 Branching Serverless Driver Vercel連携 (Preview機能にも対応) OIDC/SAML SSO 完全Private Linkのみ Data Serviceの独⾃ドメイン Vector Search ユーザーニーズを取り込み、2週間サイクルで リリースするアジャイル開発!
TiDB Serverless - Serverless DB on AWS TiDB 基本的な アーキテクチャ 踏襲 それぞれ コンポーネントを マイクロサービス化し 動的に割り当てる またTiKV RocksDB部分に S3を活用 https://aws.amazon.com/jp/blogs/storage/how-pingcap-transformed-tidb-int o-a-serverless-dbaas-using-amazon-s3-and-amazon-ebs/
TiDB Serverless: Ease of Use クラスタの起動 10秒くらい MySQLクライアントから の接続 よく利⽤されるクライアン トからの接続⽂字列を提供
オートスケール 20分で100万qps レベルまで スケールアウト その後15分程度 0 qpsまでスケー ルイン
HTAP Serverless DBのユースケース 波 あるワークロード Scalable B2Cビジネス
Demo: OSS Insight TiDB ServerlessにGithub 60億超レ コードをリアルタイムに取り込み、 Webページからクエリを発⾏、分析 を可能としているサイト。 Githubのリアルタイムイベントを 取り込むOLTPを実⾏しながら、各 種ダッシュボードなどのOLAPタス クを同時に実⾏するインターネット https://ossinsight.io/ 情報サイトのデモ
Demo: Chat2Query & DataAPI & GPTs DB活⽤をもっと⼿軽に ● クエリ作成 ● API作成 ● LLM連携
最新情報
分散環境を活かして - DXF TiDB TiDB TiDB リソースマネージャー・スケジューラー Executor TiDBでは元々DDLは⾮同期 ジョブとして実⾏されていた TiDB側に汎⽤的な分散タスク 実⾏機構を作成 TiKV TiKV ジョブキュー TiKV DDLやImportなどの分散実⾏ 可能なタスクの⾼速化を図る
Vector Search: LLM Frameworkの対応 Chat2Query ⽣成AIによるクエリ Data Service ⽣成AIのための API⽣成 Vector Search RAG + RDBMS Langchain + llamaIndex
Amazon Bedrock ✖ TiDBによるチャットアプリ例 https://www.youtube.com/watch?v=DKOjqZbicwU
ローコードLLM開発: Dify https://dify.ai/
Dify x TiDB Serverless v0.6.11にて対応 ワークフロー ベクタース トアとして使える ( ず) TiDB User Group #2 で Difyさん スピーチもあります! https://tiug.connpass.com/event/319016/
是非使ってみてください ● TiDBクラウド サーバレスチュートリアル https://pingcap-japan.storylane.io/share/aq4z webfgzhv ● PingCAP Education https://pingcap.co.jp/education/
THANK YOU.