开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

各位,以下问题有社么好的解决办法呢?

各位,请教个问题:batch任务 ,想往hive表里插入group by的结果。但是提示hive does not support consuming update and delete change,有什么好的解决办法吗?

展开
收起
圆葱猪肉包 2023-03-27 14:22:41 277 0
1 条回答
写回答
取消 提交回答
  • 如果一个表要实现update和delete功能,该表就必须支持ACID,而支持ACID,就必须满足以下条件:

    1、表的存储格式必须是ORC(STORED AS ORC);

    2、表必须进行分桶(CLUSTERED BY (col_name, col_name, ...) INTO num_buckets BUCKETS);

    3、Table property中参数transactional必须设定为True(tblproperties('transactional'='true'));

    4、以下配置项必须被设定:

     Client端:
    

    hive.support.concurrency – true hive.enforce.bucketing – true hive.exec.dynamic.partition.mode – nonstrict
    hive.txn.manager – org.apache.hadoop.hive.ql.lockmgr.DbTxnManager
    服务端:

    hive.compactor.initiator.on – true hive.compactor.worker.threads – 1 hive.txn.manager – org.apache.hadoop.hive.ql.lockmgr.DbTxnManager(经过测试,服务端也需要设定该配置项) 注意:上述配置项必须区分Client端和服务端。在Cloudera Manager上可以分别添加(hive—>配置—>高级),在更新部署配置信息的时候需要勾选部署客户端配置(默认是勾选的)。

    2023-03-28 14:36:37
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

热门讨论

热门文章

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载