转载:clickhouse on cluster设置
在平常使用clickhouse中会有一些建表,删表等操作,但是对于整个集群来说每台服务器都需要建表。在ClickHouse集群中,我们可以在DDL语句上附加ON CLUSTER <cluster_name>
的语法,使得该DDL语句执行一次即可在集群中所有实例上都执行,简单方便。但是需要一些配置才行,如果不配置在使用这个语法的时候会报错:
Code: 139, e.displayText() = DB::Exception: There is no DistributedDDL configuration in server config (version 21.3.4.25 (official build))
在config.xml加上以下配置:
<distributed_ddl>
<!-- Path in ZooKeeper to queue with DDL queries -->
<path>/clickhouse/task_queue/ddl</path>
<cleanup_delay_period>60</cleanup_delay_period>
<task_max_lifetime>86400</task_max_lifetime>
<max_tasks_in_queue>1000</max_tasks_in_queue>
</distributed_ddl>
解释一下;
/clickhouse/task_queue/ddl
cleanup_delay_period
:检查DDL记录清理的间隔,单位为秒,默认60秒task_max_lifetime
:分布式DDL记录可以保留的最大时长,单位为秒,默认保留7天max_tasks_in_queue
:分布式DDL队列中可以保留的最大记录数,默认为1000条版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_21383435/article/details/121713908
内容来源于网络,如有侵权,请联系作者删除!