乐趣区

关于replication:ClickHouse-分布式架构qbit

前言

  • 本文次要摘录自《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

退出移动版