跳到主要内容
跳到主要内容

引言

这些部署示例基于 ClickHouse 支持与服务组织向 ClickHouse 用户提供的建议。这些是可用的示例,我们建议您尝试它们并根据需要进行调整。您可能会在这里找到完全符合您要求的示例。或者,如果您有要求需要将数据复制三次而不是两次,您应该能够按照这里呈现的模式添加另一个副本。

术语

副本

数据的副本。ClickHouse始终至少有一个数据副本,因此副本的最小数量为1。这是一个重要细节,您可能不习惯将数据的原始副本视为副本,但这是ClickHouse代码和文档中使用的术语。添加数据的第二个副本可以提供故障容错能力。

分片

数据的子集。ClickHouse始终至少为您的数据提供一个分片,因此如果您不将数据拆分到多个服务器上,您的数据将存储在一个分片中。在多个服务器上对数据进行分片可以在超出单个服务器的容量时分担负载。目标服务器由分片键确定,并在创建分布式表时定义。分片键可以是随机的,也可以是哈希函数的输出。涉及分片的部署示例将使用 rand() 作为分片键,并提供有关何时以及如何选择不同分片键的进一步信息。

分布式协调

ClickHouse Keeper提供数据复制和分布式DDL查询执行的协调系统。ClickHouse Keeper与Apache ZooKeeper兼容。

示例

基本

  • 扩展 示例展示了如何将您的数据分片到两个节点,并使用分布式表。这使得数据存储在两个 ClickHouse 节点上。这两个 ClickHouse 节点还运行 ClickHouse Keeper 提供分布式同步。第三个节点独立运行 ClickHouse Keeper,以完成 ClickHouse Keeper 的法定人数。

  • 故障容错的复制 示例展示了如何在两个节点之间复制您的数据,并使用 ReplicatedMergeTree 表。这同样使得数据存储在两个 ClickHouse 节点上。除了这两个 ClickHouse 服务器节点外,还有三个独立的 ClickHouse Keeper 节点来管理复制。

中级

  • 敬请期待

高级

  • 敬请期待