开发者社区 问答 正文

Flink报错:Table sink 'a' doesn't support consuming u

已解决

Flink报错:Table sink 'a' doesn't support consuming update and delete changes which is produced by node

展开
收起
阿里云服务支持 2022-12-20 14:19:59 1323 分享 版权
1 条回答
写回答
取消 提交回答
  • 官方回答

    Flink语法检查报错详情:org.apache.flink.table.api.TableException: Table sink 'xxx' doesn't support consuming update and delete changes which is produced by node xxx(xxx) at

    org.apache.flink.table.planner.plan.optimize.traitinference.SatisfyModifyKindSetTraitVisitor.applyTraitToWrapper(SatisfyModifyKindSetTraitVisitor.java:493) at

    org.apache.flink.table.planner.plan.optimize.traitinference.SatisfyModifyKindSetTraitVisitor.visit(SatisfyModifyKindSetTraitVisitor.java:345)。

    报错原因:append only类型结果表存储(kafka、sls、datahub 等)无法接收上游 update(retract/撤回)记录。

    解决方案:上游涉及retract,如:双流 left join、last value、last row、双层 groupAGG等,请使用支持写入update记录的 sink,如upsert kafka、rds、Hologres、hbase等支持主键更新的存储做结果表。

    2022-12-20 14:27:50
    赞同 展开评论
收录在圈子:
作为全球云计算的领先者,阿里云为全球230万企业提供着云计算服务,服务范围覆盖200多个国家和地区。我们致力于为企业、政府等组织机构提供安全可靠的云计算服务,给用户带来极速愉悦的服务体验。
还有其他疑问?
咨询AI助理