Bearbeiten

Share via


Berechnen der Anzahl und Gesamtgröße von Blobs pro Container mit dem Azure Storage-Bestand

In diesem Artikel werden der Azure Blob Storage-Bestand und Azure Synapse verwendet, um die Blobanzahl und die Gesamtgröße von Blobs pro Container zu berechnen. Diese Werte sind bei der Optimierung der Blobverwendung pro Container nützlich.

Voraussetzungen

Keine

Aktivieren von Bestandsberichten

Im ersten Schritt dieser Methode werden in Ihrem Speicherkonto Bestandsberichte aktiviert. Möglicherweise müssen Sie nach dem Aktivieren von Bestandsberichten bis zu 24 Stunden warten, bis der erste Bericht generiert werden kann.

Wenn Sie einen Bestandsbericht analysieren möchten, weisen Sie sich für den Container, in dem sich die CSV-Datei des Berichts befindet, die Rolle Storage-Blobdatenleser zu. Verwenden Sie die E-Mail-Adresse des Kontos, mit dem Sie den Bericht ausführen. Weitere Informationen zum Zuweisen einer Azure-Rolle zu einem Benutzer mit rollenbasierter Zugriffssteuerung in Azure (Azure RBAC) finden Sie in den Anweisungen unter Zuweisen von Azure-Rollen über das Azure-Portal.

Hinweis

Um die Blobgröße aus dem Bestandsbericht zu berechnen, müssen Sie das Schemafeld Content-Length in die Regeldefinition einschließen.

Erstellen eines Azure Synapse-Arbeitsbereichs

Erstellen Sie einen Azure Synapse-Arbeitsbereich, in dem Sie eine SQL-Abfrage ausführen, um die Bestandsergebnisse zu protokollieren.

Erstellen der SQL-Abfrage

Führen Sie nach dem Erstellen des Azure Synapse-Arbeitsbereichs die folgenden Schritte aus.

  1. Navigieren Sie zu https://web.azuresynapse.net.

  2. Wählen Sie die Registerkarte Entwickeln am linken Rand aus.

  3. Wählen Sie das große Pluszeichen (+) aus, um ein Element hinzuzufügen.

  4. Wählen Sie SQL-Skript aus.

    Screenshot des auswählenden SQL-Skripts zum Erstellen einer neuen Abfrage.

Ausführen der SQL-Abfrage

Gehen Sie wie folgt vor:

  1. Fügen Sie die folgende SQL-Abfrage in Ihrem Azure Synapse-Arbeitsbereich hinzu, um die CSV-Bestandsdatei zu lesen.

    Verwenden Sie für den bulk-Parameter die URL der CSV-Datei für den Bestandsbericht, die analysiert werden soll.

    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. Geben Sie im Eigenschaftenbereich rechts einen Namen für die SQL-Abfrage ein.

  3. Veröffentlichen Sie die SQL-Abfrage durch Drücken von STRG+S oder durch Auswählen der Schaltfläche Alle veröffentlichen.

  4. Wählen Sie die Schaltfläche Ausführen aus, um die SQL-Abfrage auszuführen. Die Anzahl und Gesamtgröße der Blobs pro Container werden im Ergebnisbereich angezeigt.

    Screenshot der Ausgabe nach Ausführung des Skripts zum Berechnen der Anzahl und Gesamtgröße der Blobs.