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

分布式 DDL 页面

默认情况下,CREATEDROPALTERRENAME 查询只会影响其所在的当前服务器。在集群环境中,可以使用 ON CLUSTER 子句以分布式方式执行此类查询。

例如,以下查询会在 cluster 中的每个主机上创建名为 all_hitsDistributed 表:

CREATE TABLE IF NOT EXISTS all_hits ON CLUSTER cluster (p Date, i Int32) ENGINE = Distributed(cluster, default, hits)

为了正确运行这些查询,每个主机都必须具有相同的集群定义(为了简化配置同步,您可以使用 ZooKeeper 提供的替换功能)。它们还必须连接到 ZooKeeper 服务器。

查询的本地版本最终会在集群中的每个主机上执行,即使某些主机当前不可用。

:::important
在单个主机内,查询的执行顺序是有保证的。 :::