다음을 통해 공유


Azure Event Hubs란?

Azure Event Hubs는 대기 시간이 짧은 초당 수백만 개의 이벤트를 수집할 수 있는 완전 관리형 실시간 데이터 스트리밍 플랫폼입니다. 기본 제공 Apache Kafka 호환성이 있는 네이티브 Azure 서비스인 Event Hubs를 사용하면 코드 변경 또는 클러스터 관리 오버헤드 없이 기존 Kafka 워크로드를 실행할 수 있습니다.

조직에서는 Event Hubs를 사용하여 처리량이 높고 신뢰할 수 있는 이벤트 수집이 필요한 IoT 원격 분석, 애플리케이션 로깅, 클릭스트림 분석, 재무 트랜잭션 처리 및 기타 시나리오에 대한 데이터 파이프라인을 빌드합니다. Event Hubs는 Azure 분석 서비스와 통합되어 실시간 인사이트 및 장기 데이터 보존을 가능하게 합니다.

개요

특성 세부 정보
서비스 종류 PaaS(완전 관리형 이벤트 스트리밍 플랫폼)
지원되는 프로토콜 Apache Kafka, AMQP 1.0, HTTPS
데이터 보존 최대 7일(표준), 90일(프리미엄/전용)
가격 책정 계층 Standard, Premium, Dedicated
SLA 최대 99.99%

Azure Event Hubs를 선택하는 이유는 무엇인가요?

  • 제로 인프라 관리: 자동 패치, 크기 조정 및 모니터링을 사용하는 완전 관리형 서비스입니다. 프로비전하거나 유지 관리할 클러스터가 없습니다.
  • 엔터프라이즈급 안정성: 가용성 영역 지원 및 비즈니스 연속성을 위한 지역 복제 를 통해 최대 99.99% SLA를 지원합니다.
  • 복잡성이 없는 Kafka: 더 나은 비용 효율성과 운영 오버헤드 없이 Kafka 워크로드를 실행합니다. 별도의 Kafka 클러스터가 필요하지 않습니다.
  • 원활한 Azure 통합: Stream Analytics, Azure Functions, Data Explorer 및 기타 여러 Azure 서비스와의 네이티브 통합.
  • 유연한 가격 책정: 소비 기반 또는 전용 용량 모델 중에서 선택합니다. 수요에 따라 메가바이트에서 테라바이트 단위로 확장합니다.

Azure Event Hubs가 이벤트 스트리밍 플랫폼에 어떻게 적용되는지 보여주는 다이어그램입니다.

Event Hubs를 사용하는 경우

Event Hubs는 처리량이 높고 대기 시간이 짧은 이벤트 스트리밍 시나리오를 위해 설계되었습니다. 다음을 수행해야 하는 경우 Event Hubs를 고려합니다.

Scenario Description
실시간 분석 스트리밍 데이터를 처리하여 즉각적인 인사이트, 대시보드 및 경고 생성
IoT 원격 분석 수집 수백만 개의 IoT 센서, 차량 또는 산업용 장비에서 디바이스 데이터 수집
애플리케이션 로깅 모니터링 및 문제 해결을 위해 분산 애플리케이션에서 로그 중앙 집중화
Clickstream 분석 웹 및 모바일 애플리케이션에서 사용자 동작 패턴 분석
금융 거래 대량 거래 데이터, 사기 감지 신호 및 결제 이벤트 처리
이벤트 소싱 지속성, 순서가 지정된 이벤트 스토리지를 사용하여 이벤트 기반 아키텍처 구현

Azure 메시징 서비스 중에서 선택

Azure는 여러 메시징 서비스를 제공합니다. 다음 지침을 사용하여 올바른 서비스를 선택합니다.

서비스 적합한 대상 메시지 패턴
이벤트 허브 처리량이 높은 이벤트 스트리밍, 원격 분석, 로그 집계 많은 생산자, 여러 소비자, 시간 순서로 정렬된 이벤트
서비스 버스 트랜잭션, 세션, 죽은 편지함 처리가 포함된 Enterprise 메시징 포인트 투 포인트 또는 발행/구독 방식의 배달 보증
Event Grid 사후 이벤트 기반 아키텍처, 서버리스 트리거 필터링을 사용하는 푸시 기반 이벤트 라우팅

자세한 지침은 Azure 메시징 서비스 중에서 선택을 참조하세요.

작동 방법

Event Hubs는 시간 기반 보존이 포함된 통합 스트리밍 플랫폼을 제공하여 이벤트 생산자를 소비자와 분리합니다. 둘 다 여러 프로토콜을 통해 대규모 데이터 수집 및 처리를 수행할 수 있습니다.

Event Hubs의 주요 구성 요소를 나타내는 다이어그램입니다.

핵심 구성 요소

구성 요소 Description
생산자 애플리케이션 Event Hubs SDK, Kafka 생산자 클라이언트 또는 HTTPS를 사용하여 Event Hubs에 이벤트를 보내는 애플리케이션
네임스페이스 하나 이상의 이벤트 허브에 대한 관리 컨테이너입니다. 네임스페이스 수준에서 스트리밍 용량, 네트워크 보안지역 재해 복구 처리
이벤트 허브/Kafka 토픽 이벤트를 정리하는 추가 전용 분산 로그입니다. 병렬 처리를 위한 하나 이상의 파티션 포함
Partitions 처리량 크기를 조정하는 데 사용되는 순서가 지정된 이벤트 시퀀스입니다. 파티션을 고속도로의 레인으로 간주합니다. 파티션이 많을수록 처리량이 높아집니다.
소비자 애플리케이션 각 파티션에서 해당 위치(오프셋)를 추적하여 이벤트를 읽는 애플리케이션입니다. Event Hubs SDK 또는 Kafka 소비자 클라이언트를 사용할 수 있습니다.
소비자 그룹 여러 소비자 애플리케이션이 각각 고유한 위치를 유지하면서 동일한 스트림을 독립적으로 읽을 수 있도록 하는 이벤트 허브의 논리적 보기

이벤트 흐름

  1. 수집: 생산자 애플리케이션은 이벤트 허브로 이벤트를 보냅니다. 이벤트는 파티션 키 또는 라운드 로빈 배포에 따라 파티션에 할당됩니다.
  2. Store: 이벤트는 구성 가능한 보존(계층에 따라 1-90일)으로 지속적으로 저장됩니다. 캡처 기능은 장기 스토리지에 이벤트를 쓸 수도 있습니다.
  3. 프로세스: 소비자 애플리케이션은 소비자 그룹을 사용하여 파티션에서 이벤트를 읽습니다. 각 소비자는 신뢰할 수 있는 처리를 위해 체크포인트를 사용하여 오프셋을 추적합니다.

자세한 설명은 Event Hubs 기능을 참조하세요.

주요 기능

핵심 플랫폼 기능

Apache Kafka 호환성

Event Hubs는 Apache Kafka, AMQP 1.0 및 HTTPS를 기본적으로 지원하는 다중 프로토콜 이벤트 스트리밍 엔진입니다. 코드 변경, 클러스터 관리 또는 타사 Kafka 서비스 없이 Kafka 워크로드를 Event Hubs로 가져올 수 있습니다.

Event Hubs는 클라우드 네이티브 브로커 엔진으로 빌드되어 자체 관리형 Kafka 클러스터보다 더 나은 성능과 비용 효율성을 제공합니다. 자세한 내용은 Apache Kafka용 Azure Event Hubs를 참조하세요.

유연한 크기 조정

데이터 스트림을 메가바이트 단위로 시작하고 기가바이트 또는 테라바이트 단위로 증가합니다. 자동 확장 기능은 수요에 맞게 처리량 단위의 크기를 자동으로 조정합니다. 예측 가능한 대용량 워크로드의 경우 전용 클러스터는 예약된 용량을 제공합니다.

대용량 메시지 지원(미리 보기)

대부분의 스트리밍 시나리오에는 1MB 미만의 경량 메시지가 포함되지만 Event Hubs는 전용 클러스터를 사용하여 최대 20MB의 이벤트를 수용합니다. 자세한 내용은 큰 메시지 보내기 및 받기를 참조하세요.

데이터 관리

스키마 레지스트리

Azure Schema Registry 는 이벤트 스트리밍 애플리케이션의 스키마를 관리하기 위한 중앙 집중식 리포지토리를 제공합니다. 생산자와 소비자 간의 데이터 호환성 및 일관성을 보장하고, 스키마 진화를 지원하며, Avro 및 JSON 스키마를 사용하여 Kafka 애플리케이션과 통합합니다.

스키마 레지스트리와 Event Hubs 통합을 보여주는 다이어그램

캡처

장기 보존 또는 일괄 처리 분석을 위해 Azure Blob Storage 또는 Azure Data Lake Storage에 거의 실시간으로 스트리밍 데이터를 캡처합니다. 캡처는 실시간 처리에 사용되는 동일한 스트림에서 자동으로 실행됩니다.

관리 ID를 활용해 Event Hubs 데이터를 Azure Storage 또는 Azure Data Lake Storage로 캡처하는 과정을 나타낸 다이어그램입니다.

Azure 통합

Stream Analytics 통합

Event Hubs는 실시간 스트림 처리를 위해 Azure Stream Analytics 와 통합됩니다. 끌어서 놓기 기능과 함께 기본 제공 코드 없음 편집기를 사용하거나 복잡한 변환을 위한 SQL 기반 쿼리를 작성합니다.

이벤트 타일에서 실시간 인사이트 사용을 설정하면 데이터 처리 페이지를 보여주는 스크린샷이 나타납니다.

자세한 내용은 Stream Analytics를 사용하여 Event Hubs 데이터 처리를 참조하세요.

Azure Data Explorer 통합

Azure Data Explorer 는 대량의 스트리밍 데이터에 대한 고성능 분석을 제공합니다. 거의 실시간 분석 및 탐색을 위해 Event Hubs를 데이터 탐색기와 통합합니다.

Azure Data Explorer 쿼리 및 출력을 나타내는 다이어그램

자세한 내용은 Event Hubs에서 Azure Data Explorer로 데이터 수집을 참조하세요.

Azure Functions 및 서버리스

Event Hubs는 서버리스 이벤트 처리를 위해 Azure Functions 와 통합됩니다. 에코시스템은 Azure Spring Apps, Kafka Connectors, Apache Spark 및 Apache Flink도 지원합니다.

로컬 개발

Event Hubs 에뮬레이터는 클라우드 종속성이 없는 격리된 서비스에 대한 코드를 개발하고 테스트하기 위한 로컬 개발 환경을 제공합니다.

클라이언트 라이브러리

Event Hubs는 .NET, Java, Python, JavaScript 및 Go용 클라이언트 라이브러리 를 제공합니다. 이러한 SDK는 AMQP 및 Kafka 프로토콜을 모두 지원하므로 애플리케이션에 가장 적합한 프로토콜을 선택할 수 있습니다.

모니터링

Azure Monitor 메트릭, 진단 로그 및 경고를 사용하여 Event Hubs를 모니터링합니다. 처리량, 대기 시간, 오류 및 소비자 지연을 추적하여 최적의 성능을 보장합니다.

보안 및 규정 준수

Event Hubs는 엔터프라이즈급 보안 기능을 제공합니다.

특징 Description
인증 RBAC(역할 기반 액세스 제어), 공유 액세스 서명 또는 관리 ID가 있는 Microsoft Entra ID
네트워크 보안 프라이빗 연결을 위한 Private Link, VNet 서비스 엔드포인트, 그리고 IP 방화벽 규칙
암호화 Microsoft 관리형 또는 고객 관리형 키를 사용하여 보관 중인 데이터를 암호화하고, 전송 중인 데이터에 대해 TLS 1.2를 사용합니다.

자세한 내용은 Event Hubs 보안 기준을 참조하세요.

고가용성 및 재해 복구

Event Hubs는 다음과 같은 여러 계층의 안정성을 제공합니다.

  • 가용성 영역: 영역 중복 배포는 지역 내의 영역에 복제본을 분산합니다(프리미엄 및 전용 계층).
  • 지역 재해 복구: Geo-DR을 사용하면 메타데이터를 동기화하여 보조 지역으로 장애 조치할 수 있습니다.
  • SLA 보장: 계층 및 구성에 따라 최대 99.99% 가용성

가격 책정 계층

현재 가격 책정 및 자세한 기능 비교는 Event Hubs 가격 책정할당량 및 제한을 참조하세요.