adb就是先删除再插入?高频,这个词能不能量化出来。单核多少UPDATE QPS才算高频?我用fli

adb就是先删除再插入?高频,这个词能不能量化出来。单核多少UPDATE QPS才算高频?我用flink执行的,确实会不断update 宽表的某些字段。

展开
收起
真的很搞笑 2023-04-27 08:20:18 172 分享 版权
2 条回答
写回答
取消 提交回答
  • 这个无法量化,高频率的update会导致集群负载过高,批量更新建议使用 REPLACE INTO,根据主键判断,如果数据存在,先删除后插入。参考文档:https://help.aliyun.com/document_detail/123585.htm?spm=a2c4g.128660.0.0.37a963b4TleOzN#concept-2138844,此回答整理自钉群“云数据仓库ADB-开发者群”

    2023-04-27 17:48:05
    赞同 展开评论
  • ADB 本质上是一个关系型数据库,它采用了行存储引擎。对于 UPDATE 操作,ADB 的实现方式是先在表中物理删除旧记录,再插入新记录(如果新记录与旧记录分布在同一个 block 中,则会覆盖旧记录)。

    至于“高频”这个词,它并没有一个清晰的量化标准。不同的场景和系统有不同的定义。通常情况下,高频可以理解为每秒更新次数很大,比如每秒更新数百、数千次。

    单核的 UPDATE QPS 取决于多个因素,比如硬件配置、SQL 语句复杂度、索引建立情况等等。通常情况下,如果单核 UPDATE QPS 能够达到数百或数千次,则可以认为是高频。ADB 的性能会受到多个因素的影响,比如网卡带宽、CPU 和内存负载、磁盘 IO 等。

    对于你的情况,如果你的 UPDATE 操作确实很频繁且对性能有一定要求,建议对表的结构和索引设计合理,以及对 SQL 语句进行优化。

    2023-04-27 08:25:55
    赞同 展开评论

阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。

收录在圈子:
+ 订阅
让用户数据永远在线,让数据无缝的自由流动
还有其他疑问?
咨询AI助理