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
500
次の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.1k
#CloudNativeDB NewSQLへの誘い
tzkoba
4
3.1k
Cloud Native時代のデータベース
tzkoba
13
14k
2020年DBプラットフォーム (超個人的)5大ニュース
tzkoba
0
1.1k
PostgreSQLプラットフォームの徹底比較(コンテナからクラウドまで)
tzkoba
6
9.6k
Kubernetesでストレージ?そもそも何に使えるの?
tzkoba
0
1.1k
データ損失を回避しよう 各DBの機能比較
tzkoba
3
1.8k
昨今のデータデバイス(アーカイブ編)
tzkoba
3
1.5k
理解して拡げる分散システムの基礎知識
tzkoba
20
10k
Other Decks in Technology
See All in Technology
DFTの実践的基礎理論
pfn
PRO
2
100
WINTICKETアプリで実現した高可用性と高速リリースを支えるエコシステム / winticket-eco-system
cyberagentdevelopers
PRO
1
170
生成AI×マルチテナントSaaSな新規事業を立ち上げる上でテックリードとして気を使った点の紹介
lunastera
0
530
失敗しないOpenJDKの非互換調査
tabatad
0
230
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
2
300
チームを主語にしてみる / Making "Team" the Subject
ar_tama
2
180
「最高のチューニング」をしないために / hack@delta 24.10
fujiwara3
15
2.7k
EKS初心者が早めに知っておきたかったこと
cuorain
0
140
なんで、私がAWS Heroに!? 〜社外の広い世界に一歩踏み出そう〜
minorun365
PRO
1
540
SwiftSyntaxでUIKitとSwiftUIの使用率を完璧に計測できちゃう件について
ldf_tech
0
160
Tokyo dbt Meetup #10 dbt Cloudユーザー会 & パネルディスカッション
dbttokyo
1
180
Why and Why not of enabling swap in Kubernetes
hwchiu
0
470
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
GraphQLとの向き合い方2022年版
quramy
43
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.1k
Embracing the Ebb and Flow
colly
84
4.4k
Documentation Writing (for coders)
carmenintech
65
4.4k
What's in a price? How to price your products and services
michaelherold
243
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
504
140k
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
59k
How GitHub (no longer) Works
holman
311
140k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
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