前言
-
本文次要摘录自《ClickHouse 原理解析与利用实际》
ClickHouse 原理解析与利用实际 朱凯著 北京:机械工业出版社,2020.5(2021.10 重印)书中应用 ClickHouse 版本为 19.17.4.11
摘录
2.1.7 多主架构
HDFS、Spark、HBase 和 Elasticsearch 这类分布式系统,都采纳了 Master-Slave 主从架构,有一个管控节点作为 Leader 兼顾全局。而 ClickHouse 则采纳 Multi-Master 多主架构,集群中的每个节点角色对等,客户端拜访任意一个节点都能失去雷同的成果。
这种多主的架构由许多劣势,例如对等的的角色使零碎架构变得更加简略,不必再辨别主控节点、数据节点和计算节点,集群中的所有节点性能雷同。所以它人造躲避饿了单点故障的问题,十分实用用于多数据中心、异地多活的场景。
2.1.9 数据分片与分布式查问
数据分片是将数据进行横向切分,这是一种在面对海量数据的场景下,解决存储和查问瓶颈的无效伎俩,是一种分治思维的体现。
ClickHouse 反对分片,而分片则依赖集群。每个集群由 1 到多个分片组成,而每个分片则对应了 ClickHouse 的一个服务节点。分片的数量下限取决于节点数量( 一个分片只能对应一个服务节点 )。
10.1 正本与分片概述
抛开表引擎的不同,单纯从数据层面来看,正本和分片有时候只有一线之隔。
10.2.3 正本的定义模式
ClickHouse 的正本采纳了多主架构,每个正本实例都能够作为数据读、写的入口。
10.4 数据分片
ClickHouse 中的每个服务节点都能够称为一个 shard(分片)。ClickHouse 的数据分片须要联合 Distributed 表引擎一起应用。
10.4.1 集群的配置形式
本节介绍了几种典型分布式配置。
shard 更像是逻辑层面的分组,而无论是正本还是分片,他们的载体都是 replica,所以从某种角度来看,正本也是分片。
- 不蕴含正本的分片:有 node,没有 shard/replica
- 不蕴含正本的分片:没有 node,有 shard/replica
- N 个分片和 N 个正本:没有 node,有 shard/replica
10.5 Distributed 原理解析
Distributed 表引擎是分布式的代名词,它本身不存储任何数据,而是作为数据分片的通明代理,可能主动路由数据至集群中的各个节点,所以 Distributed 表引擎须要和其余数据表引擎一起协同工作。
本文出自 qbit snap