请教老师傅们关于 yii2.0 文档中关于 batch 查询的一段话的解释~

2018-12-24 15:23:46 +08:00
 NicolayShi
```````` 批处理查询
当需要处理大数据的时候,像 yii\db\Query::all() 这样的方法就不太合适了, 因为它们会把所有查询的数据都读取到客户端内存上。为了解决这个问题,Yii 提供了批处理查询的支持。服务端先保存查询结果,然后客户端使用游标( cursor ) 每次迭代出固定的一批结果集回来。`````````
这个 ‘客户端内存’ 具体指的是什么哦,丝毫想不清楚~
2637 次点击
所在节点    PHP
2 条回复
jeremaihloo
2018-12-24 16:02:11 +08:00
假如数据库里面有一千条万数据,你这个语句就会把一千万条数据都读入到客户端也就是执行这个语句的 client 的机子的内存当中,嗯,我觉着我这个解释白解释了,建议去复习下计算机原理和数据库原理基本知识,你都知道游标了,不能不知道游标的作用和什么时候用游标吧
Mitt
2018-12-25 01:05:00 +08:00
就是一个篮子里放 1w 个鸡蛋给你和 1000 个篮子每个放 10 个鸡蛋的区别,直接放一个篮子给你篮子放不下就会溢出,篮子就好比你的内存限额

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/520488

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX