kylin的sql查询基于calcite,其实现了自己的一套优化规则,可进行sql优化并获取sql中的table、aggreation等查询信息,具体映射规则如下:
- table => cube
- group, column => cuboid id
- group,where => Row Key
- aggreations => Row value
如果有四个维度ABCD,查询出现了A/B/C维度,但是这个cuboid并没有预计算,此时只能定位到A/B/C/D这个cuboid,在coprocessor中需要再根据D这一列执行聚合,进一步减小返回记录数。