• COMPUTE INCREMENTAL STATS TABLENAME内存溢出


    背景:
    今天给生产的一张大表(120多亿的数据量)新加了一个字段:
    ALTER TABLE TABLENAME ADD COLUMNS (ENTRY_NAME VARCHAR(200) COMMENT'进件渠道名称');

    在针对这张表运行脚本的时候,在最后,COMPUTE INCREMENTAL STATS TABLENAME
    出现内存溢出的错误: Memory limit exceeded

    原因:
    应该是数据量过大,导致内存溢出

    解决方法:

    OMPUTE INCREMENTAL STATS [TABLENAME PARTITION (data_dt >= '2020-01-01' and data_dt <= '2020-06-01');

    OMPUTE INCREMENTAL STATS [TABLENAME PARTITION (data_dt >= '2019-01-01' and data_dt <= '2020-01-01')

    (PARTITION)只允许分区子句与增量子句组合使用。对于计算增量统计,它是可选的,对于删除增量统计,它是必需的。
    当您在COMPUTE INCREMENTAL STATS或DROP INCREMENTAL STATS语句中通过
    PARTITION(partition_spec)子句指定分区时,必须在规范中包含所有分区列,并为所有分区键列指定常量值。

    思路:按日期分区进行分段统计。

  • 相关阅读:
    ASP.Net Core -- 模型验证
    C# -- nameof什么意思?
    C# -- value是什么意思?
    C# -- 异常(二)
    C# -- 异常(一)
    C# -- 委托(二)
    C# -- 委托(一)
    ASP.Net Core -- Controller返回View
    ASP.Net Core -- 中间件
    ASP.Net Core -- 服务注册和管道
  • 原文地址:https://www.cnblogs.com/hello-wei/p/13032963.html
Copyright © 2020-2023  润新知