Eksplorowanie przechwyconych plików Avro w usłudze Azure Event Hubs
Ten artykuł zawiera schemat plików Avro przechwyconych przez usługę Azure Event Hubs i kilka narzędzi do eksplorowania plików.
Schemat
Pliki Avro utworzone przez usługę Event Hubs Capture mają następujący schemat Avro:
Eksplorator magazynu Azure
Możesz sprawdzić, czy przechwycone pliki zostały utworzone na koncie usługi Azure Storage przy użyciu narzędzi, takich jak Eksplorator usługi Azure Storage. Możesz pobrać pliki lokalnie, aby nad nimi pracować.
Łatwym sposobem na eksplorowanie plików Avro jest użycie pliku jar Avro Tools z platformy Apache. Za pomocą platformy Apache Spark można również wykonywać złożone przetwarzanie rozproszone na pozyskanych danych.
Korzystanie z platformy Apache Spark
Apache Spark to "ujednolicony aparat analityczny do przetwarzania danych na dużą skalę". Obsługuje różne języki, w tym SQL, i może łatwo uzyskiwać dostęp do usługi Azure Blob Storage. Istnieje kilka opcji uruchamiania platformy Apache Spark na platformie Azure, a każda z nich zapewnia łatwy dostęp do usługi Azure Blob Storage:
- HDInsight: adresowanie plików w usłudze Azure Storage
- Azure Databricks: Azure Blob Storage. Zobacz następujący przykład: Przesyłanie strumieniowe na dużą skalę za pomocą funkcji przechwytywania usługi Event Hubs.
- Azure Kubernetes Service
Korzystanie z narzędzi Avro
Narzędzia Avro są dostępne jako pakiet jar. Po pobraniu pliku jar można zobaczyć schemat określonego pliku Avro, uruchamiając następujące polecenie:
java -jar avro-tools-1.9.1.jar getschema <name of capture file>
To polecenie zwraca
{
"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"]}
]
}
Możesz również użyć narzędzi Avro, aby przekonwertować plik na format JSON i wykonać inne przetwarzanie.
Aby wykonać bardziej zaawansowane przetwarzanie, pobierz i zainstaluj aplikację Avro dla wybranej platformy. W momencie pisania tego tekstu dostępne są implementacje języków C, C++, C#, Java, NodeJS, Perl, PHP, Python i Ruby.
Apache Avro zawiera kompletne przewodniki Wprowadzenie dla języków Java i Python. Możesz również przeczytać artykuł Wprowadzenie do przechwytywania usługi Event Hubs.
Następne kroki
Przechwytywanie usługi Event Hubs to najprostszy sposób uzyskiwania danych na platformę Azure. Korzystając z usług Azure Data Lake, Azure Data Factory i Azure HDInsight, można wykonywać przetwarzanie wsadowe i inne analizy przy użyciu znanych narzędzi i platform do wyboru w dowolnej skali. Zobacz następujące artykuły, aby dowiedzieć się więcej na temat tej funkcji.