gpt4 book ai didi

php - 性能批量插入或切片多批量插入的最佳选择是什么?

转载 作者:行者123 更新时间:2023-11-30 23:22:49 24 4
gpt4 key购买 nike

我注意到当我使用 db->insert_batch 函数时,Codeigniter 每 100 次插入对行进行切片。

这背后的原因是什么?一次做所有事情不是更有收获吗?

同样从 Codeigniter 的角度来看,据我所知,不可能在一个连接中对多个表进行多次插入。

这三种场景之间的性能比较如何?

1- Do 2220 在一个连接中插入。一张 table 20,另一张 table 200,最后一张 table 2200。

2- 相同的插入,正如 CodeIgniter ActiveRecord 库建议的那样 (?) 在一次查询中对一个表进行 10 次插入,在两个不同的查询中对第二个表进行 200 次插入,在 20 个查询中对第三个表进行 2000 次插入。

每行 3- 2220 个不同的查询。

最佳答案

据我所知,您一次只能插入一个表,因此 #1 与 #3 对我来说没有意义(而且您的数字不相加)

批量插入的原因是因为它们会导致高度限制的写锁。根据数据库引擎,插入可能会导致表级写锁,建立请求队列并最终在池达到其限制时拒绝请求

批处理允许完成插入并偶尔释放锁,从而允许更快的查询在再次锁定之前获得时间。

关于php - 性能批量插入或切片多批量插入的最佳选择是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14791544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com