Azure 실시간 분석 및 스트리밍 처리에 여러 서비스를 사용할 수 있습니다. 이 문서는 애플리케이션에 가장 적합한 기술을 결정하는 데 도움이 됩니다.
Azure Stream Analytics를 사용하는 경우
Azure Stream Analytics는 Azure에서 스트림 분석에 권장되는 서비스입니다. 다음을 포함하지만 제한되지 않는 광범위한 시나리오에 사용합니다.
Azure Stream Analytics 작업을 애플리케이션에 추가하는 것은 이미 알고 있는 SQL 언어를 사용하여 Azure에서 스트리밍 분석을 시작하고 실행하는 가장 빠른 방법입니다. Azure Stream Analytics는 작업 서비스이므로 클러스터를 관리하는 데 시간을 할애할 필요가 없으며 작업 수준에서 99.9% SLA(서비스 수준 약정)를 사용하여 가동 중지 시간을 걱정할 필요가 없습니다. 또한 청구는 작업 수준에서 수행되므로 시작 비용이 낮지만(하나의 스트리밍 단위), 확장 가능(최대 396 스트리밍 단위). 클러스터를 실행하고 유지 관리하는 것보다 몇 가지 Stream Analytics 작업을 실행하는 것이 훨씬 더 비용 효율적입니다.
Azure Stream Analytics에는 풍부한 기본 제공 환경이 있습니다. 추가 설정 없이 다음 기능을 즉시 활용할 수 있습니다.
- 시간 기반 연산자에는 기간 이동 집계, 시간 기반 조인 및 시간 기반 분석 함수가 포함됩니다.
- 네이티브 Azure 입력 및 출력 어댑터
- 지오펜싱을 위한 지리 공간적 참조 데이터와의 조인을 포함하여 느린 변경 참조 데이터 (조회 테이블이라고도 함)를 지원합니다.
- 변칙 검색과 같은 통합 솔루션
- 동일한 쿼리의 여러 시간 창
- 임의 시퀀스에서 여러 temporal 연산자를 구성하는 기능입니다.
- 입력이 Event Hubs에 도착하는 시점부터 출력이 Event Hubs에 도착할 때까지, Event Hubs와의 왕복 네트워크 지연 시간을 포함하여, 지속적으로 높은 처리량에서도 100ms 미만의 엔드 투 엔드 지연 시간을 제공합니다.
다른 기술을 사용하는 경우
JavaScript 또는 C 이외의 언어로 UDF, UDA 및 사용자 지정 역직렬 변환기를 작성하려고 합니다.#
Azure Stream Analytics 클라우드 작업의 경우 JavaScript에서 UDF(사용자 정의 함수) 및 UDF(사용자 정의 집계)를 지원하고 IoT Edge 작업에는 C#을 지원합니다. C# 사용자 정의 역직렬 변환기도 지원됩니다. 역직렬 변환기, UDF 또는 UDA를 Java 또는 Python 같은 다른 언어로 구현하려면 Spark 구조적 스트리밍을 사용합니다. 사용자 고유의 가상 머신에서 Event Hubs EventProcessorHost 를 실행하여 임의 스트리밍 처리를 수행할 수도 있습니다.
솔루션이 다중 클라우드 또는 온-프레미스 환경에 있습니다.
Azure Stream Analytics는 Microsoft의 독점 기술이며 Azure에서만 사용할 수 있습니다. 클라우드 또는 온-프레미스에서 솔루션을 이식해야 하는 경우 Spark 구조적 스트리밍 또는 Apache Flink와 같은 오픈 소스 기술을 고려합니다.