为了账号安全,请及时绑定邮箱和手机立即绑定

如何在最短时间内将 20k xml 文件数据保存到 codeigniter 中的 mysql?

如何在最短时间内将 20k xml 文件数据保存到 codeigniter 中的 mysql?

PHP
莫回无 2022-12-23 14:40:01
我想在最短时间内将 20k xml 文件数据获取到我的数据库中,当前时间大约需要 60-80 小时来处理所有文件,有什么办法可以在更短的时间内完成吗?在上面的代码中,我一一从 xml 文件中获取详细信息,并将详细信息发送到我的数据库。建议我以最快的方式保存数据的更好方法。提前致谢
查看完整描述

2 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

首先是减少执行的查询数量。- 执行 1 个 select 语句来检索多个信息并将其存储在一个变量中,而不是执行 1000 个小查询。但是,这会增加消耗的内存。- 使用批次插入数据。而不是 1000 次插入,只执行一次。通过做一些测试为您的批次找到合适的尺寸。检查一个简单的插入、一个 100 行、200 行等的插入需要多少时间。



查看完整回答
反对 回复 2022-12-23
?
喵喔喔

TA贡献1735条经验 获得超5个赞

20K 大小的文件说 500Kb = 10Gb;本能地,很难理解为什么最多需要一个多小时。

不幸的是,我不知道 codeigniter,也无法理解您的代码逻辑,但是如果您准备考虑一种完全不同的方法来从 XML 加载 SQL 数据库,请考虑在 Saxon XSLT 处理器中使用 SQL 扩展:http://www.saxonica.com/documentation/index.html#!functions/sql

话虽如此,您的结果与预期如此不符,以至于几乎可以肯定有一种方法可以利用您现有的技术获得更好的性能,我只是无法告诉您它是什么。



查看完整回答
反对 回复 2022-12-23
  • 2 回答
  • 0 关注
  • 58 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信