Explorar ficheiros Avro capturados no Hubs de Eventos do Azure

Este artigo fornece o esquema para ficheiros Avro capturados por Hubs de Eventos do Azure e algumas ferramentas para explorar os ficheiros.

Esquema

Os ficheiros Avro produzidos pela Captura de Hubs de Eventos têm o seguinte esquema Avro:

Imagem a mostrar o esquema dos ficheiros Avro capturados por Hubs de Eventos do Azure.

Explorador de Armazenamento do Azure

Pode verificar se os ficheiros capturados foram criados na conta de Armazenamento do Azure com ferramentas como Explorador de Armazenamento do Azure. Pode transferir ficheiros localmente para trabalhar nos mesmos.

Uma forma fácil de explorar ficheiros Avro é através do jar das Ferramentas Avro do Apache. Também pode utilizar o Apache Spark para realizar processamento distribuído complexo nos dados ingeridos.

Utilizar o Apache Spark

O Apache Spark é um "motor de análise unificado para processamento de dados em grande escala". Suporta diferentes idiomas, incluindo o SQL, e pode aceder facilmente ao armazenamento de Blobs do Azure. Existem algumas opções para executar o Apache Spark no Azure e cada uma fornece acesso fácil ao armazenamento de Blobs do Azure:

Utilizar Ferramentas Avro

As Ferramentas Avro estão disponíveis como um pacote jar. Depois de transferir o ficheiro jar, pode ver o esquema de um ficheiro Avro específico ao executar o seguinte comando:

java -jar avro-tools-1.9.1.jar getschema <name of capture file>

Este comando devolve

{

    "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"]}
             ]
}

Também pode utilizar as Ferramentas Avro para converter o ficheiro em formato JSON e efetuar outro processamento.

Para realizar um processamento mais avançado, transfira e instale o Avro para a sua escolha de plataforma. No momento da escrita, existem implementações disponíveis para C, C++, C#, Java, NodeJS, Perl, PHP, Python e Ruby.

O Apache Avro concluiu Introdução guias para Java e Python. Também pode ler o artigo Introdução à Captura de Hubs de Eventos .

Passos seguintes

A Captura de Hubs de Eventos é a forma mais fácil de obter dados para o Azure. Com o Azure Data Lake, o Azure Data Factory e o Azure HDInsight, pode efetuar o processamento em lotes e outras análises com ferramentas e plataformas familiares à sua escolha, a qualquer escala necessária. Veja os seguintes artigos para saber mais sobre esta funcionalidade.