通过 MLCP 分批分隔时的部分文档传输



在使用MLCP时,我在将文档从一个数据库复制到另一个数据库时,遇到了选项文件(options.txt)中给出的"-batch_size"选项的奇怪问题,例如,如果-batch_size = 10并且要传输的文档数量(根据提供的过滤选项)为106,现在我执行命令: mlcp.bat -options_file "options.txt"

收到的内容泵统计信息如下:

 INFO contentpump.LocalJobRunner:com.marklogic.mapreduce.ContentPumpStats:
 INFO contentpump.LocalJobRunner: INPUT_RECORDS: 106
 INFO contentpump.LocalJobRunner: OUTPUT_RECORDS: 106
 INFO contentpump.LocalJobRunner: OUTPUT_RECORDS_COMMITTED: 100
 INFO contentpump.LocalJobRunner: OUTPUT_RECORDS_FAILED: 0
 INFO contentpump.LocalJobRunner: Total execution time: 37 sec

似乎批处理后剩余的文档(批量大小= 10)即10 * 10 + 6,6文档没有传输到所需的数据库。

因此,不知何故,它只传输属于完整批次的文档,而不是无法形成完整批次的剩余文档。

有人可以为此提出解决方法以及此行为的原因吗?

您是否验证了"丢失"的文档是否在目标数据库中?

一段时间(至少在导入时)存在一个错误,其中统计信息有时不正确,即使行为是正确的。此问题已在 mlcp v8.0-4 中修复。

我要检查的另一件事是目标服务器上没有记录错误。OUTPUT_RECORDS <OUTPUT_RECORDS_COMMITTED可以指示发生了服务器端错误,导致某些提交失败,如下所述:>

http://docs.marklogic.com/guide/mlcp/getting-started#id_33299

最后,你使用什么过滤器?-query_filter可能会产生误报,因为它使用未经过滤的搜索。我怀疑这是你遇到的,但认为值得一提。这里谈到了:

http://docs.marklogic.com/guide/mlcp/export#id_85989

相关内容

  • 没有找到相关文章

最新更新