云原生大数据计算服务 MaxCompute - MaxCompute SQL支持Update/Delete/Merge Into语法 (公测)
Mar 16 2021
云原生大数据计算服务 MaxCompute适用客户
开发者,分析师,对数仓中数据有删除修改操作需求的用户
新增功能/规格
Update/Delete 是 MaxCompute 新支持的在行级别操作表或者分区数据的语句。相比之前订正表或者分区中的少量数据,也需要读取全量数据,关联生成新数据之后再Insert Overwrite全量写回的方法,Update/Delete 操作读写数据量都显著下降。当您对目标表的一次操作包括Insert、Update、Delete逻辑时,Merge Into功能可以用一条SQL语句进行一次扫描完成全部操作,执行效率更高。同时,Merge Into任务具备原子性,任一内部逻辑处理失败,则整体作业执行失败,避免同一批操作部分逻辑无法回退或重做的问题。 相关的,您需要创建 Transactional 表才能使用Update/Delete/Merge Into功能。并且因为大数据系统保证任务级别的ACID,当作业并发运行且操作的目标表相同时,可能会出现作业冲突,具体请参考MaxCompute并发写⾏为的ACID。 需要注意的是目前Update/delete/Merge Into 处于公测阶段,不收取计算费用,但公测期间也暂时不对您使用此功能用于生产的作业和数据提供保证,重要数据请做好备份。