Mata in blobar i Azure Data Explorer genom att prenumerera på Event Grid meddelanden
Azure Data Explorer är en snabb och mycket skalbar datautforskningstjänst för logg- och telemetridata. Azure Data Explorer inmatning (data inläsning) från Event Hubs, IoT Hubs och blobar som skrivits till blobcontainrar.
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 en Event Grid-dataanslutning. Du skapar en dataanslutning Event Grid som anger en Azure Event Grid prenumeration. Prenumerationen Event Grid dirigerar händelser från ditt lagringskonto till Azure Data Explorer via en Azure-händelsehubb. Sedan visas ett exempel på dataflödet i hela systemet.
Allmän information om hur du matar in i Azure Data Explorer från Event Grid finns i Anslut till Event Grid. Om du vill skapa resurser manuellt i Azure Portal du manuellt skapa resurser för Event Grid inmatning.
Förutsättningar
- En Azure-prenumeration. Skapa ett kostnadsfritt Azure-konto.
- Skapa ett kluster och en databas.
- Skapa ett lagringskonto.
- Event Grid-meddelandeprenumeration kan anges Azure Storage för
BlobStorage, eller Data Lake StorageStorageV2BlobStorage
Skapa en måltabell i Azure Data Explorer
Skapa en tabell i Azure Data Explorer där Event Hubs skickar data. Skapa tabellen i klustret och databasen som förberetts i förutsättningarna.
Välj Fråga under klustret på Azure-portalen.
Kopiera följande kommando till fönstret och välj Kör för att skapa tabellen (TestTable) som ska ta emot indata.
.create table TestTable (TimeStamp: datetime, Value: string, Source:string)
Kopiera följande kommando till fönstret och välj Kör för att mappa inkommande JSON-data till kolumnnamnen och datatyperna i tabellen (TestTable).
.create table TestTable ingestion json mapping 'TestMapping' '[{"column":"TimeStamp","path":"$.TimeStamp"},{"column":"Value","path":"$.Value"},{"column":"Source","path":"$.Source"}]'
Skapa en Event Grid-dataanslutning
Anslut nu lagringskontot till Azure Data Explorer så att data som flödar till lagringen strömmas till testtabellen. Den här anslutningen kan skapas i Azure Portal under själva lagringskontot eller i Azure Portal under Azure Data Explorer.
Bläddra till lagringskontot i Azure Portal. På den vänstra menyn väljer du Händelser
I huvudfönstret väljer du Azure Data Explorer fliken.
Fönstret Dataanslutning öppnas med fliken Grundläggande inställningar markerad.
Dataanslutning – fliken Grunder
Fyll i formuläret med följande information:
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. Lagringskonto gridteststorage1 Lagringskontot som du kom åt den här guiden från. Fyllas i automatiskt. Händelsetyp Blob som skapats ellerBlob har bytt namn Den typ av händelse som utlöser inmatning. Omdöpt blob stöds endast för ADLSv2-lagring. Typer som stöds är: Microsoft. Storage. BlobCreated eller Microsoft. Storage. BlobRenamed. Skapa resurser Automatiskt Definiera om du vill Azure Data Explorer skapa en Event Grid-prenumeration, en event hub-namnrymd och en händelsehubb åt dig. Information om hur du skapar resurser manuellt finns i Skapa resurser manuellt för Event Grid datainmatning Välj Nästa inmatningsegenskaper.
Dataanslutning – fliken Inmatningsegenskaper
Fyll i formuläret med följande information. Tabell- och mappningsnamn är fallkänsliga:
Inställning Föreslaget värde Fältbeskrivning Prenumeration Din Azure Data Explorer prenumeration. Klusternamn TestCluster Namnet på det kluster där du vill mata in data. Databasnamn TestDatabase Måldatabasen som du skapade i TestCluster. Tabellnamn TestTable Måltabellen som du skapade i TestDatabase. Dataformat JSON Format som stöds är Avro, CSV, JSON, MULTILINE JSON, ORC, PARQUET, PSV, SCSV, SOHSV, TSV, TXT, TSVE, APACHEAVRO, RAW och W3CLOG. Komprimeringsalternativ som stöds är Zip och Gzip. Mappning TestMapping Den mappning som du skapade i TestDatabase, som mappar inkommande JSON-data till kolumnnamnen och datatyperna i TestTable. Avancerade inställningar Mina data har rubriker Ignorerar rubriker. Stöds för *SV-typfiler. Anteckning
Du behöver inte ange alla standardinställningar för routning. Partiella inställningar accepteras också.
Välj Nästa: Granska + skapa
Dataanslutning – fliken Granska och skapa
Granska de resurser som skapades automatiskt åt dig och välj Skapa.
Distribution
Vänta tills distributionen är klar. Om distributionen misslyckades väljer du Åtgärdsinformation bredvid det misslyckade steget för att få mer information av felorsaken. Välj Distribuera om för att försöka distribuera resurserna igen. Du kan ändra parametrarna före distributionen.
Generera exempeldata
Nu när Azure Data Explorer och lagringskontot är anslutna kan du skapa exempeldata.
Upload blob till lagringscontainern
Vi kommer att arbeta med ett litet kommandoskript som utfärdar några grundläggande Azure CLI-kommandon för att interagera med Azure Storage-resurser. Det här skriptet gör följande:
- Skapar en ny container i ditt lagringskonto.
- Laddar upp en befintlig fil (som en blob) till den containern.
- Visar en lista över blobarna i containern.
Du kan använda Azure Cloud Shell för att köra skriptet direkt i portalen.
Spara data i en fil och ladda upp dem med det här skriptet:
{"TimeStamp": "1987-11-16 12:00","Value": "Hello World","Source": "TestSource"}
#!/bin/bash
### A simple Azure Storage example script
export AZURE_STORAGE_ACCOUNT=<storage_account_name>
export AZURE_STORAGE_KEY=<storage_account_key>
export container_name=<container_name>
export blob_name=<blob_name>
export file_to_upload=<file_to_upload>
export destination_file=<destination_file>
echo "Creating the container..."
az storage container create --name $container_name
echo "Uploading the file..."
az storage blob upload --container-name $container_name --file $file_to_upload --name $blob_name --metadata "rawSizeBytes=1024"
echo "Listing the blobs..."
az storage blob list --container-name $container_name --output table
echo "Done"
Anteckning
För att uppnå bästa inmatningsprestanda måste den okomprimerade storleken på de komprimerade blobarna som skickas för inmatning kommuniceras. Eftersom Event Grid-meddelanden endast innehåller grundläggande information måste storleksinformationen kommuniceras explicit. Information om okomprimerad storlek kan anges genom att ange egenskapen för blobmetadata med rawSizeBytesrawSizeBytes datastorlek i byte.
Byt namn på blob
Om du matar in data från ADLSv2-lagring och har definierat Blob med nytt namn som händelsetyp för dataanslutningen är utlösaren för blobinmatning blobbyte. Om du vill byta namn på en blob navigerar du till bloben i Azure Portal, högerklickar på bloben och väljer Byt namn på:
Inmatningsegenskaper
Du kan ange inmatningsegenskaperna för blobinmatningen via blobmetadata.
Anteckning
Azure Data Explorer tar inte bort blobarna efter inmatningen. Behåll blobarna i tre till fem dagar. Använd Azure Blob Storage-livscykeln för att hantera borttagning av blobar.
Granska dataflödet
Anteckning
Azure Data Explorer en sammansättningsprincip (batchbearbetning) för datainmatning som är utformad för att optimera inmatningsprocessen. Som standard konfigureras principen till 5 minuter. Du kommer att kunna ändra principen vid ett senare tillfälle om det behövs. I den här artikeln kan du förvänta dig en svarstid på några minuter.
Under ditt händelserutnät på Azure-portalen ser du en aktivitetstopp när appen körs.
För att kontrollera hur många meddelanden som nått databasen hittills kör du följande fråga i testdatabasen.
TestTable | countKör följande fråga i testdatabasen för att se innehållet i meddelandena.
TestTableResultatuppsättningen bör se ut som på följande bild:
Rensa resurser
Om du inte planerar att använda händelserutnätet igen rensar du den Event Grid-prenumeration, händelsehubbnamnrymd och händelsehubb som har återskapats automatiskt åt dig för att undvika kostnader.
I Azure Portal du till den vänstra menyn och väljer Alla resurser.
Sök efter händelsehubbens namnområde och välj Ta bort för att ta bort den:
I formuläret Ta bort resurser bekräftar du borttagningen för att ta bort event hub-namnrymden och händelsehubbens resurser.
Gå till ditt lagringskonto. I den vänstra menyn väljer du Händelser:
Under diagrammet väljer du din prenumeration Event Grid och sedan Ta bort för att ta bort den:
Om du vill Event Grid dataanslutningen går du till Azure Data Explorer klustret. Välj Databaser på den vänstra menyn.
Välj databasen TestDatabase:
På den vänstra menyn väljer du Datainmatning:
Välj din dataanslutning test-grid-connection och välj sedan Ta bort för att ta bort den.





