ClickHouse副本搭建

一. 副本概述

副本的目的主要是保障数据的高可用性,ClickHouse中的副本没有主从之分。所有的副本都是平等的。

副本写入流程:

二. 副本搭建
1. 实验环境
bash 复制代码
hadoop1(192.168.47.128)
hadoop2(192.168.47.129)
2. 修改配置文件

修改两台主机/etc/clickhouse-server/config.xml配置文件,指定副本使用的zookeeper

bash 复制代码
<zookeeper>
   <node>
       <host>hadoop1</host>
       <port>2181</port>
   </node>
</zookeeper>
3. 启动服务
  1. 启动hadoop1上的zookeeper服务
bash 复制代码
[root@hadoop1 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
  1. 启动hadoop1和hadoop2的ClickHouse服务
bash 复制代码
[root@hadoop1 ~]# systemctl  start clickhouse-server
bash 复制代码
[root@hadoop2 ~]# systemctl  start clickhouse-server
三. 数据同步验证
  1. 在hadoop1和hadoop2建表

    bash 复制代码
    # 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的节点路径是一样的

  2. 在hadoop1执行insert语句

    bash 复制代码
    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.
  3. 查看hadoop2数据表中的数据

    bash 复制代码
    hadoop2 :) select * from t_test;
    
    SELECT *
    FROM t_test
    
    Query 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上了。

相关推荐
深蓝电商API1 天前
亿级数据的存储选型:MongoDB/ES/ClickHouse横评
爬虫·clickhouse·mongodb·elasticsearch
流烟默3 天前
ClickHouse Part 机制与写入优化实践指南
大数据·运维·clickhouse
Sayai9 天前
ClickHouse WITH FILL 实战:监控大屏时间序列补零,附多粒度指标表与物化视图级联设计
大数据·运维·数据仓库·clickhouse·物化视图
l1t13 天前
DeepSeek总结的clickhouse的二进制文件自解压机制
clickhouse
l1t14 天前
DeepSeek总结的pg_clickhouse 与 chdb 更新:编码、嵌套与类型
数据库·clickhouse·postgresql
拔剑纵狂歌17 天前
ClickHouse system.query_log 字段详解与排障实践
后端·clickhouse·1024程序员节
SelectDB技术团队17 天前
Apache Doris 高性能 Open Lake Variant 读写技术解析(含对比数据)
数据结构·数据库·clickhouse·日志·apache doris·selectdb·湖仓架构升级
SelectDB技术团队17 天前
ClickHouse 存日志的能力边界:并发、检索与 trace 回放的实测对照
数据结构·数据库·clickhouse·日志分析·apache doris·日志存储
SelectDB技术团队17 天前
Agent Trace 数据底座建设:宽表建模、全文检索与成本聚合的配置与验证步骤
大数据·python·clickhouse·elk·elasticsearch·全文检索·复杂查询
此时不提桶,更待何时18 天前
05-03-B-ClickHouse与OLAP面试与生产事故实战
clickhouse·面试·nosql