简述
Roll-up 是Apahce druid 中重要的特性之一,在特定时间段内的数据,维度一致时可以进行压缩合并。减少数据量。
但有时为了估算压缩前后数据量如何查询呢?
在druid 中默认提供了sum函数可以统计压缩前的数据量。
下面来看下语法如何写吧。
Roll-up前后的数据量对比sql
SELECT SUM("count") as "roll-up前" ,COUNT(*) as " roll-up后" FROM table_name
查询效果
由于上面的维度值较多,roll-up效果 只做到了 7%的效果。来看下另一个
这个压缩比非常可观了。roll-up前近13亿数据,roll-up后只有140W,只有千分之一了。
总结
roll-up是apache druid 进行海量数据运算的法宝之一。根据自己需要的属性进行提取建表,可以大大的减少数据量,提升数据查询能力。