2016-11-03 197 views
0

我需要存储一些临时文件,可能是1到3个月。只需要保留最近三个月的文件。旧文件需要删除。我如何在azure blob存储中执行此操作?在这种情况下除了blob存储之外还有其他选择吗?如何存档Azure blob存储内容?

回答

-2

您可以使用Azure Cool Blob存储。

它比Blob存储更便宜,更适合存档。

您可以以较低的存储成本(在某些地区低至每GB $ 0.01美元)在Cool访问层中存储访问频率较低的数据,并以较低的访问成本访问热门访问层中访问频率更高的数据。

这里是一个文件,说明其功能:存储在Azure中的文件

https://azure.microsoft.com/en-us/blog/introducing-azure-cool-storage/

+0

是的我打算使用酷,但如何删除旧数据?数据超过3个月? – user43286

1

恕我直言,最好的选择是要么Blob存储或不过文件存储两者都不支持的内容自动到期(基于年龄或其他标准)。

此功能已被要求早一些的Blob存储,但不幸的是目前尚未取得任何进展(https://feedback.azure.com/forums/217298-storage/suggestions/7010724-support-expiration-auto-deletion-of-blobs)。

然而,你可以写一些你自己的东西来实现这一点。这非常简单:定期(例如一天一次),程序将获取斑点列表,并将斑点的最后修改日期与当前日期进行比较。如果blob的最后修改日期比期望的时间段早(您提到的1或3个月),则只需删除该blob即可。

您可以使用WebJobs,Azure FunctionsAzure Automation安排您的代码定期运行。实际上,如果您想使用Azure Automation Servicehttps://gallery.technet.microsoft.com/scriptcenter/Remove-Storage-Blobs-that-aae4b761,则可以使用现成的代码。

0

据我所知,Azure Blob是一种适用于存储某些临时文件的方法。对于您的场景,我认为没有内置选项可以删除旧文件,并且需要以编程方式或手动删除临时文件。

一个简单的方法,你可以尝试使用特定的格式(例如https://<your-storagename>.blob.core.windows.net/containerName/2016-11/fileNamehttps://<your-storagename>.blob.core.windows.net/2016-11/fileName)上传您的BLOB(文件),那么你可以通过手动Microsoft Azure Storage Explorer管理文件。

此外,您可以检查您的文件并删除旧文件,然后再上传新的临时文件。有关更多详细信息,您可以按照storage-blob-dotnet-store-temp-files并覆盖方法CleanStorageIfReachLimit来实现删除斑点(文件)的逻辑。

此外,您可以利用计划的Azure WebJob来清理您的斑点(文件)。