TiDBメイン構造
TiDB
はスケーリングと高い可用性の機能であり、深く理解欲しいなら、先ずはTiDB
のメイン構造勉強します。TiDB
クラスターは三かつメインコンポーネントである、TiDB Server
、PD Server
、TiKV Server
である。TiSpark
は、複雑なOLAP
のソリューションを目指した、TiDB Operator
は簡単にKubernetes
にデプロイできます。
TiDB Server
TiDB Server
はSQL
リクエストに受信します。TiDB Server
はSQL
を実行計画にインタプリタ後はPD Server
にデータ保管のTiKV Server
アドレス見つかった。TiDB Server
をTiKV Server
に通信データにアクセスして。TiDB Server
は持久的データではありません、自体はストレジの機能ではない、計算のみを担当、スケーリングできます。負荷分散コンポーネント(LVS
、HAProxy
、F5
)利用すれば、同じアドレスのことである。
PD Server
Placement Driver
(PD
)は、クラスター全体の管理者、主な機能は3つであり、1つはクラスターのメタデータを保管するのこと(Key
とTiKV
の対応)、二つはTiKV
クラスターのスケジューリングと負荷分散、そしてグローバルにユニークの増分のトランザクションのIDを管理配分する。
PD
はRaft
の分散コヒーレンスプロトコルを使用してデータのセキュリティを保証する。Raft
のリーダーサーバーを全ての操作を処理する、他のフォロワーサーバーは高可用性を保証するためにのみ使用されます。奇数のPD
サーバーを展開することをお勧めします。
TiKV Server
TiKV Server
はデータ実際の保管場所。外部向から、TiKV
は分散トランザクションを提供するにKey-Value
ストレージエンジンである。データを保存するための基本単位はリージョンであり、リージョンはレンジキー(StartKey
からEndKey
の左閉右開リージョン)のデータを保存する、1つのTiKV
に複数のリージョンがあります。TiKV
は、データの耐障害性を保証するために、Raft
プロトコルの一貫性のレプリケーションを行うことがである。レプリケーションはリージョンで管理され、複数の異なるノードはリージョンはお互いのコピーであるRaft
グループを形成します。複数のTiKV
間のデータのロードバランスはPD
によってスケジュールされ、これもリージョン単位でスケジュールされます。
TiSpark
TiSpark
は、ユーザーの複雑なOLAP
要件を解決するTiDB
の主要コンポーネントとして、TiDB
クラスターにSpark SQL
直接に実行にことはである。TiSpark
は分散TiKV
クラスターの利点を組み合わせ、ビッグデータエコシステムに統合します。TiSpark
を使用すると、TiDB
は1つのクラスターでOLTP
とOLAP
の両方のシナリオを対応できるため、ユーザーはデータ転送を心配する必要がありません。
TiDB Operator
TiDB Operator
は、主流のクラウドインフラストラクチャ(Kubernetes
)でTiDBクラスターを展開、管理、マルチクラスターハイブリッド、障害の自動修復できるようにします。