Skapa en Event Grid-dataanslutning för Azure Data Explorer

I den här artikeln får du lära dig hur du matar in blobar från ditt lagringskonto till Azure Data Explorer med hjälp av en Event Grid-dataanslutning. Du skapar en Event Grid-dataanslutning som anger en Azure Event Grid-prenumeration. Event Grid-prenumerationen dirigerar händelser från ditt lagringskonto till Azure Data Explorer via en Azure Event Hubs.

Anteckning

Inmatning stöder en maximal filstorlek på 6 GB. Rekommendationen är att mata in filer mellan 100 MB och 1 GB.

Information om hur du skapar anslutningen med kusto-SDK:erna finns i Skapa en Event Grid-dataanslutning med SDK:er.

Allmän information om hur du matar in i Azure Data Explorer från Event Grid finns i Ansluta till Event Grid.

Anteckning

För att uppnå bästa prestanda med Event Grid-anslutningen anger du inmatningsegenskapen rawSizeBytes via blobmetadata. Mer information finns i inmatningsegenskaper.

Förutsättningar

Skapa en Event Grid-dataanslutning

I det här avsnittet upprättar du en anslutning mellan Event Grid och din Azure Data Explorer-tabell.

  1. Bläddra till ditt Azure Data Explorer-kluster i Azure Portal.

  2. Under Data väljer du Databaser>TestDatabas.

    Skärmbild av klustrets databasavsnitt som visar en lista över databaser som det innehåller.

  3. Under Inställningar väljer du Dataanslutningar och sedan Lägg till dataanslutning>Event Grid (Blob Storage).

    Skärmbild av sidan dataanslutningar. Alternativet för att lägga till en dataanslutning är markerat.

  4. Fyll i formuläret för Event Grid-dataanslutning med följande information:

    Skärmbild av Event Grid-fönstret som visar information om dataanslutningen.

    Inställning Föreslaget värde Fältbeskrivning
    Namn på dataanslutning test-grid-connection Namnet på den anslutning som du vill skapa i Azure Data Explorer. Namn på dataanslutningar får bara innehålla alfanumeriska tecken, bindestreck och punkttecken och får innehålla upp till 40 tecken.
    Lagringskontoprenumeration Ditt prenumerations-ID Prenumerations-ID:t där ditt lagringskonto finns.
    Händelsetyp Bloben har skapats eller bloben har bytt namn Den typ av händelse som utlöser inmatning. Blob omdöpt stöds endast för ADLSv2-lagring. Om du vill byta namn på en blob går du till bloben i Azure Portal, högerklickar på bloben och väljer Byt namn. Typer som stöds är: Microsoft.Storage.BlobCreated eller Microsoft.Storage.BlobRenamed.
    Lagringskonto gridteststorage1 Namnet på lagringskontot som du skapade tidigare.
    Skapa resurser Automatiskt Om du aktiverar automatisk resursskapande innebär det att Azure Data Explorer skapar en Event Grid-prenumeration, ett Event Hubs-namnområde och en Event Hubs åt dig. Annars måste du skapa dessa resurser manuellt för att säkerställa att dataanslutningen skapas. Se Skapa resurser manuellt för Event Grid-inmatning
    1. Du kan också spåra specifika Event Grid-ämnen. Ange filter för meddelanden på följande sätt:

      • Prefixfältet är ämnets literalprefix . När mönstret som tillämpas börjar med kan det sträcka sig över flera containrar, mappar eller blobar. Jokertecken får inte användas.
        • Om du vill definiera ett filter för blobcontainern måste fältet anges på följande sätt: /blobServices/default/containers/[container prefix].
        • Om du vill definiera ett filter för ett blobprefix (eller en mapp i Azure Data Lake Gen2) måste fältet anges på följande sätt: /blobServices/default/containers/[container name]/blobs/[folder/blob prefix].
      • Suffixfältet är blobens literalsuffix . Jokertecken får inte användas.
      • Skiftlägeskänsligt fält anger om prefix- och suffixfiltren är skiftlägeskänsliga

      Mer information om filtreringshändelser finns i Blob Storage-händelser.

    2. Du kan också ange inställningarna för dataroutning enligt följande information. Du behöver inte ange alla inställningar för dataroutning. Partiella inställningar accepteras också.

      Inställning Föreslaget värde Fältbeskrivning
      Tillåt routning av data till andra databaser (dataanslutning med flera databaser) Tillåt inte Växla på det här alternativet om du vill åsidosätta standardmåldatabasen som är associerad med dataanslutningen. Mer information om databasroutning finns i Händelsedirigering.
      Tabellnamn TestTable Tabellen som du skapade i TestDatabase.
      Dataformat JSON Format som stöds är APACHEAVRO, Avro, CSV, JSON, ORC, PARQUET, PSV, RAW, SCSV, SOHSV, TSV, TSVE, TXT och W3CLOG. Komprimeringsalternativ som stöds är Zip och Gzip.
      Mappningsnamn TestTable_mapping Mappningen som du skapade i TestDatabase, som mappar inkommande data till kolumnnamnen och datatyperna i TestTable. Om inget anges genereras en identitetsdatamappning som härleds från tabellens schema automatiskt.
      Ignorera formatfel Ignorera Växla på det här alternativet om du vill ignorera formatfel för JSON-dataformat.

      Anteckning

      Tabell- och mappningsnamn är skiftlägeskänsliga.

    3. Under Avancerade inställningar kan du också ange den typ av hanterad identitet som används av din dataanslutning. Som standard är Systemtilldelad valt.

      Om du väljer Användartilldelad måste du tilldela en hanterad identitet manuellt. Om du väljer en användare som inte har tilldelats till klustret ännu tilldelas den automatiskt. Mer information finns i Konfigurera hanterade identiteter för ditt Azure Data Explorer-kluster.

      Om du väljer Ingen autentiseras lagringskontot och händelsehubben via anslutningssträngar. Den här metoden rekommenderas inte.

      Skärmbild av avsnittet avancerade inställningar som visar de hanterade identitetstyper som kan användas för dataanslutningen.

  5. Välj Skapa

Använda Event Grid-dataanslutningen

Det här avsnittet visar hur du utlöser inmatning från Azure Blob Storage eller Azure Data Lake Gen 2 till klustret när du skapar blobar eller byter namn på blob.

Välj relevant flik baserat på vilken typ av lagrings-SDK som används för att ladda upp blobar.

I följande kodexempel används Azure Blob Storage SDK för att ladda upp en fil till Azure Blob Storage. Uppladdningen utlöser Event Grid-dataanslutningen, som matar in data i Azure Data Explorer.

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);

Anteckning

Azure Data Explorer tar inte bort blobarna efter inmatningen. Behåll blobarna i tre till fem dagar med hjälp av Azure Blob Storage-livscykeln för att hantera borttagning av blobar.

Anteckning

Utlösande inmatning efter en CopyBlob åtgärd stöds inte för lagringskonton som har funktionen för hierarkisk namnrymd aktiverad på sig.

Ta bort en Event Grid-dataanslutning

Så här tar du bort Event Grid-anslutningen från Azure Portal:

  1. Gå till klustret. Välj Databaser på den vänstra menyn. Välj sedan den databas som innehåller måltabellen.
  2. På den vänstra menyn väljer du Dataanslutningar. Markera sedan kryssrutan bredvid relevant Event Grid-dataanslutning.
  3. Välj Ta bort på den översta menyraden.