在使用了 uniCloud开发一段时间,有些数据表的数据量比较大,达到一百多万记录。结果就提示 查询数据超过五秒,无法返回数据。也加了索引,还是无法返回数据。请问有什么办法吗?
在数据库语句执行超过一定时间(腾讯云为5秒,阿里云为1秒)仍不能返回结果后,阿里云甚至会报错operation exceeded time limit。如果对数据库超时时间有更高的需求,建议使用腾讯云。
在使用了 uniCloud开发一段时间,有些数据表的数据量比较大,达到一百多万记录。结果就提示 查询数据超过五秒,无法返回数据。也加了索引,还是无法返回数据。请问有什么办法吗?
在数据库语句执行超过一定时间(腾讯云为5秒,阿里云为1秒)仍不能返回结果后,阿里云甚至会报错operation exceeded time limit。如果对数据库超时时间有更高的需求,建议使用腾讯云。
最佳回复
秋峰 (作者) - 微信小程序开发 云开发 serverless
Your current request database.aggregateDocuments is longer than 3s, it may be due to the network or your query performanc
秋峰 (作者) - 微信小程序开发 云开发 serverless
才一百多万的数据 就直接查询不出来了 加索引也没效果 活活的把一个上线了的项目 给我整的运行不了了 好痛苦啊。。。不知道有没有什么好办法可以解决的呢?
秋峰 (作者) - 微信小程序开发 云开发 serverless
我觉得是现在的云函数这边对性能要求太苛刻了
就比如数据库查询,超过五秒钟拿不到数据,腾讯云这边是直接就不返回数据
而阿里云是超过1秒 拿不到数据就直接不返回
这个云服务商肯定是考虑到大家都共用统一的云数据库 为了不会因为一两个客户的请求导致整个云数据库卡掉 做的保护
但是带来的问题 就是一旦数据量稍微大起来以后,比如百万级,或者千万级的数据,那么很可能就数据都取不出来了。
除非就自己人为的做分表 达到多少数据 就自动进行分库分表操作了
efficient_work
阿里云超过10万数据联查都有问题,现在就是改为先查主表数据,再处理数据,再去查副表数据,最后再处理数据渲染,但是整套下来耗时很长,用户体验很差
2022-03-31 22:29