开发者社区 > 数据库 > 数据仓库 > 正文

云数据仓库ADB中二级分区键 有过期策略么?

云数据仓库ADB中二级分区键 有过期策略么?

展开
收起
十一0204 2023-08-16 07:54:15 99 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    云数据仓库ADB(AnalyticDB)并不支持针对二级分区键的过期策略。过期策略目前仅适用于一级分区键。

    在ADB中,一级分区键用于将数据划分为较大的分区,以便更好地管理和查询数据。而二级分区键则用于进一步细分一级分区中的数据。但是,ADB目前没有提供针对二级分区键的内置过期策略功能。

    如果你需要处理二级分区键的过期数据,你可能需要考虑其他方法,例如定期执行自定义的数据清理任务,或者使用外部工具和脚本来管理过期数据的删除或归档。

    2023-08-16 19:15:57
    赞同 展开评论 打赏
  • 意中人就是我呀!

    "1. 创建分区表
    如果业务明确有增量数据导入需求,创建普通表时可以同时指定分布键和分区,分区可以实现数据的增量同步,并且在查询时可以实现分区裁剪,有效提升查询性能。创建普通表时,通过""PARTITION BY ""关键词指定分区,详情请参考:CREATE TABLE, 目前切分粒度只支持年、月、日以及原始值,例如:

    直接用ds的值来做分区

    PARTITION BY VALUE(ds)

    ds转换后的天做分区

    PARTITION BY VALUE(DATE_FORMAT(ds, '%Y%m%d'))

    ds转换后的月做分区

    PARTITION BY VALUE(DATE_FORMAT(ds, '%Y%m'))

    ds转换后的年做分区

    PARTITION BY VALUE(DATE_FORMAT(ds, '%Y'))

    1. 分区合理性的诊断
      分区是否合理,ADB提供了诊断结果,详情请参考:数据建模优化
    2. 分区的过期策略
      目前分区过期策略是依据大小排序,只保留最大的N个分区,其中N为生命周期的大小。假设表A定义的生命周期个数为3,目前存在的分区为202001,202002,202003。当分区值为20204的数据写入进来时202001分区就会被淘汰。需要注意的是分区淘汰是延迟进行的,不保证20204的数据写入后立即会淘汰202001。此外在使用分区时也要注意脏数据带来的误淘汰问题,如果此时表A分别写入了分区值为300001,300002,300003的三条脏数据,那么分区淘汰策略也会被触发,整表将只剩下分区值最大的三条脏数据。此答案整理至钉群“云数据仓库ADB-开发者群“。"
    2023-08-16 08:58:45
    赞同 展开评论 打赏

相关产品

  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 热门讨论

    热门文章

    相关电子书

    更多
    消电行业数据中台解决方案白皮书 立即下载
    (终极版)2020阿里云金融数据中台报告 立即下载
    2020年中国乳制品行业数据中台研究报告 立即下载