ClickHouse ReplicatedMergeTrees配置问题

ClickHouse ReplicatedMergeTrees configuration problems

我在两台不同的机器上有两个 tables 运行 zookeeper 作为守护进程,其中一个有 myid 1,另一个有 myid 2.

table 在机器“1”上这样配置:

CREATE TABLE test(values)
ReplicatedMergeTree('/clickhouse/tables/01/test', '1', date, timestamp, 8192)

table 在机器“2”上这样配置:

CREATE TABLE test(values)
ReplicatedMergeTree('/clickhouse/tables/01/test', '2', date, timestamp, 8192)

“/clickhouse/tables/01/test”中的 01 可能是让我感到困惑的值...因为我使用它“{layer}-{shard}”...但是因为我没有 remote_servers 配置我假设我可以只使用任何值,这无关紧要,因为我不想要查询分布,只想要数据重复。

此外,table 似乎是彼此的 "aware",因为创建两个副本编号为“2”或“1”的 table 会导致出现这样的错误table 已经存在。

如果我想使用复制,是否需要默认配置 remote_server?我是否需要专门为我要复制的 tables 配置 zookeeper?你们有没有使用 clickhouse 设置数据复制的详细示例?

看来你做对了一切。 {layer}-{shard} 部分是可选的 - 它只是简化了在许多服务器上创建类似 table 的过程。配置复制的 table 的最低限度是 zookeeper 中所有副本通用的路径(按照惯例,此路径以 /clickhouse/tables/ 开头,但实际上任何唯一路径都可以)和唯一的标识符每个副本('1''2' 完全可以,但建议使用更具描述性的名称,以便您识别相应的主机)。

复制不需要配置 remote_servers,但需要 zookeeper。您可以为所有复制的 tables 使用单个 zookeeper 集群。