本文使用 Azure Blob 儲存體詳細目錄功能和 Azure Synapse 來計算 Blob 計數與每個容器的 Blob 大小總計。 針對每個容器最佳化 Blob 使用量時,這些值會很有用。
使用 Azure 儲存體 清查計算每個容器的 Blob 計數和總大小
必要條件
無
啟用清查報表
此方法的第一個步驟是在您的儲存體帳戶上啟用詳細目錄報告。 為您的第一份報告啟用詳細目錄報告之後,您可能必須等待最多 24 小時才會產生報告。
當您有要分析的詳細目錄報告時,請將儲存體 Blob 資料器角色指派給自己,以授與您自己對報告 CSV 檔案所在容器的讀取權限。 請務必使用您用來執行報告的帳戶電子郵件地址。 若要瞭解如何使用 Azure 角色型存取控制 (Azure RBAC) 將 Azure 角色指派給使用者,請遵循使用 Azure 入口網站指派 Azure 角色中提供的指示。
注意
若要從清查報表計算 Blob 大小,請務必在規則定義中包含 Content-Length 結構描述欄位。
建立 Azure Synapse 工作區
接下來,建立 Azure Synapse 工作區,您將在其中執行 SQL 查詢來報告詳細目錄結果。
建立 SQL 查詢
在您建立 Azure Synapse 工作區之後,請執行下列步驟。
選取左邊緣的 [開發] 索引標籤。
選取大型加號 (+) 來新增項目。
選取 [SQL 指令碼]。
執行 SQL 查詢
執行以下步驟:
在您的 Azure Synapse 工作區中新增下列 SQL 查詢,以讀取詳細目錄 CSV 檔案。
針對
bulk
參數,請使用您想要分析的詳細目錄報告 CSV 檔案 URL。SELECT LEFT([Name], CHARINDEX('/', [Name]) - 1) AS Container, COUNT(*) As TotalBlobCount, SUM([Content-Length]) As TotalBlobSize FROM OPENROWSET( bulk '<URL to your inventory CSV file>', format='csv', parser_version='2.0', header_row=true ) AS Source GROUP BY LEFT([Name], CHARINDEX('/', [Name]) - 1)
在右側的 [屬性] 窗格中命名您的 SQL 查詢。
按 CTRL + S 或選取 [全部發佈] 按鈕,以發佈您的 SQL 查詢。
選取 [執行] 按鈕以執行 SQL 查詢。 [結果] 窗格中會報告每個容器的 Blob 計數和大小總計。