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上了。

相关推荐
zhoupenghui1685 天前
ClickHouse merge引擎详解以及应用
数据库·clickhouse·merge·mergetree
ClickHouseDB6 天前
ClickHouse 十年开源,今非昔比!
clickhouse·开源·apache
ClickHouseDB7 天前
ClickHouse 开源十年:数据分析领域的中流砥柱
clickhouse·数据分析·开源
java_logo11 天前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
ClickHouseDB12 天前
TPC-H 成本不到一分钱:ClickHouse Cloud 对比 Snowflake、Databricks、BigQuery 和 Redshift
clickhouse
隔壁阿布都15 天前
ClickHouse完整指南
服务器·数据库·clickhouse
数据库小学妹15 天前
MySQL做报表太慢?引入ClickHouse列式存储,同一个查询快240倍
mysql·clickhouse·列式存储·分析型数据库·向量化执行·olap数据库·mysql对比
ClickHouseDB19 天前
推出 ClickHouse Cloud 中的多阶段分布式查询执行
分布式·clickhouse
weixin_3077791321 天前
Linux下ClickHouse数据仓库故障系统化诊断脚本
linux·运维·clickhouse·自动化·数据库开发
SelectDB技术团队22 天前
Agent 场景动态 JSON 性能拆解:Apache Doris 比 ClickHouse 快 7 倍、比 Elasticsearch 快 2 倍
数据库·clickhouse·elasticsearch·json·apache·日志分析·apache doris