无锡网站营销公司哪家好,广告设计与制作工资,做代理,360搜索推广官网一. 副本概述
副本的目的主要是保障数据的高可用性#xff0c;ClickHouse中的副本没有主从之分。所有的副本都是平等的。
副本写入流程#xff1a;
二. 副本搭建
1. 实验环境
hadoop1(192.168.47.128)
hadoop2(192.168.47.129)2. 修改配置文件
修改两台主机/etc/click…一. 副本概述
副本的目的主要是保障数据的高可用性ClickHouse中的副本没有主从之分。所有的副本都是平等的。
副本写入流程
二. 副本搭建
1. 实验环境
hadoop1(192.168.47.128)
hadoop2(192.168.47.129)2. 修改配置文件
修改两台主机/etc/clickhouse-server/config.xml配置文件指定副本使用的zookeeper
zookeepernodehosthadoop1/hostport2181/port/node
/zookeeper3. 启动服务
启动hadoop1上的zookeeper服务
[roothadoop1 zookeeper-3.9.2]# ./bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.9.2/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED启动hadoop1和hadoop2的ClickHouse服务
[roothadoop1 ~]# systemctl start clickhouse-server[roothadoop2 ~]# systemctl start clickhouse-server三. 数据同步验证 在hadoop1和hadoop2建表 # hadoop1
hadoop1 :) create table t_test (
id UInt32,
name String,
age UInt32
) engine ReplicatedMergeTree(/clickhouse/table/01/t_test,rep_1)
primary key (id)
order by (id,name);# hadoop2
hadoop2 :) create table t_test (
id UInt32,
name String,
age UInt32
) engine ReplicatedMergeTree(/clickhouse/table/01/t_test,rep_2)
primary key (id)
order by (id,name);副本表的引擎为ReplicatedMergeTree两张表在zookeeper的节点路径是一样的 在hadoop1执行insert语句 hadoop1 :) insert into t_test values(1, name1, 20), (2, name2, 30), (3, name3, 15);INSERT INTO t_test FORMAT Values
Query id: 6c7fb969-fbe4-4199-af27-1dbbe3c8be14
Ok.3 rows in set. Elapsed: 0.031 sec.查看hadoop2数据表中的数据 hadoop2 :) select * from t_test;SELECT *
FROM t_testQuery id: fef23f16-f122-45e6-bfa2-94e784a9e042┌─id─┬─name──┬─age─┐
1. │ 1 │ name1 │ 20 │
2. │ 2 │ name2 │ 30 │
3. │ 3 │ name3 │ 15 │└────┴───────┴─────┘
3 rows in set. Elapsed: 0.005 sec.由此可以看出hadoop1插入的数据已经完全同步到hadoop2上了。