Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ゆるSRE勉強会 #6 LT
Search
Kaoru
June 06, 2024
Technology
0
460
ゆるSRE勉強会 #6 LT
Kaoru
June 06, 2024
Tweet
Share
More Decks by Kaoru
See All by Kaoru
ゆるSRE #11 LT
okaru
1
820
AI Engineering Summit Pre Event LT #10
okaru
2
690
AIエージェント実践集中コース LT
okaru
1
240
技術選定を突き詰める 懇親会LT
okaru
2
1.4k
Amazon S3 Tables + Amazon Athena / Apache Iceberg
okaru
2
390
JAWS-UG SRE支部 #11 LT EKS Auto Mode をやりたい
okaru
0
31
今年の一番の機能追加って何だろう?
okaru
0
130
宇宙最速のランチRecap LT会 (AWS re:Invent 2024)
okaru
2
200
TiDBを入れたけれど オートスケールがなかったよ
okaru
0
45
Other Decks in Technology
See All in Technology
Wantedlyの開発組織における生成AIの浸透プロジェクトについて
kotominaga
2
130
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
エンジニアリングマネージャーの成長の道筋とキャリア / Developers Summit 2025 KANSAI
daiksy
3
1.3k
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
270
20250913_JAWS_sysad_kobe
takuyay0ne
2
260
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
200
slog.Handlerのよくある実装ミス
sakiengineer
4
490
Android Audio: Beyond Winning On It
atsushieno
0
4.8k
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
170
LLM時代のパフォーマンスチューニング:MongoDB運用で試したコンテキスト活用の工夫
ishikawa_pro
0
180
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
340
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
480
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Six Lessons from altMBA
skipperchong
28
4k
Become a Pro
speakerdeck
PRO
29
5.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Designing Experiences People Love
moore
142
24k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
LT ゆるSRE勉強会 #6 〜TiDB に移行してみたが、実際どうなん?〜 2024/6/6
©2024 Voicy, Inc. 自己紹介 名前:織田 薫(かおる) 会社:株式会社Voicy 職業:SRE 趣味:ゴスペル・ぺんぎん 特技:Ask
me
©2024 Voicy, Inc.
©2024 Voicy, Inc. 本日のお品書き 1. TiDBとは 2. AuroraからTiDBへの移行 3. Pros
& Cons まとめ
©2024 Voicy, Inc. 1. TiDBとは • PingCAP社が開発したオープンソースの NewSQLデータベース • MySQLとの互換性(5.7
/ 8.0 相当) • 水平方向への拡張性と高可用性 • ベクトル検索が最近実装された
©2024 Voicy, Inc. 1. TiDBとは • TiDBの主な特徴 ◦ MySQL互換性: 既存のMySQLアプリケーションやツールをそのま
ま利用可能 ◦ 水平スケーラビリティ: ノードを追加することで、データ容量と処理 能力を容易に拡張可能 ◦ 高可用性: データを複数のノードに分散し、障害発生時にもサー ビス継続が可能 ◦ HTAP (Hybrid Transactional and Analytical Processing): トランザ クション処理と分析処理を同じデータベース上で実行可能 ◦ クラウドネイティブ: Kubernetesなどのクラウド環境での運用に最 適化
©2024 Voicy, Inc. 1. TiDBとは • TiDBの仕組み
©2024 Voicy, Inc. 1. TiDBとは • TiDB ◦ SQLレイヤーを担当するステートレスなコンポーネ ント
◦ MySQL互換のプロトコルとSQL構文をサポートして おり、既存のMySQLアプリケーションやツールをそ のまま利用可能 ◦ クエリの実行計画を最適化し、TiKVやTiflashにクエ リを分散実行する ◦ トランザクション管理、ACID特性の保証も行う
©2024 Voicy, Inc. 1. TiDBとは • TiKV ◦ データの保存とレプリケーションを担当する分散 Key-Valueストア
◦ Raftコンセンサスアルゴリズムを用いてデータの整 合性を保証し、高可用性を実現 ◦ データは複数のノードに分散して保存され、任意の ノードで読み書きが可能 ◦ スケーラビリティが高く、ノードを追加することで容 易に容量を拡張可能
©2024 Voicy, Inc. 1. TiDBとは TiKV1 TiKV2 TiKV3 Store1 Store1
Store2 Store2 Store3 Store3 1a 1c 1d • TiKV
©2024 Voicy, Inc. 1. TiDBとは • TiFlash ◦ TiDBの拡張コンポーネントで、カラムナーストレー ジを採用した分析処理エンジン
◦ 大規模なデータセットに対する複雑な分析クエリを 高速に実行可能 ◦ TiKVと連携して動作し、リアルタイムの分析処理を 実現 ◦ TiDBと同じSQLインターフェースを使用するため、 分析クエリとトランザクション処理をシームレスに連 携可能
©2024 Voicy, Inc. 1. TiDBとは • PD(Placement Driver) ◦ TiDBクラスター全体の管理とスケジューリングを担
当するコンポーネント ◦ TiKVのデータ分散、レプリカ配置、負荷分散などを 自動的に行う ◦ TiDBクラスターの全体的な状態を監視し、障害発 生時には自動的にリカバリーを行う ◦ スケーラビリティが高く、TiDBクラスターの規模に応 じてPDノードを追加可能
©2024 Voicy, Inc. 2. AuroraからTiDBへの移行 • 一部のデータベースを移行 • 移行前に評価を1年近くかけて行った •
TiDB向けのクエリチューニングなどは、PingCAP 側でサポートしてくれた
©2024 Voicy, Inc. 2. AuroraからTiDBへの移行 • 移行方法 Data Migration Changefeed
©2024 Voicy, Inc. 3. Pros & Cons • Pros ◦
スケール台数制限とかはない ◦ Writerが限定されない ◦ MySQL互換なので、ほぼそのまま動く ◦ AZ分散が自動的にされる ◦ 導入サポートは充実
©2024 Voicy, Inc. 3. Pros & Cons • Cons ◦
TiKVのスケールは3台1セット ◦ Auroraで問題ないクエリーがTiDBでは重かっ たりする ◦ TiDBが意外にメモリを喰う(クエリ次第) ◦ リソース制限には気をつけよう ◦ Explainの表示はかなり違う ◦ オートスケールほしい
©2024 Voicy, Inc. まとめ • NewSQLとは言われるが、MySQL互換ではある ので、特に違和感なく使用できる • Proxyやオートスケールなど、細かい点はAWSの 方が充実はしている
• 金融系などMCな環境でも採用されているので、 信頼性はある程度あると考えられる
©2024 Voicy, Inc. We’re hiring エンジニア募集してます! カジュアル面談しましょう
©2024 Voicy, Inc. ご清聴 ありがとうございました!