是否可以通過編程方式刪除批量中的Azure blob對象? 一個一個刪除對象有時需要我們幾天。以編程方式刪除批量中的Azure Blob存儲對象
我們在Azure Blob存儲上放置了大量新文件,並刪除了所有我們想要刪除的過期文件,以避免不必要的費用。
我GOOGLE在網上/ MSDN /堆棧溢出 ,發現只有一個MSDN從2014指的是創建Microsoft網站上的功能請求話題。
是否可以通過編程方式刪除批量中的Azure blob對象? 一個一個刪除對象有時需要我們幾天。以編程方式刪除批量中的Azure Blob存儲對象
我們在Azure Blob存儲上放置了大量新文件,並刪除了所有我們想要刪除的過期文件,以避免不必要的費用。
我GOOGLE在網上/ MSDN /堆棧溢出 ,發現只有一個MSDN從2014指的是創建Microsoft網站上的功能請求話題。
是否可以通過編程方式刪除批量中的Azure blob對象?
不需要。您需要逐個刪除斑點。
你可以做什麼來加速這個過程是創建不同的容器(比如每個年/月組合的容器),並在其中放置相關的斑點。當您需要刪除該月份/年份的斑點時,只需刪除該容器即可。
當然可以(即使用PowerShell)
$Ctx = New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey
Get-AzureStorageBlob -Container "container-name" -Context $Ctx -Blob TellMeWhatToDelete* | Remove-AzureStorageBlob
即:這將刪除所有的PPT演示文檔中的容器
Get-AzureStorageBlob -Container "documents" -Context $Ctx -Blob *.pptx | Remove-AzureStorageBlob
或者你可以刪除最後沒有改變每一個的docx文件30天
Get-AzureStorageBlob -Container "documents" -Context $Ctx -Blob *.docx
| where {$_.LastModified -le (get-date).AddDays(-30) } | Remove-AzureStorageBlob
好的,但這真的會擴大到刪除30M文件批量?這不是一個假設的問題。這正是我現在正在盯着的。 –
什麼?當然可以。看到下面的回答 – EvertonMc
@EvertonMc你的代碼正在做的是列出blob,然後發送請求逐個刪除blob。這不是在批量恕我直言刪除。對我來說,批量刪除會給出Azure存儲的blob列表,並讓它在一個請求中刪除這些blob。 –