◦ Balances the distribution of region leaders データの偏りを調整 balance-region-scheduler ◦ Balances the distribution of region peers 高負荷なデータを調整 hot-region-scheduler ◦ Balances the distribution of hot regions アップグレード時にデータを退避 evict-leader-scheduler ◦ Evicts all leaders of a node (often used for rolling upgrades) TiDB TiDB TiKV Cluster (Storage) Meta data TiKV TiKV TiKV MySQL プロトコル TiKV TiDB TSO/Data location TiDB Cluster TiDB ... ... P D P D P D PD Cluster TiKV TiKV TiDB 今まで手動でやっていた事を自動化 PDが司令塔として活躍 TiDBで何を解決するのか For Game
tikv split.qps-threshold=3000 ※例) qps3000で分割(デフォルト) ID item price 1 apple 10 2 orange 9 Table A Table A ID item price 2 orange 9 3,000QPSを超えたら、 データ分割を行い リバランスを実施し性能担保 Table A ID item price 1 apple 10 Region (32MB程度のサイズ) RegionA RegionB 仮にこのデータに4,000QPSが来たと想定 ※ ID1に2,000QPS, ID2に2,000QPS想定 分割したRegionで 2,000QPSになり閾値以下に!!
- D Key Space Node A Region 1* Region 2 Node B Region 3 Region 2* Node C Region 3* Region 2 Resion1の バックアップ Resion2の バックアップ Resion2の バックアップ Resion3の バックアップ - レプリカ数の変更 最大冗長数を変更 max-replicas=5 ※設定数はお客様次第で データセンターA データセンターB データセンターC データセンターC データセンターD Node C Node C Resion1の バックアップ Resion1の バックアップ Region 2 Resion2の バックアップ Region 3 Resion3の バックアップ Resion3の バックアップ Region 2 Resion2の バックアップ コピー数を増やす事で稼働率の向上アップへ Resion1の バックアップ