关于DotLucene的增量索引策略

 判断索引目录的segments文件是否存在,
    如果存在,用增量索引
        否则, 重新创建索引


 如果是重新创建索引
    只需要遍历需要索引的内容,然后新增文档
        
 如果是增量索引
    判断主Key[文件名(包含全路径)]在索引中是否存在
        如果存在
            判断[文件的修改时间],是否和索引中保存的[修改时间]一致
            如果不一致
                删除旧的索引中的该索引项目
                新增对该文档的索引
       否则
            新增该文档的索引

缺点,不能发现已经删除的文件,当然是认为的去某个目录删除该文件。
      如果是程序的话当然是可以的,只需要把索引中的项目删除。


CodeProject上面的http://www.codeproject.com/csharp/DesktopSearch1.asp

使用微软的IndexService,需要win2000或者win2000以上的版本。

缺点,好像这些函数在处理 修改word一点点内容之后,算法会有一些问题,如果重新编制索引,又不会出现:( 不知道是不是我做错了。

原文地址:https://www.cnblogs.com/wildfish/p/262251.html