核心算法是AQPApproximate Query Processing 近似查询处理
AQP已经有30多年的历史了
近似查询在近些年是个比较热门的话题,今年SIGMOD上,Verdict DB带来了自己的一个解决方案。鉴于各大数据库厂商对于修改内核支持近似查询的动作不是很快,他们提出了一个基于采样来建立采样表,然后将查询改写为对于采样表的查询,最后再把结果做一定的处理,例如对于sum的操作会做相应的scale等等,把近似查询结果返回。这个方案是以一个中间件的形式,对接各个数据库,创建采样表,从而支持一些查询的改写可以去做近似查询。基本的架构如下图所示:
下面是Verdict DB的简单说明
对于SQL惊醒重写,已中间件的形式与原始数据库交互,将查询结果返回客户端
提速效果并没有传说中的200倍,期待park的继续优化
其实,AQP这项技术的并非首次使用
伯克利的实验室的BlinkDB,不过项目很多年没有更新了
Presto也是曾经近似处理基本的聚集查询,也是近似查询
领取专属 10元无门槛券
私享最新 技术干货