本文是對《【硬剛大資料之學習路線篇】從零到大資料專家的學習指南(全面更新版)》的ClickHouse部分補充。
副本的目的主要是保障資料的高可用性,即使一台 ClickHouse 節點當機,那麼也可以從其他伺服器獲得相同的資料。
6.1 副本寫入流程

6.2 配置步驟
➢ 啟動 zookeeper 叢集
➢ 在hadoop202的/etc/clickhouse-server/config.d目錄下建立一個名為metrika.xml的配置檔案,内容如下:
➢ 同步到 hadoop203 和 hadoop204 上
sudo /home/atguigu/bin/xsync /etc/clickhouse-server/config.d/metrika.xml
➢ 在 hadoop202 的/etc/clickhouse-server/config.xml 中增加
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>
sudo /home/atguigu/bin/xsync /etc/clickhouse-server/config.xml
➢ 分别在 hadoop202 和 hadoop203 上啟動 ClickHouse 服務
注意:因為修改了配置檔案,如果以前啟動了服務需要重新開機
[atguigu@hadoop202|3 ~]$ sudo systemctl start clickhouse-server
注意:我們示範副本操作隻需要在 hadoop202 和 hadoop203 兩台伺服器即可,上面的操作,我們 hadoop204 可以你不用同步,我們這裡為了保證叢集中資源的一緻性,做了
同步。
➢ 在 hadoop202 和 hadoop203 上分别建表
副本隻能同步資料,不能同步表結構,是以我們需要在每台機器上自己手動建表
◼ hadoop202
◼ hadoop203
◼ 參數解釋
ReplicatedMergeTree 中,
第一個參數是分片的 zk_path 一般按照: /clickhouse/table/{shard}/{table_name} 的格
式寫,如果隻有一個分片就寫 01 即可。
第二個參數是副本名稱,相同的分片副本名稱不能相同。
➢ 在 hadoop202 上執行 insert 語句
➢ 在 hadoop203 上執行 select,可以查詢出結果,說明副本配置正确