ClickHouse高可用之ReplicatedMergeTree引擎介绍
ClickHouse高可用架构准备-环境说明和ZK搭建
RPM安装ClickHouse
上传我们的clickhouse rpm文件。
安装:
中途需要输入用户名和密码 可以不设置 直接回车。
启动:
查看状态:
查看端口是否占用:
我们去下载这个命令:
查看日志:
查看错误日志:
源码安装需要进行开启远程访问,docker安装默认开启:
放开这行。
需要重启才能让配置生效:
我们就可以在我们的dbeaver里运行了。
这样去看主机名。
记得配置完重启。
高可用集群架构-ClickHouse副本配置实操
查看clickhouse端口。
修改配置文件:
两个节点都这么做。
修改完配置记得重启:
节点一添加数据:
节点二:
我们在哪个节点都能看到数据。
副本创建成功可以看到zookeeper表。
查看zookeeper配置:
ClickHouse高可用集群架构讲解和分片介绍
我们每一个shard就是一个分片,这里可以看到我们每个分片里包含两个副本。
ClickHouse高可用架构之两分片一副本配置实战
我们现在查集群,都是clickhouse自带的,还没有我们创建的呢。
修改完配置,我们要重启我们的节点:
另一个节点,我们也做同样处理就行。
然后我们去验证一下:
我们两个服务器上都能看到了,我们就配置成功了。
我们来看一下日志:
我们看我们的日志并没有报错,所以证明配置是没问题的。
ClickHouse高可用架构之两分片一副本配置实战
存在看到这个表了。
我们两个clickhouse库就都有这个表了。
建分布式表:
我们发现这里并没有我们刚刚创建的分布式表。
我们直接去查是有这张表的。
两个库里都有这个表的。
添加数据:
我们发现在另一张表中也能查到数据。
但是只能查到部分。
查到的是全部的数据。
本地表部分数据,分布式表是全部数据。
我们在ck1库的本地表增加数据:
查询分布式表:
全部数据都有。
本地表也是所有数据都有:
在ck2库中查本地表:
数据并没有添加到ck2库的本地表上去。
我们之前没有在表上发现我们的这个分布式表,其实是在视图中:
这也是和数据库Mysql不太一样的地方。