Erstellen einer Event Grid-Datenverbindung für Azure Data Explorer

In diesem Artikel erfahren Sie, wie Blobs aus Ihrem Speicherkonto unter Verwendung einer Event Grid-Datenverbindung in Azure Data Explorer erfasst werden. Sie erstellen eine Event Grid-Datenverbindung, über die ein Azure Event Grid-Abonnement festgelegt wird. Das Event Grid-Abonnement leitet Ereignisse aus Ihrem Speicherkonto über Azure Event Hubs an Azure Data Explorer weiter.

Hinweis

Die Erfassung unterstützt eine maximale Dateigröße von 6 GB. Es wird empfohlen, Dateien zwischen 100 MB und 1 GB zu erfassen.

Informationen zum Erstellen der Verbindung mithilfe der Kusto-SDKs finden Sie unter Erstellen einer Event Grid-Datenverbindung mit SDKs.

Allgemeine Informationen zur Erfassung in Azure Data Explorer aus Event Grid finden Sie unter Herstellen einer Verbindung mit Event Grid.

Hinweis

Um die beste Leistung mit der Event Grid-Verbindung zu erzielen, legen Sie die rawSizeBytes Erfassungseigenschaft über die Blobmetadaten fest. Weitere Informationen finden Sie unter Erfassungseigenschaften.

Voraussetzungen

Erstellen einer Event Grid-Datenverbindung

In diesem Abschnitt stellen Sie eine Verbindung zwischen Event Grid und Ihrer Azure Data Explorer-Tabelle her.

  1. Navigieren Sie im Azure-Portal zu Ihrem Azure Data Explorer-Cluster.

  2. Wählen Sie unter Datendie Option Datenbanken>TestDatenbank aus.

    Screenshot des Datenbankabschnitts des Clusters mit einer Liste der darin enthaltenen Datenbanken.

  3. Wählen Sie unter Einstellungendie Option Datenverbindungen und dann Datenverbindung> hinzufügenEvent Grid (Blob Storage) aus.

    Screenshot der Seite

  4. Füllen Sie das Event Grid-Datenverbindungsformular mit den folgenden Informationen aus:

    Screenshot des Event Grid-Bereichs mit den Details für die Datenverbindung.

    Einstellung Empfohlener Wert Feldbeschreibung
    Name der Datenverbindung test-grid-connection Der Name der Verbindung, die Sie im Azure Data Explorer erstellen möchten. Datenverbindungsnamen dürfen nur alphanumerische, Bindestrich- und Punktzeichen enthalten und bis zu 40 Zeichen lang sein.
    Speicherkontoabonnement Ihre Abonnement-ID Die Abonnement-ID, unter der sich Ihr Speicherkonto befindet.
    Ereignistyp Blob erstellt oder Blob umbenannt Der Typ des Ereignisses, das die Erfassung auslöst Blob umbenannt wird nur für ADLSv2-Speicher unterstützt. Navigieren Sie zum Umbenennen eines Blobs zum Blob in Azure-Portal, klicken Sie mit der rechten Maustaste auf das Blob, und wählen Sie Umbenennen aus. Folgende Typen werden unterstützt: „Microsoft.Storage.BlobCreated“ oder „Microsoft.Storage.BlobRenamed“.
    Speicherkonto gridteststorage1 Der Name des zuvor erstellten Speicherkontos.
    Ressourcenerstellung Automatisch Das Aktivieren der automatischen Ressourcenerstellung bedeutet, dass Azure Data Explorer ein Event Grid-Abonnement, einen Event Hubs-Namespace und einen Event Hubs für Sie erstellt. Andernfalls müssen Sie diese Ressourcen manuell erstellen, um die Erstellung der Datenverbindung sicherzustellen. Weitere Informationen finden Sie unter Manuelles Erstellen von Ressourcen für die Event Grid-Erfassung.
    1. Optional können Sie bestimmte Event Grid-Themen nachverfolgen. Legen Sie die Filter für die Benachrichtigungen wie folgt fest:

      • Das Feld Präfix ist das Literalpräfix des Themas. Wenn das angewendete Muster mit beginnt, kann es mehrere Container, Ordner oder Blobs umfassen. Platzhalter sind nicht zulässig.
        • Zum Definieren eines Filters für den Blobcontainer muss das Feld wie folgt festgelegt werden: .
        • Zum Definieren eines Filters für ein Blobpräfix (oder einen Ordner in Azure Data Lake Gen2) muss das Feld wie folgt festgelegt werden: .
      • Das Feld Suffix ist das Literalsuffix des Blobs. Platzhalter sind nicht zulässig.
      • Mit dem Feld Groß-/Kleinschreibung beachten wird angegeben, ob bei den Präfix- und Suffixfiltern nach Groß-/Kleinschreibung unterschieden wird.

      Weitere Informationen zum Filtern von Ereignissen finden Sie unter Blob Storage-Ereignisse.

    2. Optional können Sie die Datenroutingeinstellungen gemäß den folgenden Informationen angeben. Sie müssen nicht alle Datenroutingeinstellungen angeben. Es ist auch zulässig, nur einen Teil der Einstellungen anzugeben.

      Einstellung Empfohlener Wert Feldbeschreibung
      Weiterleiten der Daten an andere Datenbanken zulassen (Datenverbindung mit mehreren Datenbanken) Nicht zulassen Aktivieren Sie diese Option, wenn Sie die der Datenverbindung zugeordnete Standardzieldatenbank überschreiben möchten. Weitere Informationen zum Datenbankrouting finden Sie unter Ereignisrouting.
      Tabellenname TestTable Die Tabelle, die Sie unter TestDatabase erstellt haben.
      Datenformat JSON Unterstützte Formate sind APACHEAVRO, Avro, CSV, JSON, ORC, PARQUET, PSV, RAW, SCSV, SOHSV, TSV, TSVE, TXT und W3CLOG. Die unterstützten Komprimierungsoptionen sind Zip und GZip.
      Zuordnungsname TestTable_mapping Die Zuordnung, die Sie in TestDatabase erstellt haben, um eingehende Daten den Spaltennamen und Datentypen von TestTable zuzuordnen. Wenn nicht angegeben, wird eine vom Schema der Tabelle abgeleitete Identitätsdatenzuordnung automatisch generiert.
      Formatfehler ignorieren Ignorieren Aktivieren Sie diese Option, wenn Sie Formatfehler für das JSON-Datenformat ignorieren möchten.

      Hinweis

      Bei Tabellen- und Zuordnungsnamen wird die Groß-/Kleinschreibung beachtet.

    3. Optional können Sie unter Erweiterte Einstellungen den Typ der verwalteten Identität angeben, der von Ihrer Datenverbindung verwendet wird. Standardmäßig ist Systemseitig zugewiesen ausgewählt.

      Wenn Sie Benutzerseitig zugewiesen auswählen, müssen Sie manuell eine verwaltete Identität zuweisen. Wenn Sie einen Benutzer auswählen, der Ihrem Cluster noch nicht zugewiesen ist, wird dieser automatisch zugewiesen. Weitere Informationen finden Sie unter Konfigurieren von verwalteten Identitäten für Ihren Azure Data Explorer-Cluster.

      Wenn Sie Keine auswählen, werden das Speicherkonto und Event Hub über Verbindungszeichenfolgen authentifiziert. Diese Methode wird nicht empfohlen.

      Screenshot des Abschnitts

  5. Klicken Sie auf Erstellen

Verwenden der Event Grid-Datenverbindung

In diesem Abschnitt wird gezeigt, wie Sie die Erfassung von Azure Blob Storage oder Azure Data Lake Gen 2 in Ihren Cluster nach der Bloberstellung oder Blobumbenennung auslösen.

Wählen Sie die relevante Registerkarte basierend auf dem Typ des Speicher-SDK aus, das zum Hochladen von Blobs verwendet wird.

Im folgenden Codebeispiel wird das Azure Blob Storage SDK verwendet, um eine Datei in Azure Blob Storage hochzuladen. Der Upload löst die Event Grid-Datenverbindung aus, die die Daten in Azure Data Explorer erfasst.

var azureStorageAccountConnectionString = <storage_account_connection_string>;
var containerName = <container_name>;
var blobName = <blob_name>;
var localFileName = <file_to_upload>;
var uncompressedSizeInBytes = <uncompressed_size_in_bytes>;
var mapping = <mapping_reference>;
// Create a new container if it not already exists.
var azureStorageAccount = new BlobServiceClient(azureStorageAccountConnectionString);
var container = azureStorageAccount.GetBlobContainerClient(containerName);
container.CreateIfNotExists();
// Define blob metadata and uploading options.
IDictionary<String, String> metadata = new Dictionary<string, string>();
metadata.Add("rawSizeBytes", uncompressedSizeInBytes);
metadata.Add("kustoIngestionMappingReference", mapping);
var uploadOptions = new BlobUploadOptions
{
    Metadata = metadata,
};
// Upload the file.
var blob = container.GetBlobClient(blobName);
blob.Upload(localFileName, uploadOptions);

Hinweis

Azure Data Explorer löscht die Blobs nach der Erfassung nicht. Behalten Sie die Blobs für drei bis fünf Tage bei, indem Sie den Azure Blob Storage-Lebenszyklus zum Verwalten von Bloblöschungen verwenden.

Hinweis

Das Auslösen der Erfassung nach einem CopyBlob Vorgang wird für Speicherkonten nicht unterstützt, für die das Feature für hierarchische Namespaces aktiviert ist.

Entfernen einer Event Grid-Datenverbindung

Führen Sie die folgenden Schritte aus, um die Event Grid-Verbindung aus dem Azure-Portal zu entfernen:

  1. Zum Custer wechseln Wählen Sie im Menü auf der linken Seite Datenbanken aus. Wählen Sie dann die Datenbank aus, die die Zieltabelle enthält.
  2. Wählen Sie im Menü auf der linken Seite Datenverbindungen aus. Aktivieren Sie dann das Kontrollkästchen neben der relevanten Event Grid-Datenverbindung.
  3. Wählen Sie in der oberen Menüleiste Löschen aus.