我有一个XML文档,其中包含大约4000个数据条目。数据将在PHP环境中使用,并且是Web应用程序所必需的。我想过使用“sphinx”(http://sphinxsearch.com/docs/2.0.1/xmlpipe2.html)来索引数据但是想知道,还有哪些更好的选择。
提前致谢, 安迪
编辑:我不想编写一个导入程序脚本,该脚本将XML文件加载到例如的MySQL数据库。它应该是这样的:将文件加载到这个工具/程序/中,然后它应该可以从PHP中搜索。
答案 0 :(得分:3)
如果您有4000个条目并且只需要一个条目,则会读取整个文件,直到找到您的条目。那可能是很长一段时间。您可能希望使用像MySQL这样的数据库。
如果您想进行XML文件搜索,最终会选择以下两个选项之一:
出于性能原因,这些选项都不是真的可以接受。如果您希望用户编辑XML文件,它会变得更加棘手,因为它们不是多线程保存(如数据库)。
如果您希望搜索效果良好,则需要使用数据库。它就像那样容易。
另一件事是让用户机器解析XML文件(使用JavaScript)并获得所需文章的ID(然后从您的服务器打开)。但是,根据您的XML文件的大小和用户机器的功能,浏览器可能会中断并取消脚本。
答案 1 :(得分:2)
我是第二个Lukas:不管你喜欢与否,如果你期待任何一种表现,你都不会逃避解析和规范化。
您将充分利用可以导入xml或解析的xml(作为对象或json)的ORM(SQL或NoSQL)并直接保留它。 (我很确定Doctrine可以做这样的事情。还可以查看MongoDB和CoucheDB中的NoSQL选项。)