首页 > 解决方案 > Nifi在docker上向德鲁伊插入数据

问题描述

我在不同的服务器上安装了 2 个 docker-containers

  1. 码头工人德鲁伊
  2. 码头工人-NiFi

当我使用 NiFi 向 druid 插入数据时,我遇到了这个错误:

Nifi向德鲁伊插入数据

你有什么想法?druid这个配置怎么做?

太感谢了 :)

标签: dockerapache-nifidruid

解决方案


正如您在 Reader/Writer 控制器服务中使用的那样

架构访问策略作为使用'SchemaName'属性然后

确保您具有与flowfile关联的schema.name属性。

要添加属性,请使用更新属性处理器

添加名为 schema.name的新属性,并将值添加为schema_name

例子:

如果您使用 AvroSchemaRegistry 访问架构,那么架构的名称将是您的 schema.name 属性值。

有关更多详细信息,请参阅链接并查看流程中UpdateAttribute处理器的配置。

更新:

根据您的示例数据而不是使用 JsonPathReader 使用 JsonTreeReader 和 JsonSetWriter 控制器服务。

您在 AvroSchemaRegistry 控制器服务中缺少架构属性。

在 AvroSchemaRegistry 中通过单击右上角的 + 符号添加属性

演示

{
    "type": "record",
    "name": "balances",
    "namespace": "nifi",
    "fields": [{
        "name": "submit_date",
        "type": ["null",
        "string"]
    },
    {
        "name": "request_type",
        "type": ["null",
        "string"]
    },
    {
        "name": "origin",
        "type": ["null",
        "string"]
    },{
        "name": "description",
        "type": ["null",
        "string"]
    }]
}

推荐阅读