一、搭建Zookeeper集群
二、配置ClickHouse集群
三、验证集群,没有副本的分布式集群
1、在第一台服务器118.xx.xx.101中
1) 在每个服务端创建一个普通表
create table tb_distribute(id UInt16, name String) ENGINE=TinyLog;
2) 在任意一个客户端创建一个分布式引擎表
create table dis_table(id UInt16, name String) ENGINE=Distributed(perftest_3shards_1replicas, db_test, tb_distribute, id);
perftest_3shards_1replicas: 集群名称
db_test: 数据库名称
tb_distribute: 普通表
id: 分片id
3)插入数据
insert into tb_distribute values(1,‘zhangsan‘);
查询数据,可以发现tb_distribute和dis_table两张表都又这条数据
在第三台服务110.xx.xx.67中插入测试数据
insert into tb_distribute values(2,‘lisi‘);
然后在第一台服务器118.xx.xx.101中查询,可以发现了在第三台服务110.xx.xx.67服务器中插入的数据。
在第一台服务器中增加数据,使用分布式表
insert into dis_table values(11,‘宋江‘);
然后在第二台查询到了这条数据
所有数据机器分布
总结: 向任何一台集群的 tb_distribute中插入数据,在分布式表中dis_table 能查到。
向分布式表中dis_table中插入数据,数据会被分到某个机器的tb_distribute表中。