云数据仓库ADB若第一天我写入数据并创建出10个分区,第二天我再创建1个分区,那被删除的分区是哪个?[阿里云云原生数据仓库]

“问题1:云数据仓库ADB设置分区键的问题,LIFECYCLE 设为10,如果第一天我写入数据并创建出10个分区,然后第二天我再创建1个分区,那被删除的分区是哪个?
问题2:那么LIFECYCLE =10,第一天创建的10个分区,全部都是10天的生命周期?https://help.aliyun.com/zh/analyticdb-for-mysql/developer-reference/create-table?spm=a2c4g.11186623.0.0.20617b0ezueFxe 按这里的文档,LIFECYCLE 是限制每个节点的分区上限。那么在我的例子,第一天创建10个分区已经达到上限,再继续创建分区的话就需要删除老分区。在你们的例子中,是一天创建1个分区,这很好理解,那自然是删除最早的一天的分区。但在我的例子中,我1天创建了10个分区,并达到LIFECYCLE设定的分区上限,官方文档有这么两段话,那一段比较准确?一:LIFECYCLE 365表示每个节点最多保留的分区个数为365,即如果数据保存天数为365天,则第366天写入数据后,系统会自动删除第1天写入的数据。二:您可以通过LIFECYCLE N关键字实现表生命周期管理,即对分区进行排序,超出N的分区会被过滤。


「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 在云数据仓库ADB中,如果你将分区的LIFECYCLE设置为10,并在第一天写入数据并创建了10个分区,然后在第二天创建了一个新分区,那么被删除的分区将是最早的一个分区。

    ADB的分区按照分区键的值进行排序,并根据LIFECYCLE参数设置保留的分区数量。当新的分区创建时,系统会检查现有的分区数量是否超过LIFECYCLE设置的值。如果超过了LIFECYCLE设置的值,系统会删除最早的一个分区。

    在你的情况下,由于LIFECYCLE设置为10,当第二天创建新分区时,系统会检查分区的数量是否已经超过10个。如果超过了,那么最早的一个分区将被删除,以保持总分区数不超过10个。

  2. “回答1: https://help.aliyun.com/zh/analyticdb-for-mysql/use-cases/schema-design?spm=a2c4g.11186623.0.i12
    可以看考一下文档。
    回答2:
    建表时设置LIFECYCLE 10,表示每个节点最多保留的分区个数为10,即如果数据保存天数为10天,则第11天写入数据后,系统会自动删除第1天写入的数据。建表时设置好的生命周期,如果要修改为11,需要alter table去修改,修改后手动触发build任务,任务结束后生效。 此回答整理至钉群“云数据仓库ADB-开发者群”。”