You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于原Blob的最后修改时间删除经Data Factory自动迁移的Blob?

如何基于原Blob的最后修改时间删除经Data Factory自动迁移的Blob?

嗨,我来帮你梳理下最适合的解决方案——毕竟处理百万级Blob,效率和可靠性是关键!你已经用ADF复制Blob并打算保留原最后修改时间的思路是对的,接下来直接用Azure存储账户的生命周期管理策略就能完美解决,完全不用依赖容易超时的Azure Functions,具体步骤如下:

第一步:确保ADF复制活动正确保留原Blob的最后修改时间到元数据

你提到的$$LASTMODIFIED方向是对的,但要确保在复制活动里正确配置自定义元数据:

  • 打开ADF的复制活动,切换到「设置」标签页
  • 在「自定义元数据」区域添加一条规则:
    • 键名可以设为OriginalLastModified(命名尽量清晰,方便后续识别)
    • 值选择动态内容,输入@item().LastModified(或者直接用$$LASTMODIFIED,两者都能获取原Blob的最后修改时间,注意格式是标准ISO 8601时间字符串,比如2023-10-05T14:48:00Z)
  • 这样复制到新存储账户的每个Blob,都会带上记录原最后修改时间的自定义元数据。

第二步:给新存储账户配置基于自定义元数据的生命周期策略

这是核心步骤,利用Azure托管的生命周期管理来批量处理百万Blob,完全不会有超时问题:

  1. 登录Azure门户,打开目标存储账户
  2. 找到「数据管理」下的「生命周期管理」,点击「添加规则」
  3. 规则配置要点:
    • 规则名称:比如DeleteBlobsByOriginalModifiedTime
    • 规则类型:选择「生命周期」
    • Blob类型:根据你的实际情况选(比如块Blob)
    • 过滤器:勾选「元数据」,添加条件:OriginalLastModified <= 当前日期减去X天(这里的X就是你想要的保留天数)
    • 动作:在「基础Blob」里选择「删除」,并设置「修改后天数」为0(因为我们已经通过元数据过滤器筛选出了满足保留期的Blob,这里直接触发删除即可)

如果习惯用ARM模板或者JSON配置,也可以直接导入类似下面的规则(替换X为你的保留天数,比如30天):

{
  "rules": [
    {
      "name": "DeleteBlobsByOriginalModifiedTime",
      "enabled": true,
      "type": "Lifecycle",
      "definition": {
        "filters": {
          "blobTypes": ["blockBlob"],
          "metadata": {
            "OriginalLastModified": "<='[utcNow('yyyy-MM-dd') addDays(-30)]'"
          }
        },
        "actions": {
          "baseBlob": {
            "delete": {
              "daysAfterModificationGreaterThan": 0
            }
          }
        }
      }
    }
  ]
}

为什么不推荐Azure Functions?

你担心的超时问题确实是硬伤——单函数实例的执行上限最多10分钟,处理百万级Blob根本不现实,而且还要自己处理批量、重试、并发控制,复杂度高还容易出错。而生命周期管理是Azure原生托管的批量处理服务,后台会自动分片处理大量Blob,完全不用你操心资源和超时问题。

额外注意事项

  • 确保自定义元数据的时间格式是标准ISO 8601,否则生命周期策略无法正确解析时间条件
  • 如果已经复制了部分Blob但没加元数据,可以用ADF的「复制活动」重新同步元数据,或者用AzCopy的sync命令补充元数据
  • 配置完规则后,可以先选一小部分Blob做测试,验证是否在预期时间触发删除动作

备注:内容来源于stack exchange,提问作者Domenico F.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 15:39:36