从 Nifi 摄取到 MarkLogic Data Hub 时设置 Headers

Set Headers when Ingesting from Nifi into MarkLogic Data Hub

当我将文档导入 MarkLogic 数据中心时,会在 JSON 文档中自动创建一些 header。 示例:

"headers": {
  "sources": [
    {
      "name": "customer-db-a"
    }
  ],
  "createdOn": "2020-03-11T13:31:28.6069705+01:00",
  "createdBy": "admin"
}

当我从 Apache Nifi 摄取时(使用 mlRunIngest 转换),是否可以动态设置源的 header? 我想对多个来源重复使用相同的摄取步骤。

在Nifi中,在MarkLogic处理器中,自定义的属性名为“trans:options”可以用来传入JSONheaders。在 header 秒中,可以定义源。

示例:

此外,占位符currentDateTimecurrentUser可以在header中用于设置当前时间戳和当前用户:

{
    "headers" : {
      "sources" : [
        {
            "name": "my-nifi-source"
        }
      ],
      "createdOn" : "currentDateTime",
      "createdBy" : "currentUser"
    }
}