
# ClickHouse应用开发常用概念
#### 基本概念
- **cluster**
  cluster（集群）在ClickHouse里是一种逻辑的概念，它可以由用户根据需要自由地定义，与通常理解的集群有一定的差异。多个ClickHouse节点之间是一种松耦合的关系，各自独立存在。
  
 
- **shards**
  shard（分片）是对cluster的横向切分，1个cluster可以由多个shard组成。
  
- **replicas**
  replica（副本），1个shard可以由多个replica组成。
  
- **partition**
  partition（分区），针对的是本地replica而言的，可以理解为是一种纵向切分。
  

- **MergeTree**
  ClickHouse拥有非常庞大的表引擎体系，MergeTree作为家族系统最基础的表引擎，提供了数据分区、一级索引和二级索引等功能。在创建表的时候需要指定表引擎，不同的表引擎会决定一张数据表的最终"性格"，比如数据表拥有何种特性、数据以何种形式被存储以及如何被加载。
  
 
