clickhouse 分布式表创建、增加、更新、删除、查询

创建分布式表

sql 复制代码
--先创建本地表 设置自动过期时间3天
CREATE TABLE IF NOT EXISTS ck_database.ck_databaseon  cluster  default(cluster name)
(
    `table_id` String COMMENT 'id',
    `item_id` String COMMENT '业务id',
    `desc` Int64 COMMENT '描述',
    `time` DateTime DEFAULT now() COMMENT '数据写入时间,TTL 用'
)
ENGINE = MergeTree
ORDER BY (table_id, item_id)
TTL time + toIntervalDay(3)
SETTINGS index_granularity = 8192

--再创建分布式表
CREATE TABLE IF NOT EXISTS ck_database.ck_table_all on  cluster default(cluster name)
(
    `table_id` String COMMENT 'id',
    `item_id` String COMMENT '业务id',
    `desc` Int64 COMMENT '描述',
    `time` DateTime DEFAULT now() COMMENT '数据写入时间,TTL 用'
)
ENGINE = Distributed('default', 'ck_database', 'ck_database', sipHash64(assumeNotNull(table_id)))

删除分布式表

删除ck表,先删除分布式表,再删除本地表

sql 复制代码
DROP TABLE ck_dadasource.ck_table_all ON CLUSTER default(ck_cluster_name); 
DROP TABLE ck_dadasource.ck_table_local ON CLUSTER default(ck_cluster_name);

修改分布式表

通过local表来更新 同时指定上集群名称;如果通过all来更新则不支持会报错

sql 复制代码
alter table ck_table_local on cluster default(ck_cluster_name)
update is_deleted = 2
where redis_key in (123,456,789)

分布式表添加字段

sql 复制代码
alter table city_local ON CLUSTER ck_cluster_name add column history Int32;

同时支持指定在某个字段后面添加字段:

sql 复制代码
alter table city_local ON CLUSTER ck_cluster_name add column history Int32 after city_code;
sql 复制代码
-- 删除字段【可行】
alter table test_db.city_local ON CLUSTER ck_cluster_name drop column history;
相关推荐
小股虫2 分钟前
RabbitMQ深度解析:从入门到原理再到实战应用
分布式·rabbitmq
CRUD酱9 分钟前
RabbitMQ是如何解决消息堆积问题的?
分布式·rabbitmq
写bug的小屁孩11 分钟前
2.Kafka-命令行操作、两种消息模型
分布式·kafka
小股虫22 分钟前
RabbitMQ异步Confirm性能优化实践:发送、消费、重试与故障应对
分布式·性能优化·rabbitmq
Mr-Wanter38 分钟前
底层架构设计浅解
java·分布式·微服务
武子康40 分钟前
Java-183 OSS 上传实战:Java 原生与 Spring Boot 集成
java·开发语言·spring boot·分布式·spring·阿里云·oss
从零开始学习人工智能1 小时前
告别存储困境:RustFS 如何用内存安全重塑分布式对象存储
分布式·安全
bing.shao1 小时前
Golang 链接kafka 设置SASL_PLAINTEXT安全协议
分布式·安全·kafka
后端小张1 小时前
【鸿蒙2025领航者闯关】鸿蒙生态共建:智慧医疗领域的分布式革新与实践
分布式·华为·harmonyos·鸿蒙·鸿蒙系统·鸿蒙2025领航者闯关·开发者年度总结
武子康3 小时前
Java-184 缓存实战:本地缓存 vs 分布式缓存(含 Guava/Redis 7.2)
java·redis·分布式·缓存·微服务·guava·本地缓存