介绍
ClickHouse是一款由俄罗斯IT人员开发的一款开源的列式数据库管理系统。clickehouse是一款OLAP分析型数据库,以快取胜。至于为什么快,网络上各位大牛已经做了介绍,此处不再叙述。本文主要从使用角度来介绍关于CH的分布式表,ttl,主键等信息。
分布式表
分布式表是一种逻辑上的表,并不真正存储数据。查询时,请求直接下发分布式表,分布式表会下发到各个子表进行查询,之后结果进行汇总、合并,极大的加快了检索效率。它的创建和普通字表创建语法相似,主要是引擎类型不同。语法具体如下:
create table example_all (d DateTime, a Int) ENGINE = Distributed (test, default, example , rand());
说明:Distributed 代表所属引擎,分布式必须为此值;括号里 test代表分布式集群名;default代表database也就是我们说的命名空间或者数据库名;example是指分布式表对应的子表名;rand()此项称之为ShardingKey,代表数据分发测略,入库时如何分发,可以hash或者随机或者轮询等,每种对应的shardingKey配置不同,可根据需要选择。
目前官方已经不建议使用分布式表入数据,因为效率可能会比直接入子表差,但如果对入库效率没所谓的业务来说,可以继续入分布式表,目前我们就是这么做的&#x