searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

天翼云ClickHouse支持多Zookeeper

2025-09-19 03:12:12
3
0

背景:

用户集群DDL、DML操作较多情况下,Zookeeper 会成为整个ClickHouse集群的瓶颈,虽然扩容Zookeeper节点能起到一定缓解作用,但是在业务量继续上升之后,扩容Zookeeper效果不佳。此时,多套Zookeeper集群会成为解决ClickHouse业务紧张的最佳选择。天翼云ClickHouse产品支持多Zookeeper方案,用户可以根据集群负载情况选择添加多套Zookeeper 集群,从而缓解集群负载。

注意事项:

  1. 多 Zookeeper 方案只能应用于高可用集群
  2. 最多可以支持5套额外的 Zookeeper 集群。
  3. 同一个集群内所有的 Zookeeper 节点规格保持一致,规格变配后也会保持同一规格。
  4. 多 Zookeeper 使用只是在创建表的时候有区别,其他按照数仓常规操作即可。

具体操作步骤:在集群详情-》配置信息里头,可以点击“升级多ZK”按钮,确定后就能自动创建额外的Zookeeper集群;

多Zookeeper升级完成后,可以在 实例详情-》节点信息-〉协调节点 查看扩出来的zookeeper 集群信息

可以在 参数配置-》metrika.xml 里头查询具体的zookeeper配置信息

创建完多Zookeeper之后,具体如何使用额外的Zookeeper集群呢,方法如下:

1、创建数据库

CREATE DATABASE IF NOT EXISTS testdb ON CLUSTER default_cluster;

2、创建连接默认Zookeeper的表

CREATE TABLE IF NOT EXISTS testdb.sample on cluster default_cluster (id UInt64) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/testdb/sample', '{replica}') ORDER BY id;

3、创建连接额外Zookeeper的表
根据metrika.xml 里头查询到的额外zookeeper集群名称:zookeeper2,建表时在zookeeper路径前把名称加上:

CREATE TABLE IF NOT EXISTS testdb.sample2 on cluster default_cluster (id UInt64) ENGINE = ReplicatedMergeTree('zookeeper2:/clickhouse/tables/{shard}/testdb/sample2', '{replica}') ORDER BY id;
0条评论
0 / 1000
杨****涛
4文章数
0粉丝数
杨****涛
4 文章 | 0 粉丝
原创

天翼云ClickHouse支持多Zookeeper

2025-09-19 03:12:12
3
0

背景:

用户集群DDL、DML操作较多情况下,Zookeeper 会成为整个ClickHouse集群的瓶颈,虽然扩容Zookeeper节点能起到一定缓解作用,但是在业务量继续上升之后,扩容Zookeeper效果不佳。此时,多套Zookeeper集群会成为解决ClickHouse业务紧张的最佳选择。天翼云ClickHouse产品支持多Zookeeper方案,用户可以根据集群负载情况选择添加多套Zookeeper 集群,从而缓解集群负载。

注意事项:

  1. 多 Zookeeper 方案只能应用于高可用集群
  2. 最多可以支持5套额外的 Zookeeper 集群。
  3. 同一个集群内所有的 Zookeeper 节点规格保持一致,规格变配后也会保持同一规格。
  4. 多 Zookeeper 使用只是在创建表的时候有区别,其他按照数仓常规操作即可。

具体操作步骤:在集群详情-》配置信息里头,可以点击“升级多ZK”按钮,确定后就能自动创建额外的Zookeeper集群;

多Zookeeper升级完成后,可以在 实例详情-》节点信息-〉协调节点 查看扩出来的zookeeper 集群信息

可以在 参数配置-》metrika.xml 里头查询具体的zookeeper配置信息

创建完多Zookeeper之后,具体如何使用额外的Zookeeper集群呢,方法如下:

1、创建数据库

CREATE DATABASE IF NOT EXISTS testdb ON CLUSTER default_cluster;

2、创建连接默认Zookeeper的表

CREATE TABLE IF NOT EXISTS testdb.sample on cluster default_cluster (id UInt64) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/testdb/sample', '{replica}') ORDER BY id;

3、创建连接额外Zookeeper的表
根据metrika.xml 里头查询到的额外zookeeper集群名称:zookeeper2,建表时在zookeeper路径前把名称加上:

CREATE TABLE IF NOT EXISTS testdb.sample2 on cluster default_cluster (id UInt64) ENGINE = ReplicatedMergeTree('zookeeper2:/clickhouse/tables/{shard}/testdb/sample2', '{replica}') ORDER BY id;
文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0