Výpočet počtu objektů blob a celkové velikosti kontejneru pomocí inventáře služby Azure Storage

Tento článek používá funkci inventáře služby Azure Blob Storage a Azure Synapse k výpočtu počtu objektů blob a celkové velikosti objektů blob na kontejner. Tyto hodnoty jsou užitečné při optimalizaci využití objektů blob na kontejner.

Požadavky

Nic

Povolení sestav inventáře

Prvním krokem v této metodě je povolení sestav inventáře pro váš účet úložiště. Možná budete muset počkat až 24 hodin po povolení generování sestav inventáře pro první sestavu.

Pokud máte sestavu inventáře k analýze, udělte sami sobě přístup pro čtení ke kontejneru, ve kterém se nachází soubor CSV sestavy tím, že přiřadíte roli Čtenář dat objektů blob služby Storage. Nezapomeňte použít e-mailovou adresu účtu, který používáte ke spuštění sestavy. Pokud chcete zjistit, jak uživateli přiřadit roli Azure pomocí řízení přístupu na základě role Azure (Azure RBAC), postupujte podle pokynů uvedených v tématu Přiřazení rolí Azure pomocí webu Azure Portal.

Poznámka:

Pokud chcete vypočítat velikost objektu blob ze sestavy inventáře, nezapomeňte do definice pravidla zahrnout pole schématu Content-Length .

Vytvoření pracovního prostoru Azure Synapse

Dále vytvořte pracovní prostor Azure Synapse, ve kterém spustíte dotaz SQL, který nahlásí výsledky inventáře.

Vytvoření dotazu SQL

Po vytvoření pracovního prostoru Azure Synapse proveďte následující kroky.

  1. Přejděte na https://web.azuresynapse.net.

  2. Vyberte kartu Vývoj na levém okraji.

  3. Vyberte velké znaménko plus (+) a přidejte položku.

  4. Vyberte skript SQL.

    Snímek obrazovky s výběrem skriptu SQL pro vytvoření nového dotazu

Spuštění dotazu SQL

Postupujte následovně:

  1. Do pracovního prostoru Azure Synapse přidejte následující dotaz SQL, který načte soubor CSV inventáře.

    bulk Pro parametr použijte adresu URL souboru CSV sestavy inventáře, který chcete analyzovat.

    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)
    
  2. Pojmenujte dotaz SQL v podokně vlastností na pravé straně.

  3. Publikujte dotaz SQL stisknutím kombinace kláves CTRL+S nebo výběrem tlačítka Publikovat vše .

  4. Výběrem tlačítka Spustit spusťte dotaz SQL. Počet objektů blob a celková velikost kontejneru se hlásí v podokně Výsledky .

    Snímek obrazovky s výstupem spuštění skriptu pro výpočet počtu objektů blob a celkové velikosti