search - ManifoldCF 作业调度的行为如何?

标签 search solr

我正在致力于使用 CMIS 查询将 manifoldcf 或 mcf 与 alfresco cms 作为存储库连接器集成,并使用 solr 作为存储所有索引的输出 channel 。我能够做得很好并且可以在 solr 索引中搜索文档。

现在作为实现的一部分,我计划引入多个存储库,例如共享点、文件系统等。所以现在我有三个文档存储库:alfresco、共享点和文件系统。我计划安排一些作业来运行每个存储库并以特定的时间间隔抓取这些作业。但我有以下争论。

  1. 虽然我经常安排作业,但我想确保 mcf 作业仅选择那些添加新内容或更新的内容,比如我在当前作业运行时有 100 个文档,但在下一个作业运行时有 110 个文档,所以我只想要为新的 10 个文档而不是整个 110 个文档运行作业。
  2. 由于可用的 mcf 教程相对较少,我无法确保 mcf 作业以这种方式运行,但我认为它足够智能,可以以这种方式运行,但同样没有证据证实这一点。
  3. 我想了解有关 mcf 作业计划类型的更多信息:扫描每个文档一次/直接重新扫描文档。同样,我想了解更多有关作业调用的信息:完整/最小。作为一个新手,我会感到抱歉。
  4. 此外,我正在考虑进行一些自定义编码,以确保只有最新/更新的文档才有资格进行处理,但再次仅在可用文档较少时才通过代码。
  5. 在这种情况下记录自定义编码是否明智,或者 mcf 提供了所有这些功能 OOTB。

提前非常感谢。

最佳答案

ManifoldCF 根据您为作业配置的内容来安排作业。

  1. 这取决于存储库连接器的编写方式,通常当作业运行时,它会运行存储库连接器的 getDocumentVersion() ,如果文档规范的版本与早期版本不同,则会对该文档进行流形索引,否则不会。通常您的文档版本字符串是文档的最后修改日期

  2. 不幸的是,从开发人员的角度来看,manifold 不包含太多文档,您可能的选择是浏览代码。解释得很清楚。

  3. 这是 mcf 文档中提供的最小内容

Using the "minimal" variant of the listed actions will perform the minimum possible amount of work, given the model that the connection type for the job uses. In some cases, this will mean that additions and modifications are indexed, but deletions are not detected mcf doc jobs

  • 您应该在 public String[] getDocumentVersions(..) 中实现您的逻辑

  • OOTB功能,已经足够了。但还需要考虑文件的许可的一件事。如果文档的权限发生变化,您可以选择更改文档的版本。

  • 关于search - ManifoldCF 作业调度的行为如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21851932/

    相关文章:

    java - 在java中的有序列表中进行二进制搜索

    java - SLF4J 记录到文件与 DB 与 Solr

    solr - 如何从 Solr 下载回索引文档?

    java - Solrj 查询 https 协议(protocol)错误

    Solr DataImportHandler - 转换 XML 字段

    perl - 如何确定两个字符串是否大部分相等(在 perl 中)?

    algorithm - 了解 alpha-beta 剪枝算法中的截止条件

    每个列表项的 C# 性能设置值

    jquery - 数据表搜索、排序不起作用

    pdf - Solr 查询 pdf 文件,不返回突出显示的内容