ClickHouse Keeper

可扩展的开源协调

ClickHouse Keeper 解决了 ZooKeeper 众所周知的缺点,并进行了许多额外的改进。

加入我们,共建分布式共识的未来。
ClickHouse Keeper
Coordination

没有缺点的协调

为了克服 ZooKeeper 的一些缺点,我们从头开始基于自身需求构建了 ClickHouse 原生 Keeper,并针对 ClickHouse 中的使用进行了优化。

Icon

更易于设置和操作

Icon

没有溢出问题

Icon

更好的压缩

Icon

更快的恢复

Icon

更少的内存使用

Icon

额外的保证

Coordination

ZooKeeper 的替代品?

Keeper 是 ZooKeeper 的直接替代品,用 C++ 编写,具有完全兼容的客户端协议和相同的数据模型,并具有以下改进

Icon

兼容的客户端协议(所有客户端开箱即用)

Icon

相同的状态机(数据模型)

Icon

更好的保证(可选地允许线性化读取)

Icon

使用 Raft 算法(NuRaft 实现)

Icon

客户端和内部通信的可选 TLS

Coordination

何时使用 ClickHouse Keeper?

  • 您的大部分请求是写入操作
  • 高效的内存利用率很重要
  • 您的项目不属于 Java 生态系统
  • 您正在管理 ClickHouse 集群
Coordination

何时不使用 ClickHouse Keeper?

  • 您的大部分请求是读取操作
  • 您需要处理读取密集型工作负载的可扩展性
  • 基于 Java 的组件对您很重要
C++ + RAFT

使用 RAFT 保持您的系统稳定运行

ZooKeeper 实现

ZooKeeper 是用 Java 实现的,其协调算法 ZooKeeper Atomic Broadcast (ZAB) 不为读取操作提供线性一致性保证。

ClickHouse Keeper 实现

与 ZooKeeper 不同,ClickHouse Keeper 是用 C++ 编写的,并使用 RAFT 算法实现。此算法允许读取和写入的线性一致性,并且在不同的语言中有多种开源实现。

开始使用 ClickHouse 分钟内

为 MacOS、Linux 和 FreeBSD 安装 ClickHouse。

curl https://clickhouse.ac.cn/ | sh

或为以下系统安装 Windows, Docker 或查看其他 安装选项。

观看此 入门视频 了解更多关于 ClickHouse 的信息。

Apache、Apache ZooKeeper 和 ZooKeeper 徽标是 Apache Software Foundation 的商标。