美团Apache Kylin精确去重指标优化历程
康凯森,美团点评大数据工程师,Apache Kylin commiter,目前主要负责Apache Kylin在美团点评的平台化建设。 问题背景 本文记录了我将Apache Kylin超高基数的精确去重指标查询提速数十倍的过程,大家有任何建议或者疑问欢迎讨论。 某业务方的cube有12个维度,35个指标,其中13个是精确去重指标,并且有一半以上的精确去重指标单天基数在千万级别,cube单天数据量1.5亿行左右。业务方一个结果仅有21行的精确去重查询竟然耗时12秒多,其中HBase端耗时6秒多,Kylin的query server端耗时5秒多: SELECTA,B,count(distinctuuid),FROMtableWHEREdt=17150GROUPBYA,B 精确去重指标已经在美团点评生产环境大规模使用,我印象中精确去重的查询的确比普通的Sum指标慢一点,但也挺快的。这个查询慢的如此离谱,我就决定分析一下,这个查询到底慢在哪。 优化1 将精确去重指标拆分HBase列族 我首先确认了这个cube的维度设计是合理的,这个查询也精准匹配了cuboid,并且在HBase端也只扫描了21...