【发布时间】:2013-08-28 05:11:45
【问题描述】:
我对什么与性能和最佳实践有更好的相关性有一些疑问。
我的系统会这样做:
- 按文档插入和更新,或
- 批量文档插入
据我所知(在以前的系统中)#2 是直截了当的:
- 批量删除旧文档并添加新文档,最多 10k 个文档,每个文档不超过 20 个字段
- 提交
- 优化
但#1 仍然让我感到困惑,因为一些客户会一一添加文档。
每次插入和更新时提交和优化的惩罚是什么?或者我可以忽略它,因为它每天只发生 20 次?
Java 版本是 3.5,.net 版本是 3.03
我刚看到a blog post,想知道社区有什么要说的。
【问题讨论】:
-
您对更新后的文档多久出现在搜索结果中有什么要求?这将告诉我们我们想要提交的频率。是的,此时优化几乎是不必要的。
-
是你的索引吗?你的索引在内存中吗?优化每 20 个文档是多余的……如果您真的想在凌晨 2 点或下班时间对其进行优化。
-
如果服务器出现故障或应用程序因任何原因崩溃,则需要保留索引,以便保留在文件系统中。该索引将服务于文档搜索。问题是它将主要托管在共享主机上,因此我没有访问计划来按时优化例程或脚本。
标签: c# asp.net-mvc lucene.net