V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NicolayShi
V2EX  ›  PHP

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

  •  
  •   NicolayShi · 2018-12-24 15:23:46 +08:00 · 2527 次点击
    这是一个创建于 1921 天前的主题,其中的信息可能已经有所发展或是发生改变。
    ```````` 批处理查询
    当需要处理大数据的时候,像 yii\db\Query::all() 这样的方法就不太合适了, 因为它们会把所有查询的数据都读取到客户端内存上。为了解决这个问题,Yii 提供了批处理查询的支持。服务端先保存查询结果,然后客户端使用游标( cursor ) 每次迭代出固定的一批结果集回来。`````````
    这个 ‘客户端内存’ 具体指的是什么哦,丝毫想不清楚~
    jeremaihloo
        1
    jeremaihloo  
       2018-12-24 16:02:11 +08:00
    假如数据库里面有一千条万数据,你这个语句就会把一千万条数据都读入到客户端也就是执行这个语句的 client 的机子的内存当中,嗯,我觉着我这个解释白解释了,建议去复习下计算机原理和数据库原理基本知识,你都知道游标了,不能不知道游标的作用和什么时候用游标吧
    Mitt
        2
    Mitt  
       2018-12-25 01:05:00 +08:00 via iPhone
    就是一个篮子里放 1w 个鸡蛋给你和 1000 个篮子每个放 10 个鸡蛋的区别,直接放一个篮子给你篮子放不下就会溢出,篮子就好比你的内存限额
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1129 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:52 · PVG 06:52 · LAX 15:52 · JFK 18:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.