質問
回答
clickhouse-keeper を使用しています。私たちは、Java ベースの ZooKeeper 実装への依存をなくすために Keeper を設計・開発しました。ClickHouse Keeper は、ZooKeeper のよく知られた多くの欠点を解消し、さらに次のような改善も加えています。
- より優れた圧縮により、スナップショットとログのディスク使用量を大幅に削減できる
- デフォルトのパケットサイズやノードデータサイズに制限がない (ZooKeeper では 1 MB)
zxidのオーバーフロー問題がない (ZooKeeper では 20 億トランザクションごとに再起動が必要)- より優れた分散コンセンサスプロトコルを採用しているため、ネットワーク分断後の復旧が速い
- 同じデータ量でも使用メモリが少ない
- セットアップが容易で、JVM のヒープサイズやカスタムのガベージコレクション実装を指定する必要がない
- プロトコル内のいくつかのカスタムコマンドにより、
ReplicatedMergeTreeテーブルでの操作を高速化できる - Jepsen テストのカバレッジがより広い
clickhouse-keeper を使用している環境で、クラスターの問題が大幅に減少していることを確認しています。
ClickHouse Keeper の設定方法と実行方法の詳細については、Keeper ドキュメントページ を参照してください。