Esplorazione dei file Avro acquisiti in Hub eventi di Azure
Questo articolo fornisce lo schema per i file Avro acquisiti da Hub eventi di Azure e alcuni strumenti per esplorare i file.
Schema
I file Avro prodotti dall'acquisizione di Hub eventi hanno lo schema Avro seguente:
Azure Storage Explorer
È possibile verificare che i file acquisiti siano stati creati nell'account di archiviazione di Azure usando strumenti come Azure Storage Explorer. È possibile scaricare i file in locale per usarli.
Per esplorare facilmente i file di Avro, è possibile usare il file JAR Avro Tools di Apache. È anche possibile usare Apache Spark per eseguire un'elaborazione distribuita complessa sui dati inseriti.
Usare Apache Spark
Apache Spark è un "motore di analisi unificato per l'elaborazione di dati su larga scala". Supporta diversi linguaggi, tra cui SQL, e può accedere facilmente ad Archiviazione BLOB di Azure. Per l'esecuzione di Apache Spark in Azure sono disponibili diverse opzioni, ciascuna delle quali consente un accesso semplificato ad Archiviazione BLOB di Azure:
- HDInsight: indirizzare i file in Archiviazione di Azure
- Azure Databricks: Archiviazione BLOB di Azure. Vedere l'esempio seguente: Streaming su larga scala con Acquisizione di Hub eventi.
- Servizio Azure Kubernetes
Usare Avro Tools
Avro Tools è disponibile come pacchetto JAR. Dopo avere scaricato il file JAR, è possibile visualizzare lo schema di un file Avro specifico eseguendo il comando seguente:
java -jar avro-tools-1.9.1.jar getschema <name of capture file>
Questo comando restituisce
{
"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"]}
]
}
È anche possibile usare Avro Tools per convertire il file in formato JSON ed eseguire altre operazioni di elaborazione.
Per eseguire operazioni di elaborazione più avanzate, scaricare e installare Avro per la propria piattaforma. Al momento della stesura di questo articolo, sono disponibili implementazioni per C, C++, C#, Java, NodeJS, Perl, PHP, Python e Ruby.
In Apache Avro sono disponibili guide introduttive complete per Java e Python. È anche possibile leggere l'articolo Acquisizione di Hub eventi di Azure.
Passaggi successivi
Acquisizione di Hub eventi rappresenta il modo più facile per ottenere i dati in Azure. Con Azure Data Lake, Azure Data Factory e Azure HDInsight, è possibile eseguire l'elaborazione batch e altre analisi usando strumenti e piattaforme familiari a scelta con la scalabilità necessaria. Per altre informazioni su questa funzionalità, vedere gli articoli seguenti.