Azure Event Hubs에서 캡처된 Avro 파일 탐색

이 문서에서는 Azure Event Hubs에서 캡처한 Avro 파일의 스키마와 파일을 탐색할 몇 가지 도구를 제공합니다.

스키마

Event Hubs 캡처에서 생성된 Avro 파일에는 다음과 같은 Avro 스키마가 있습니다.

Image showing the schema of Avro files captured by Azure Event Hubs.

Azure Storage Explorer

캡처된 파일이 Azure Storage Explorer와 같은 도구를 사용하여 Azure Storage 계정에서 생성되었는지 확인할 수 있습니다. 파일을 로컬로 다운로드하여 작업할 수 있습니다.

Avro 파일을 쉽게 탐색하는 방법은 Apache에서 Avro 도구 jar을 사용하는 것입니다. 또한 Apache Spark를 사용하여 수집된 데이터에서 복잡한 분산 처리를 수행할 수 있습니다.

Apache Spark 사용

Apache Spark는 "대규모 데이터 처리를 위한 통합 분석 엔진"입니다. Azure Blob 스토리지에 쉽게 액세스할 수 SQL 다양한 언어를 지원합니다. Azure에서 Apache Spark를 실행하는 방법은 몇 가지가 있으며, 각 Azure Blob Storage에 손쉽게 액세스할 수 있습니다.

Avro 도구 사용

Avro 도구는 jar 패키지로 제공됩니다. jar 파일을 다운로드한 후 다음 명령을 실행하여 특정 Avro 파일의 스키마를 확인할 수 있습니다.

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

이 명령은 다음을 반환합니다.

{

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

또한 Avro 도구를 사용하여 JSON 형식으로 파일을 변환하고 다른 처리를 수행할 수 있습니다.

고급 처리를 수행하려면 선택한 플랫폼에 대한 Avro를 다운로드하고 설치합니다. 이 문서 작성 시점에는 C, C++, C#, Java, NodeJS, Perl, PHP, Python 및 Ruby에 사용 가능한 구현이 있습니다.

Apache Avro에는 JavaPython에 대한 전체 시작 가이드가 있습니다. Event Hubs 캡처 시작 문서를 참조할 수도 있습니다.

다음 단계

Event Hubs 캡처는 데이터를 Azure로 가져오는 가장 쉬운 방법입니다. Azure Data Lake, Azure Data Factory 및 Azure HDInsight를 통해 규모에 관계없이 선택한 도구 및 플랫폼을 사용하여 선택한 일괄 처리 및 기타 분석을 수행할 수 있습니다. 다음 문서에서 이 기능에 대해 자세히 알아봅니다.