Azure Event Hubs에서 캡처된 Avro 파일 탐색
이 문서에서는 Azure Event Hubs에서 캡처한 Avro 파일의 스키마와 파일을 탐색할 몇 가지 도구를 제공합니다.
스키마
Event Hubs 캡처에서 생성된 Avro 파일에는 다음과 같은 Avro 스키마가 있습니다.
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에 손쉽게 액세스할 수 있습니다.
- HDInsight: Azure 스토리지에서 파일 주소 지정
- Azure Databricks: Azure Blob 스토리지 다음 샘플을 참조하세요. Event Hubs 캡처를 사용한 대규모 스트리밍.
- Azure Kubernetes Service
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에는 Java 및 Python에 대한 전체 시작 가이드가 있습니다. Event Hubs 캡처 시작 문서를 참조할 수도 있습니다.
다음 단계
Event Hubs 캡처는 데이터를 Azure로 가져오는 가장 쉬운 방법입니다. Azure Data Lake, Azure Data Factory 및 Azure HDInsight를 통해 규모에 관계없이 선택한 도구 및 플랫폼을 사용하여 선택한 일괄 처리 및 기타 분석을 수행할 수 있습니다. 다음 문서에서 이 기능에 대해 자세히 알아봅니다.