请问一下DataWorks百万级别的数据向某一张表insert overwrite的时候正好有人查询,中间磁盘写入的反应时间可感知吗?我的理解是底层会先进行truncate,然后把读取磁盘的数据写入结果表
在DataWorks中使用INSERT OVERWRITE语句向表中插入数据时,如果正好有人在查询同一张表,磁盘写入的反应时间可能会受到一定的影响。
INSERT OVERWRITE操作会先清空表中的原有数据,然后再将新数据插入到表中。这个过程中,如果有用户正在查询该表,可能会遇到以下情况:
为了避免这种情况,通常建议在进行大规模的数据写入操作之前,通知相关的用户或采取措施确保没有用户正在使用表,比如设置表的锁定状态或者在非高峰时段执行写入操作。此外,对于频繁更新的大表,可以考虑使用分区表来减少对整个表的操作,从而减轻对查询性能的影响。
可以参考看下 maxcompute的ACID特性 如果还是不能解决 可以咨询下mc同学帮忙看看 https://help.aliyun.com/zh/maxcompute/product-overview/acid-semantics?spm=a2c4g.11186623.0.i1,此回答整理自钉群“DataWorks交流群(答疑@机器人)”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。