码迷,mamicode.com
首页 > 其他好文 > 详细

presto 判断数据量是否大于一个比较小的值的优化

时间:2019-01-12 01:08:14      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:测试   引入   操作   大于   异步处理   需求   速度   长度   rest   

问题来源于以下场景:

   我们需要对一张数据表做导出文件操作,需要判断如果数据量不多的时候,直接导出提供下载,如果数据量超过一定数值,则异步处理导出和下载。

 

这里就引入一个问题,如果我们直接count一张表,当表比较大的时候,太过耗时:

select count(1) from table;// 数据量大的时候速度慢

需要如何优化?

 

我们根据自己的需求,是不需要知道数据量具体又多少,只是想知道多不多的问题。

这个时候,我们能不能限制下数据长度,假设我们要判断超过5000数据量时异步导出。那么我们先限定数据量为5001,然后再count,避免扫描所以数据。

select count(1) from (select 1 from table limit 5001);

测试发现,效果还是比较不错的。对大数据表,效果很好。

presto 判断数据量是否大于一个比较小的值的优化

标签:测试   引入   操作   大于   异步处理   需求   速度   长度   rest   

原文地址:https://www.cnblogs.com/chianquan/p/10258252.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!