ClickHouse应用开发常用概念
基本概念
- cluster
cluster(集群)在ClickHouse里是一种逻辑的概念,它可以由用户根据需要自由的定义,与通常理解的集群有一定的差异。多个ClickHouse节点之间是一种松耦合的关系,各自独立存在。
- shards
shard(分片)是对cluster的横向切分,1个cluster可以由多个shard组成。
- replicas
replica(副本),1个shard可以有多个replica组成。
- partition
partition(分区),针对的是本地replica而言的,可以理解为是一种纵向切分。
- MergeTree
ClickHouse拥有非常庞大的表引擎体系,MergeTree作为家族系统最基础的表引擎,提供了数据分区、一级索引和二级索引等功能。在创建表的时候需要指定表引擎,不同的表引擎会决定一张数据表的最终“性格”,比如数据表拥有何种特性、数据以何种形式被存储以及如何被加载。