简介
这些部署示例基于 ClickHouse 支持和服务组织向 ClickHouse 用户提供的建议。这些是有效的示例,我们建议您尝试这些示例,然后根据您的需求进行调整。您可能在这里找到完全符合您的要求的示例。或者,如果您需要将数据复制三次而不是两次,您应该能够通过遵循此处提供的模式来添加另一个副本。
术语
副本
数据的副本。ClickHouse 始终至少拥有您数据的一个副本,因此副本的最小数量为一个。这是一个重要的细节,您可能不习惯将数据的原始副本算作副本,但这是 ClickHouse 代码和文档中使用的术语。添加您数据的第二个副本可以提供容错能力。
分片
数据的子集。ClickHouse 始终至少拥有您数据的一个分片,因此如果您不在多个服务器上拆分数据,您的数据将存储在一个分片中。如果您超过单个服务器的容量,可以在多个服务器上对数据进行分片,以分担负载。目标服务器由分片键决定,并在创建分布式表时定义。分片键可以是随机的,也可以是哈希函数的输出。涉及分片的部署示例将使用rand()
作为分片键,并将提供有关何时以及如何选择不同分片键的更多信息。
分布式协调
ClickHouse Keeper 为数据复制和分布式 DDL 查询执行提供协调系统。ClickHouse Keeper 与 Apache ZooKeeper 兼容。
示例
基本
横向扩展示例展示了如何在两个节点上对数据进行分片,并使用分布式表。这将导致在两个 ClickHouse 节点上拥有数据。这两个 ClickHouse 节点也运行 ClickHouse Keeper,提供分布式同步。第三个节点运行 ClickHouse Keeper 独立运行,以完成 ClickHouse Keeper 的仲裁。
容错复制示例展示了如何在两个节点上复制数据,并使用 ReplicatedMergeTree 表。这将导致在两个 ClickHouse 节点上拥有数据。除了两个 ClickHouse 服务器节点之外,还有三个 ClickHouse Keeper 独立节点来管理复制。
中级
- 即将推出
高级
- 即将推出