You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NiFi 1.20.0中ExecuteSQL输出格式异常及Avro格式配置问题

解决NiFi 1.20.0 ExecuteSQL队列内容无法以Avro格式查看的问题

问题原因

NiFi 1.20.0中,ExecuteSQL处理器默认不再直接输出Avro二进制数据,而是依赖RecordSetWriter控制器服务定义输出格式。若未正确配置该服务,输出内容会被标记为application/octet-stream,导致无法在队列中格式化查看。

解决方案步骤

  1. 创建并配置AvroRecordSetWriter控制器服务
    • 进入NiFi UI的「控制器设置」页面,切换到「控制器服务」标签
    • 点击「+」添加新服务,选择AvroRecordSetWriter类型
    • 启用服务后配置核心参数:
      • 将Schema Write Strategy设置为Embed Schema(嵌入Schema更便于后续内容查看)或Set Schema Name
      • 其余参数保持默认即可
  2. 关联ExecuteSQL与RecordSetWriter
    • 打开ExecuteSQL处理器配置页,切换到「设置」标签
    • 在「Record Writer」下拉菜单中选择刚创建的AvroRecordSetWriter服务
    • 保存配置并重启ExecuteSQL处理器
  3. 验证效果
    • 触发ExecuteSQL执行后,查看队列数据流项,内容类型应显示为avro/binary或application/avro
    • 点击「View Content」即可正常格式化查看Avro内容

额外说明

  • 若需保留原有Avro输出行为,确保AvroRecordSetWriter的Schema Access Strategy配置正确,避免因Schema缺失导致输出异常
  • 队列中已有的application/octet-stream类型数据需清理后,重新生成新数据才能生效

内容的提问来源于stack exchange,提问作者Sampath Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 03:42:37