php - 使用 Lucene/PHP 索引大型数据库

标签 php mysql lucene zend-search-lucene

下午的伙计们,

尝试使用 Lucene 的 Zend 端口为 170 万行的表编制索引。在几千行的小测试中,它工作得很好,但是一旦我尝试将行数增加到几万行,它就会超时。显然,我可以增加 php 允许脚本运行的时间,但看到 360 秒让我得到 ~10,000 行,我不愿去想完成 170 万行需要多少秒。

我也试过让脚本运行几千次,刷新,然后再运行几千次,但这样做每次都会清除索引。

有什么想法吗?

谢谢:)

最佳答案

我很抱歉这么说,因为 Zend_Search_Lucene 的开发者是我的 friend ,他为此付出了很多努力,但不幸的是,它不适合在任何非平凡大小的数据集上创建索引。

使用Apache Solr创建索引。我有 tested在创建索引方面,Solr 的运行速度比 Zend 快 300 倍。

您可以使用 Zend_Search_Lucene 对您使用 Apache Solr 创建的索引发出查询。

当然你也可以使用 PHP PECL Solr扩展,我会推荐。

关于php - 使用 Lucene/PHP 索引大型数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2638377/

相关文章:

php - 使用 MySQL 执行复杂的多表搜索查询

php - 只插入数据库一次然后失败

mysql - 在列中插入 ID,值以逗号分隔

mysql - 如何从一个选择更新两列

java - 有没有办法将 redquerybuilder 与 Lucene 一起使用?

在 Lucene 中索引标记二元组

java - Hibernate搜索结果排名

php - Ajax 和 PHP 存在 while 循环问题

java - 社交媒体应用程序如何正确保存登录信息

php - 我想在我的数据库中每天标记一次学生的出勤情况