前言
插件及服务器版本
服务器:ubuntu 16.04
ClickHouse:20.9.3.45
这篇文件简单学习下ClickHouse基础的合并树(MergeTree)表引擎的创建方式,关于合并树基础上的如Replacing、Summing、Aggregating引擎,本文暂时不会涉及。MergeTree作为最基础的引擎,提供了主键索引、数据分区、数据副本等基本能力
create table db_name.table_nmae(
...
)ENGINE MergeTree()
PARTITION BY expr
ORDER BY expr
PRIMARY KEY expr
SAMPLE BY expr
SETTING name=values,...
;
参数说明:
create table m_retailitem2(
ID String,
...
)ENGINE MergeTree()
ORDER BY (CREATIONDATE,MODIFIEDDATE);
这里只有一个前缀为all的分区,后边的1和222分别是最小数据块编号和最大数据块编号,7为该分区合并的次数
2、有一个分区键时,根据日期年月进行分区,将日期字符串“2012-11-23 11:24:40.0”转成“201211”作为分区键
create table m_retailitem3(
ID String,
...
)ENGINE MergeTree()
ORDER BY (CREATIONDATE,MODIFIEDDATE)
PARTITION BY toYYYYMM(toDate(parseDateTimeBestEffortUS(CREATIONDATE)))
;
create table m_retailitem4(
ID UInt64,
...
)ENGINE MergeTree()
ORDER BY (CREATIONDATE,MODIFIEDDATE,intHash32(ID))
PARTITION BY toYYYYMM(toDate(parseDateTimeBestEffortUS(CREATIONDATE)))
SAMPLE BY intHash32(ID)
;
create table m_retailitem6(
ID UInt64,
MODIFIEDDATE DateTime,
NUM UInt8 TTL MODIFIEDDATE + INTERVAL 10 SECOND
)ENGINE MergeTree()
ORDER BY (MODIFIEDDATE,intHash32(ID))
SAMPLE BY intHash32(ID)
;
表级别TTL:
create table m_retailitem7(
ID UInt64,
MODIFIEDDATE DateTime
)ENGINE MergeTree()
ORDER BY (MODIFIEDDATE,intHash32(ID))
TTL MODIFIEDDATE + INTERVAL 20 DAT
;
5、storage_policy:多路径存储策略
目前的三种存储策略
默认存储策略
JBOD策略:多次盘策略
HOT/COLD策略:冷热存储策略,根据不同的磁盘类型做冷热存储
备注: storage_policy后续做详细介绍
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://gaokaiyang.blog.csdn.net/article/details/109229456
内容来源于网络,如有侵权,请联系作者删除!