我正在寻找为我的某个容器设置策略,以便删除或仅保留x天的数据。因此,如果x为30,则该容器应仅包含少于30天的文件。如果文件在容器中放置超过30天,则应将其丢弃。有什么办法可以配置吗?
答案 0 :(得分:3)
Azure Blob存储目前不支持此类事情。您需要编写自己的东西,定期运行以执行此检查并删除旧blob。
另一方面,此功能一直悬而未决(自2011年起):https://feedback.azure.com/forums/217298-storage/suggestions/2474308-provide-time-to-live-feature-for-blobs。
<强>更新强>
如果您需要自己动手,有两件事需要考虑:
如果您决定使用Azure自动化,那么您可以使用已经可以使用的Runbook(无需编写代码)。您可以在此处找到有关此内容的更多详细信息:https://gallery.technet.microsoft.com/scriptcenter/Remove-Storage-Blobs-that-aae4b761。
答案 1 :(得分:0)
Azure Blob存储生命周期(预览)现已可用,并使用它来创建具有不同规则的策略。
这是删除超过30天的Blob的规则
{
"version": "0.5",
"rules": [
{
"name": "expirationRule",
"type": "Lifecycle",
"definition": {
"filters": {
"blobTypes": [ "blockBlob" ]
},
"actions": {
"baseBlob": {
"delete": { "daysAfterModificationGreaterThan": 30}
}
}
}
}
]
}
有关更多详细信息,请参阅此Azure Blob storage Lifecycle