用PHP或JavaScript查询大型XML文件(600mb +)?

时间:2010-02-08 14:00:00

标签: php javascript xml

我有一个大型XML文件(600mb +),我正在开发一个需要查询该文件的PHP应用程序。

我最初的方法是从文件中提取所有数据并将其插入MySQL数据库 - 然后以这种方式查询。唯一的问题是它仍然很慢,而且XML数据定期更新 - 这意味着每次更新XML文件时我都需要下载,解析并将XML文件中的数据插入到数据库中。

实际上是否可以查询600mb文件? (例如,搜索TITLE =“here here”的记录?)是否有可能在合理的时间内完成此操作?

理想情况下,我想在PHP中执行此操作,但我也可以使用JavaScript。

任何帮助和建议表示赞赏:)

1 个答案:

答案 0 :(得分:1)

为600多Mb文档构建XML DOM绝对是一种失败的方法。您需要的是基于SAX的API。但是,SAX通常不允许使用XPath,但您可以使用命令式代码来模拟它。

对于正在更新的文件,是否可以无论如何只检索差异?这将大大加快后续处理速度。