天天看點

【硬剛ClickHouse】Flink 電商實時數倉(二十七):ClickHouse基礎(六)使用基礎(3)副本

本文是對《【硬剛大資料之學習路線篇】從零到大資料專家的學習指南(全面更新版)》的ClickHouse部分補充。

  副本的目的主要是保障資料的高可用性,即使一台 ClickHouse 節點當機,那麼也可以從其他伺服器獲得相同的資料。

6.1 副本寫入流程

【硬剛ClickHouse】Flink 電商實時數倉(二十七):ClickHouse基礎(六)使用基礎(3)副本

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>

【硬剛ClickHouse】Flink 電商實時數倉(二十七):ClickHouse基礎(六)使用基礎(3)副本

sudo /home/atguigu/bin/xsync /etc/clickhouse-server/config.xml

➢ 分别在 hadoop202 和 hadoop203 上啟動 ClickHouse 服務

注意:因為修改了配置檔案,如果以前啟動了服務需要重新開機

[atguigu@hadoop202|3 ~]$ sudo systemctl start clickhouse-server

【硬剛ClickHouse】Flink 電商實時數倉(二十七):ClickHouse基礎(六)使用基礎(3)副本

  注意:我們示範副本操作隻需要在 hadoop202 和 hadoop203 兩台伺服器即可,上面的操作,我們 hadoop204 可以你不用同步,我們這裡為了保證叢集中資源的一緻性,做了

同步。

➢ 在 hadoop202 和 hadoop203 上分别建表

副本隻能同步資料,不能同步表結構,是以我們需要在每台機器上自己手動建表

◼ hadoop202

◼ hadoop203

◼ 參數解釋

ReplicatedMergeTree 中,

第一個參數是分片的 zk_path 一般按照: /clickhouse/table/{shard}/{table_name} 的格

式寫,如果隻有一個分片就寫 01 即可。

第二個參數是副本名稱,相同的分片副本名稱不能相同。

➢ 在 hadoop202 上執行 insert 語句

【硬剛ClickHouse】Flink 電商實時數倉(二十七):ClickHouse基礎(六)使用基礎(3)副本

➢ 在 hadoop203 上執行 select,可以查詢出結果,說明副本配置正确