我在Clickhouse中的SQL使用呢dictGet
来关联一些位于字典表中的纬度数据,最近在调研数据迁移到Doris中,不过根据查阅文档,Doris中应该是没有直接对等的功能。
主要问题
所以迁移到Doris中最佳实践是替换为Join?或者是否有类似的其它方案?
场景咨询
我的一个场景是,纬度表中存放了IP与一些数据的映射关系,clickhouse中,在SQL查询阶段,会通过数据的IP字段,利用DictGet函数,来将数据关联到到查询结果数据上。经过查阅文档,Doris应该并没有可以直接对等的方案(如果说得不对还请指正)。目前我想到的办法是使用Join来重写SQL。
对于Join来说,我查阅Doris的文档,采用Colocation Join
来进行Join是效率最高的,但其会要求数据按照设置的分桶来存储。
在上述场景中,纬度表中的IP是相对分散的。但事实表中的IP数据可能不是那么分散,由于触发Colocation Join
对分桶有要求,我这种场景是否适合使用Colocation Join
?
由于一些特殊原因,需要在即席查询是进行关联。故这个问题主要是针对查询阶段。
Discussion
这个问题我在Doris的Discussion
中也有咨询,我会持续关注两边的答复。
Version
2.0
和2.1
均可。
如果答复有版本限制,还请说明。
谢谢!