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
次のGraduated?Rook or TiKV
Search
tzkoba
February 13, 2020
Technology
2
530
次のGraduated?Rook or TiKV
2020/2/13の #cloudnativejp のLT用スライド、RookとTiKVの簡単な解説です。
tzkoba
February 13, 2020
Tweet
Share
More Decks by tzkoba
See All by tzkoba
The State of Distibuted Database In Japan
tzkoba
1
1.3k
#CloudNativeDB NewSQLへの誘い
tzkoba
4
3.2k
Cloud Native時代のデータベース
tzkoba
13
15k
2020年DBプラットフォーム (超個人的)5大ニュース
tzkoba
0
1.2k
PostgreSQLプラットフォームの徹底比較(コンテナからクラウドまで)
tzkoba
6
10k
Kubernetesでストレージ?そもそも何に使えるの?
tzkoba
0
1.2k
データ損失を回避しよう 各DBの機能比較
tzkoba
3
1.9k
昨今のデータデバイス(アーカイブ編)
tzkoba
3
1.6k
理解して拡げる分散システムの基礎知識
tzkoba
21
11k
Other Decks in Technology
See All in Technology
Go製のマイグレーションツールの git-schemalex の紹介と運用方法
shinnosuke_kishida
1
410
SpannerとAurora DSQLの同時実行制御の違いに想いを馳せる
masakikato5
0
570
年末調整プロダクトの内部品質改善活動について
kaomi_wombat
0
210
バクラクでのSystem Risk Records導入による変化と改善の取り組み/Changes and Improvement Initiatives Resulting from the Implementation of System Risk Records
taddy_919
0
220
チームの性質によって変わる ADR との向き合い方と、生成 AI 時代のこれから / How to deal with ADR depends on the characteristics of the team
mh4gf
4
340
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
140
「ラベルにとらわれない」エンジニアでいること/Be an engineer beyond labels
kaonavi
0
150
大規模プロジェクトにおける 品質管理の要点と実践 / 20250327 Suguru Ishii
shift_evolve
0
290
20250328_OpenAI製DeepResearchは既に一種のAGIだと思う話
doradora09
PRO
0
150
AWS CDK コントリビュート はじめの一歩
yendoooo
1
120
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
4.9k
Go の analysis パッケージで自作するリファクタリングツール
kworkdev
PRO
1
420
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Making Projects Easy
brettharned
116
6.1k
Agile that works and the tools we love
rasmusluckow
328
21k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Writing Fast Ruby
sferik
628
61k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
51
2.4k
GraphQLとの向き合い方2022年版
quramy
45
14k
Optimising Largest Contentful Paint
csswizardry
35
3.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
GitHub's CSS Performance
jonrohan
1030
460k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
It's Worth the Effort
3n
184
28k
Transcript
@tzkb 次のGraduated? Rook or TiKV Cloud Native Meetup Tokyo #12
, 2020/2/13
2 最近やっていること • Cloud Native Days Tokyo 2019 “Cloud Native
Storageが拓く Database on Kubernetesの未来” • July Tech Festa 2019 “Cloud Native 開発者のための Database with Kubernetes” + =∞
3 • そもそもGraduatedの要件は? • Rookとは? • TiKVとは? 話すこと
4 そもそも、Graduatedの要件は?
5 今、Graduated待ち(Incubating)なプロジェクト達
6 Graduatedの基準は色々あるけれど Name contributors stars Code_of_conduct.md ADOPTERS.md Governance.md Kubernetes 2,441
63k 〇 - - Prometheus 441 29k 〇 - - Envoy 456 12.2k 〇 - 〇 CoreDNS 201 5.6k 〇 〇 〇 Containerd 220 5.2k 〇 〇 - Fluentd 187 8.8k 〇 〇 〇 Jager 128 10.2k 〇 〇 〇 Vitess 203 9.5k 〇 〇 〇 TUF - - - Rook 233 6.8k 〇 〇 〇 TiKV 215 6.8k 〇 • CNCFのCode of Conductを遵守し、セキュリティ監査に合格。 • コミュニティの統治構造が定義されている、などなど。
7 Rookとは?
8 Rook: Storage Orchestration For Kubernetes • 今日は説明しません。 • 詳しく知りたい方は、Japan
Rook Meetupで!
9 と思ったら、LTは10分だった!! から、もう少しだけRook • マルチなストレージ・プロバイダに対応した、データストア・ オペレーター。 Storage Provider 種別 ステータス
概要 Ceph ストレージ Stable 分散ストレージ (Block/File/Object) Cockroach DB DB Alpha OSS版Spannerを目指す分散DB Minio ストレージ Alpha 簡素なオブジェクトストレージ EdgeFS ストレージ Stable Gitに似たGeoスケールのFS Cassandra KVS Alpha NoSQLの代表格、分散KVS NFS FS Alpha 共有ファイルシステム Yugabyte DB DB Alpha PostgreSQL互換の分散DB
10 AWSと比べると良く分かるかも? Storage Provider AWSでは 説明 Ceph EBS/EFS/S3 • Unified
SDS Cockroach DB DynamoDB? Aurora? • 分散KVS上のRDB(postgres) Minio S3 • オブジェクトストレージ EdgeFS EBS/EFS/S3 • こちらもUnifiedなSDS Cassandra MCS • re;Invent2019で発表 NFS EFS • ファイルストレージ Yugabyte DB DynamoDB? Aurora? • 分散KVS上のRDB(postgres) • こうして見ると、Rookの競合はクラウドベンダーにも見える。
11 :Ceph(RBD)をdeployした際の構成例 • Rookは以下の3つのレイヤで構成される。 operator agent/discover agent/discover agent/discover osd osd
osd mon mon mon CSI csi-provisioner csi-rbdplugin csi-rbdplugin csi-rbdplugin Rook [Orchestration] • Storage Providerの管理 [Storage Provisioning] • CSIドライバが、Podとスト レージの接続を媒介 [Storage Provider] • Block/File/Objectストレージ やデータベースを構成
12 TiKVとは?
13 TiKV: Distrbuted Transactinal key value database • PingCAPが開発している分散KVS。TiDBのストレージになる。 •
Rustで開発(!)されている。 [Placement Driver] • クラスタのマネージャ。 • Auto-shardingで負荷や データ量を調整する。 [Region] • 複数ノードに跨るレプリカ 単位であり、単一のRaft Groupと同義。 • データストアにはRocksDB が使われている。
14 Single Raft GroupとMulti Raft Group Region2 Region1 Region2 Region1
Region2 Region1 Region3 Region3 Region3 • etcdなどは単一Raft グループで構成される 分散KVS。Leaderが ボトルネックとなるが、 2PC不要。 • TiKVなどはマルチRaft グループで、ボトル ネックをなくせるが、 複数グループに跨る更 新に2PCが必要。 • 分散KVSのレプリケーションにはRaftが使われている。 • 想定する規模によって、利用方法に違いがある。
15 Name 互換OSS 説明 TiDB MySQL MySQL互換のNew SQL (分散SQLデータベース) TiSpark
Spark Spark IFを提供 Titan Redis Redis IFを提供 TiFlash ‐ TiDBを拡張し、カラムナ・デー タストアを提供する。 TiPrometheus Prometheus Prometheusのストレージに TiKVを利用。まだ開始段階。 世界に広がる Ti ファミリー! • TiKVは分散データストアとしてプラットフォーム化している。
16 参考)TiKVを中心に目指す姿 ※2018年のFOSDEMでのPingCAP発表から
17 Questions? @tzkb @tzkoba