clickhouse mergeTree引擎
文章目录
clickhouse mergeTree具体学习
百度网盘:https://pan.baidu.com/s/19gFo-FhMuQVUu7zSs4xUZQ,提取码:yyds 阿里云盘:https://www.aliyundrive.com/s/xAcwnztJwZB,提取码:e83r
https://zhuanlan.zhihu.com/p/349105024
命令连接 clickhouse
|
|
使用 dbeaver 连接数据库
使用 dbeaver 连接数据库记录
创建表
|
|
分区合并
分区后,面对涉及 跨分区的查询统计, clickhouse会以分区为单位进行处理。
数据写入与分区合并
任何一个批次的数据写入都会产生一个临时分区,不会纳入任何一个已有的分区。 写入后的某个时刻(大概10-15分钟后), clickhouse 会自动执行合并操作 (等不及也可以手动通过 optimize 执行),把临时分区数据合并到已有分区中
|
|
合并分区过程演示
|
|
查看 clickhouse 的数据文件
|
|
partition
列存储分区的名称。此示例中有两个分区:201901
和 201902
。在
ALTER … PARTITION
语句中你可以使用该列值来指定分区名称。
name
列为分区中数据片段的名称。在
ALTER ATTACH PART
语句中你可以使用此列值中来指定片段名称。
这里我们拆解下第一个数据片段的名称:201901_1_3_1
:
201901
是分区名称。1
是数据块的最小编号。3
是数据块的最大编号。1
是块级别(即在由块组成的合并树中,该块在树中的深度)。
稀疏索引
略过
order by(必选)
order by 设定了 分区内的数据按照哪些字段顺序进行有序保存
order by 是 MergeTree 中唯一一个必填项,甚至比 primary key 还重要, 运维 当用户不设置主键的时候, 很多处理还是按照 order by 的字段进行处理(比如后面会讲的去重和汇总)。
**要求: 主键必须是order by字段的前缀字段 **
其他笔记
[[post/14.新语言学习记录/中间件工具/clickHouse/clickhouse相关的引擎 | clickhouse引擎记录]]
文章作者 LYR
上次更新 2021-08-14