You've already forked www.colben.cn
update
This commit is contained in:
@@ -6,12 +6,12 @@ tags: []
|
||||
categories: ["clickhouse"]
|
||||
---
|
||||
|
||||
# 简介
|
||||
## 简介
|
||||
- 一个集群包含多个逻辑分片,每个逻辑分片包含多个副本节点
|
||||
- 向集群内读写数据时,需依赖 Distributed 引擎表做为代理,实现数据的分发、写入、查询和路由
|
||||
- ReplicatedMerge 表引擎配合 zookeeper 实现数据的复制
|
||||
|
||||
# 集群配置
|
||||
## 集群配置
|
||||
- 节点分配
|
||||
```xml
|
||||
<remote_servers>
|
||||
@@ -119,7 +119,7 @@ categories: ["clickhouse"]
|
||||
- system.zookeeper: zookeeper 代理表,可通过 sql 查看 zookeeper 信息
|
||||
- system.clusters: 集群信息表
|
||||
|
||||
# ReplicatedMergeTree 表引擎
|
||||
## ReplicatedMergeTree 表引擎
|
||||
- 引入 zookeeper 实现分布式协同,zookeeper 本身不涉及表数据传输
|
||||
- 副本节点是多主架构,可在节点上执行读写操作
|
||||
- 数据块: 默认 1048576 行(max_insert_block_size)
|
||||
@@ -128,7 +128,7 @@ categories: ["clickhouse"]
|
||||
- 唯一性: 记录 hash 信息,相同的数据块会被忽略
|
||||
|
||||
|
||||
## 创建 ReplicatedMergeTree 引擎表
|
||||
### 创建 ReplicatedMergeTree 引擎表
|
||||
- 声明
|
||||
```sql
|
||||
CREATE TABLE table_name_local ON CLUSTER cluster_name_2
|
||||
@@ -145,10 +145,10 @@ categories: ["clickhouse"]
|
||||
- db_name: 数据库名
|
||||
- {replica}: 节点域名/IP,从各自节点的宏变量中获取
|
||||
|
||||
# Distributed 表引擎
|
||||
## Distributed 表引擎
|
||||
- 又叫分布式表,自身不存储数据,只代理数据分片
|
||||
|
||||
## 创建 Distributed 引擎表
|
||||
### 创建 Distributed 引擎表
|
||||
- 声明
|
||||
```sql
|
||||
CREATE TABLE table_name_all ON CLUSTER cluster_name_1
|
||||
@@ -163,11 +163,11 @@ categories: ["clickhouse"]
|
||||
- table_name_local: 数据表名,即前面创建的 ReplicatedMergeTree 引擎表,通常以 \_local 为后缀
|
||||
- sharding_key: 分片键,可以是整型列字段或返回整型的表达式,决定数据分配到哪些节点中
|
||||
|
||||
# 分布式查询
|
||||
## 分布式查询
|
||||
- 分布式表(Distributed)把查询转换为并行的各分片查询
|
||||
- 汇总各分片的查询结果
|
||||
|
||||
## GlOBAL 优化查询
|
||||
### GlOBAL 优化查询
|
||||
- 场景: 涉及到 JOIN 和 IN 时,可能会放大分布式查询
|
||||
- GLOBAL 查询过程:
|
||||
- 提出 IN 子句,发起分布式查询
|
||||
|
Reference in New Issue
Block a user