本文为您介绍云数据库ClickHouse产品中涉及的一些基本术语和概念,以便于您更好地理解云数据库ClickHouse产品。
通用概念
地域(Region)
云数据库ClickHouse的服务器的地理位置。在购买云数据库ClickHouse服务时,您需指定服务地域,并且地域一旦指定后,无法进行更改。
可用区(Zone)
在同一地域下,电力和网络隔离的物理区域。可用区之间内网互通,且内网络延时更小。
数据库(Database)
数据库是云数据库ClickHouse集群中的最高级别对象,其由表(Table)、列(Column)、视图(View)、函数、数据类型等组成。
社区兼容版
ClickHouse集群(Cluster)
在物理构成上,ClickHouse集群由多个ClickHouse Server实例组成,形成一个分布式数据库。这些ClickHouse Server根据采购规格的不同,可能包含一个或多个副本(Replica)以及一个或多个分片(Shard)。
在逻辑构成上,一个ClickHouse集群可以包含多个数据库(Database)对象。
副本配置(Edition)
ClickHouse集群包含如下副本。
双副本版:每个节点包含两个副本,当某个副本的服务不可用时,同一分片的另一个副本仍可持续提供服务。
单副本版:每个节点只有一个副本,当该副本的服务不可用时,将导致整个集群的不可用。若要集群继续提供稳定服务,只能等待该副本完全恢复服务状态。
双副本版的资源以及对应的购买成本都是单副本版的2倍。
由于底层云盘提供高可靠保证,即便是单副本版也能确保数据不会丢失。
分片(Shard)
在超大规模海量数据处理场景下,单台服务器的存储与计算资源可能会成为瓶颈。为了进一步提高服务效率,云数据库ClickHouse将海量数据分散存储至多台服务器上,每台服务器只存储和处理海量数据的一部分。在这种架构下,每台服务器被称为一个分片(Shard)。
副本(Replica)
为了在异常情况下保证数据的安全性和服务的高可用性,云数据库ClickHouse提供了副本机制,将单台服务器的数据冗余存储在两台或多台服务器上。
表(Table)
表用于存储数据的基本结构。它由行和列组成,其中每一列表示一个字段,每一行表示一条记录。
从数据分布角度来看,云数据库ClickHouse的表可以分为两种类型:本地表和分布式表。
表类型 | 说明 | 区别 |
本地表(Local Table) | 数据只会存储在当前写入的节点上,不会被分散到多台服务器上。 |
|
分布式表(Distributed Table) | 本地表的集合。 它将多个本地表抽象为一张统一的表,对外提供写入和查询功能。当写入数据时,数据会被自动分发到集合中的各个本地表中;当查询数据时,集合中的各个本地表都会被分别查询,并且把最终结果汇总后返回。 |
从存储引擎角度来看,云数据库ClickHouse的表也可以分为两种类型:单机表和复制表。
表类型 | 说明 | 区别 |
单机表(Non-Replicated Table) | 数据只会存储在当前服务器上,不会被复制到其他服务器,即只有一个副本。 |
|
复制表(Replicated Table) | 数据会被自动复制到多台服务器上,形成多个副本。 |
Data part
Data part是指存储在硬盘上的一个数据片段,它是ClickHouse表数据存储的基本单位。每次向ClickHouse表写入数据时,都会生成一个新的数据分片。每个数据分片都是自包含的,包括了该部分数据的所有列和索引,且保持着数据的有序性。数据分片的设计支持了高效的合并和压缩操作,这对于ClickHouse的高性能查询处理至关重要。
企业版
ClickHouse集群
ClickHouse集群包含若干单位计算资源和存储资源,能够提供ClickHouse引擎数据存储和分析服务的PAAS服务。
Worker节点
Worker节点是ClickHouse集群内部的副本节点,参与引擎计算的实际资源。
CCU
CCU(ClickHouse Compute Unit)是ClickHouse集群计算资源的计量和计费单位,1 CCU对应资源为1 Vcpu 4 GiB。标准计费单位:CCU/分钟。
计算资源自动弹性
计算资源自动弹性(Autoscaling)是计算资源按照CCU粒度进行资源弹性扩展,根据Mem的使用情况进行自动的CCU扩展。
弹性资源设置区间
弹性资源设置区间是用户设置CCU使用区间,弹性扩缩必须保持在用户设置的资源区间内,不能小于最小值且不能大于最大值。
存储资源
存储资源是企业版本采用的共享存储方案,按需付费。