数据就像开始时间,结束时间,id,a,b,c,d,e,f,g ...
如何在Clickhouse上创建索引,大多数sql如下:
1。从tbl1中选择开始时间,结束时间,id,a,b,c,d,e,f,g 在哪里开始时间> =?和结束时间<=?和id =?
2。从tbl1中选择a,c,sum(f),avg(g) 在哪里开始时间> =?和结束时间<=? 按a,c分组 按sum(f)desc排序 限制20
3。从tbl1中选择开始时间,结束时间,id,a,b,c,d,e,f,g 在哪里开始时间> =?和结束时间<=?和一个=? 限制20
4。从tbl1中选择a,c,sum(f),avg(g) 在哪里开始时间> =?和结束时间<=?和一个=?和c =? 按a,c分组 按sum(f)desc排序 限制20
5。从tbl1中选择a,b,c,d,e,f,g 在哪里开始时间> =?和结束时间<=?和一个=?和d =?和e =? 按a,d,e排序 限制20
提示:
a)总是有开始时间,结束时间
b)某些SQL具有用于搜索小数据的ID,例如1。而其他SQL具有用于搜索大数据的ID,例如2,3,4,5
答案 0 :(得分:0)
Clickhouse是一个带有一个主键的面向COLUMN的数据库,他将每一列存储在不需要二级索引的单独的优化“存储”中
您可以选择* MergeTree表引擎,其主键的开始时间和结束时间 每种MergeTree引擎在这里https://clickhouse.yandex/docs/en/operations/table_engines/mergetree/
您所有的查询都将尽快运行