删除某些天数自动化的Azure表存储中的条目

时间:2016-07-26 11:38:52

标签: azure azure-storage azure-table-storage

我希望自动删除Azure表存储中的条目前一个月。

现在在Azure表存储中,我有一年的条目。我手动删除它。但是对于未来,我需要自动化这个过程。我需要从Azure表存储中删除一个月的条目。

4 个答案:

答案 0 :(得分:2)

如果您有partitionKey和rowKey,则可以直接删除条目,如文档中所述https://msdn.microsoft.com/en-us/library/dd135727.aspx ,否则你需要先选择条目,知道它们(partitionKey,rowKey),然后删除它们。

答案 1 :(得分:2)

基本上,要删除Azure表存储中的旧实体,您可以先使用Filtering on DateTime Properties查询它们,然后在循环中删除它们。

关于

  

但是对于未来,我需要自动化这个过程

如果您有Azure应用服务,则可以scheduling WebJobs来满足您的要求。

此外,您还可以利用Function App来实施删除操作,并使用Azure Scheduler配置调度api的计划。

如有任何疑问,请随时告诉我。

答案 2 :(得分:1)

您需要查询整个表,找到时间戳超过1个月的实体,并删除所有这些实体。批处理操作在这里可能很有用,因为它支持通过一个请求删除具有相同分区键的多个实体。

查询实体REST API:https://msdn.microsoft.com/en-us/library/azure/dd179421.aspx

删除实体REST API:https://msdn.microsoft.com/en-us/library/azure/dd135727.aspx

在REST API中执行实体组事务:https://msdn.microsoft.com/en-us/library/azure/dd894038.aspx

如果您使用的是C#,可以参考以下文档:https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-tables/#delete-an-entity

答案 3 :(得分:0)

查看以下用于查询存储表的Powershell解决方案。您可以将其合并到某种类型的自动化解决方案中以定期运行。

https://github.com/chriseyre2000/Powershell/tree/master/Azure2