【发布时间】:2015-12-03 12:01:44
【问题描述】:
在处理大量 MySQL 条目时,在 PHP 数组中一次获取所有条目还是在 while fetch_assoc 循环中解析每一行更有效?我说的是数十万条记录,这些记录将增长到数百万条,在我真正开始优化数据库之前,我想知道是否有更有效的方法来使用 PHP 解析 MySQL 数据。在分配给另一个数组以插入/更新另一个 MySQL 数据库之前,解析涉及多个验证和格式化。
希望这是有道理的。欢迎您提出意见和建议。
【问题讨论】:
-
是一个普遍的问题,在某些情况下取决于其他选择中的 php 解析更好。您必须参考具体案例..
-
大量的数组条目需要大量的内存,分配和释放的开销很大......所以在可能的情况下单独处理每个数据库记录通常会更有效以避免这种情况
-
这在很大程度上取决于你用它做什么。如果你可以限制你从 MySQL 中提取的内容,你将消除最大的瓶颈。
-
效率在哪方面?读取大数组可能会更快,但会消耗更多内存。
-
通常我将分页构建到需要处理非常大的数据集的系统中;分页不仅仅是一个 GUI 元素,它通常也是一种性能解决方案。就像我说的,缩小从 MySQL 中提取的数据量,您可能不必担心其余的方法。