ManifoldCF作业调度的行为如何?

时间:2014-02-18 11:09:36

标签: search solr

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

现在作为实施的一部分,我计划引入多个存储库,例如sharepoint,文件系统等。所以现在我有三个文档存储库:alfresco,sharepoint&文件系统。我计划安排在每个存储库中运行的作业,并以特定的时间间隔对其进行爬网。但我有以下争论。

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

1 个答案:

答案 0 :(得分:0)

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

  1. 它取决于您的存储库连接器的编写方式,通常在作业运行时它运行存储库连接器的getDocumentVersion(),如果文档规范的版本与早期版本不同,则不会记录其他文件的歧管索引。通常,您的文档版本字符串是文档的最后修改日期

  2. 不幸的是,从开发人员的角度来看,歧管并不包含太多的文档,你可能的赌注是通过代码。这很有说服力。

  3. 这是根据mcf文档

  4. 呈现的最小值
      

    使用" minimal"考虑到作业的连接类型使用的模型,列出的操作的变体将执行最小可能的工作量。在某些情况下,这意味着会对添加和修改编制索引,但不会检测到删除mcf doc jobs

    1. 你应该在public String [] getDocumentVersions(..)

    2. 中实现你的逻辑
    3. OOTB功能,已经足够了。但有一点需要考虑文件的许可。如果更改了文档的权限,您可以选择更改文档的版本。