Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试创建一个包含 3700 万条记录的索引。
我正在使用脚本从 MySQL 导出数据,并将其输出为 XML,然后使用 xmlpipe2 导入。
我遇到的问题是生成的 XML 文件非常大,而我正在开发的服务器没有存储 XML 的内存。
如果我限制要导入的行数,例如 LIMIT 0、1000000,那么当我执行 LIMIT 1000000、1000000 时,索引不会像这样“合并”,而是会覆盖。
我可以以某种方式错开这一点,以便最终得到所有数据的索引吗?
谢谢
无需输出到实际的 XML 文件,只需将输出直接通过管道传输到 sphinx。这样他们的实际文件就不必存在(在内存中或文件系统上)。
即,您在“xmlpipe_command”中调用的脚本只是将 XML 直接打印到 STDOUT。狮身人面像会随着它的进行消化并阅读它。
我已经读取了比服务器内存大很多倍的 XML 数据源。
每个索引可以有多个源,例如多个 xml 文件或多个 mysql 源。索引按照您给它们的顺序获取它们,只需确保文档 id 在源中是唯一的。