Utforska insamlade Avro-filer i Azure Event Hubs
Den här artikeln innehåller schemat för Avro-filer som samlas in av Azure Event Hubs och några verktyg för att utforska filerna.
Schema
Avro-filerna som skapas av Event Hubs Capture har följande Avro-schema:
Azure Storage Explorer
Du kan kontrollera att insamlade filer har skapats i Azure Storage-kontot med hjälp av verktyg som Azure Storage Explorer. Du kan ladda ned filer lokalt för att arbeta med dem.
Ett enkelt sätt att utforska Avro-filer är att använda Avro Tools jar från Apache. Du kan också använda Apache Spark för att utföra komplex distribuerad bearbetning på inmatade data.
Använda Apache Spark
Apache Spark är en "enhetlig analysmotor för storskalig databearbetning". Den stöder olika språk, inklusive SQL, och kan enkelt komma åt Azure Blob Storage. Det finns några alternativ för att köra Apache Spark i Azure och var och en ger enkel åtkomst till Azure Blob Storage:
- HDInsight: Adressfiler i Azure Storage
- Azure Databricks: Azure Blob Storage. Se följande exempel: Strömma i stor skala med Event Hubs Capture.
- Azure Kubernetes Service
Använda Avro-verktyg
Avro-verktyg är tillgängliga som ett jar-paket. När du har laddat ned jar-filen kan du se schemat för en specifik Avro-fil genom att köra följande kommando:
java -jar avro-tools-1.9.1.jar getschema <name of capture file>
Det här kommandot returnerar
{
"type":"record",
"name":"EventData",
"namespace":"Microsoft.ServiceBus.Messaging",
"fields":[
{"name":"SequenceNumber","type":"long"},
{"name":"Offset","type":"string"},
{"name":"EnqueuedTimeUtc","type":"string"},
{"name":"SystemProperties","type":{"type":"map","values":["long","double","string","bytes"]}},
{"name":"Properties","type":{"type":"map","values":["long","double","string","bytes"]}},
{"name":"Body","type":["null","bytes"]}
]
}
Du kan också använda Avro Tools för att konvertera filen till JSON-format och utföra annan bearbetning.
Om du vill utföra mer avancerad bearbetning laddar du ned och installerar Avro för val av plattform. När detta skrivs finns det implementeringar tillgängliga för C, C++, C#, Java, NodeJS, Perl, PHP, Python och Ruby.
Apache Avro har kompletta komma igång-guider för Java och Python. Du kan också läsa artikeln Komma igång med Event Hubs Capture .
Nästa steg
Event Hubs Capture är det enklaste sättet att hämta data till Azure. Med Azure Data Lake, Azure Data Factory och Azure HDInsight kan du utföra batchbearbetning och annan analys med hjälp av välbekanta verktyg och plattformar som du väljer, i valfri skala. Mer information om den här funktionen finns i följande artiklar.