이 아키텍처는 시스템 및 사용자 디바이스 원격 분석 데이터의 거의 실시간 모니터링 및 관찰 가능성을 제공하는 솔루션을 설명합니다. 여기서는 미디어 산업의 사용 사례에 중점을 둡니다.
아키텍처
이 아키텍처의 Visio 파일을 다운로드합니다.
데이터 흐름
클라이언트 디바이스 및 애플리케이션은 HTTP 및 커넥터를 통해 원시 원격 분석을 Microsoft Fabric으로 스트리밍합니다. Eventstreams는 데이터를 수집합니다. 패브릭 Real-Time 인텔리전스 기능은 확장 가능한 시계열 데이터베이스인 eventhouse로 원격 분석 데이터를 변환, 정규화 및 유지합니다. Real-Time Intelligence 대시보드는 인사이트를 제공하고 데이터 활성화기는 감지된 패턴에 따라 자동화된 작업을 트리거합니다.
다음 데이터 흐름은 이전 다이어그램에 해당합니다.
계측: 계측은 데이터를 모니터링하기 위해 시스템에 설치된 프로브 또는 에이전트를 통해 발생합니다. 이러한 에이전트에는 다양한 형식이 있습니다. 예를 들어 주문형 비디오 스트리밍 플랫폼에서 회사는 개방형 표준 dash.js 사용하여 고객으로부터 QoE(환경 품질) 메트릭을 수집할 수 있습니다.
수집: 클라이언트는 HTTP 호출을 통해 서비스별 엔드포인트에 직접 원시 원격 분석 데이터를 수집합니다. Azure Functions는 들어오는 데이터를 처리합니다. 또는 외부 시스템을 통해 Azure Blob Storage 또는 데이터 레이크와 같은 영구 스토리지 솔루션에 원격 분석을 업로드할 수 있습니다. 패브릭 이벤트 스트림은 이 데이터를 Eventhouse 또는 Data Activator와 같은 패브릭 네이티브 엔터티로 라우팅하는 코드 없는 환경을 제공합니다.
변환 및 지속성: 패브릭은 테이블 업데이트 정책과 구체화된 뷰를 사용하여 데이터 변환을 관리합니다. Eventhouse는 변환된 데이터를 저장하고 대규모 시계열 데이터 세트에 대한 높은 처리량 분석을 지원합니다. 이 방법은 기존 접수 메커니즘을 보완합니다. 또한 변환 및 분석을 위해 Azure Functions 및 Data Explorer를 사용하는 기존 파이프라인에 대한 보다 통합되고 확장 가능한 대안을 제공합니다.
모니터링: 패브릭 내의 Real-Time Intelligence 허브는 스트리밍 이벤트 및 모니터링 데이터에 대한 액세스를 중앙 집중화합니다. 이를 사용하여 메트릭을 시각화하고, 경고를 설정하고, 패브릭 테넌트 전체에서 성능을 모니터링할 수 있습니다. 이 아키텍처는 주로 다이어그램의 왼쪽에 표시된 것처럼 플레이어가 있는 애플리케이션, 서비스 및 클라이언트 디바이스를 모니터링하는 데 중점을 둡니다. 이러한 구성 요소는 다른 구성 요소가 수집하고 분석하는 원격 분석 및 작동 신호를 생성합니다. 그들은 관찰의 핵심 목표 역할을합니다.
변칙 검색: Real-Time Intelligence에는 데이터 활성화기를 통한 기본 제공 AI 기반 변칙 검색이 포함됩니다. 이 기능은 스트리밍 데이터의 비정상적인 패턴 또는 임계값 위반을 자동으로 식별하고 반응형 작업을 트리거할 수 있습니다. 이러한 기능은 기계 학습 모델을 사용하여 수동 구성 없이 실시간으로 변칙을 검색합니다. Eventhouses는 계절성, 추세 및 기록 기준을 고려하는 고급 변칙 검색 함수도 지원합니다. 이 기능을 사용하면 대규모 시계열 데이터 세트 전반에서 보다 정확하고 컨텍스트 인식 가능한 인사이트를 얻을 수 있습니다.
구성 요소
Blob Storage 는 구조화되지 않은 데이터에 대한 확장 가능한 개체 스토리지 서비스입니다. 이 아키텍처에서 Blob Storage는 애플리케이션, 서비스 또는 외부 공급업체에서 시작된 원시 데이터를 저장합니다. 추가 분석이 필요하지 않은 경우 이 데이터를 일시적 데이터로 처리합니다. 텔레메트리는 패브릭 이벤트스트림을 통해 이벤트하우스로 라우팅됩니다. 패브릭 네이티브 기능을 사용하여 높은 처리량 분석을 위해 데이터를 변환하고 유지할 수 있습니다.
Azure Event Grid 는 이벤트 기반 아키텍처를 사용하도록 설정하는 관리되는 이벤트 라우팅 서비스입니다. 이 아키텍처에서 Event Grid는 Blob Storage에서 게시하는 이벤트(예: Blob 만들기 또는 삭제)를 수신 대기하는 신뢰할 수 있는 이벤트 배달 시스템 역할을 합니다. 이러한 이벤트는 Event Grid 알림을 구독하는 Azure 함수를 통해 다운스트림 처리를 트리거합니다. 이 통합을 통해 광범위한 패브릭 기반 아키텍처 내에서 원격 분석 수집 및 라우팅을 지원하는 반응형 이벤트 기반 워크플로를 사용할 수 있습니다.
Azure Event Hubs 는 초당 수백만 개의 이벤트를 수신하고 처리할 수 있는 빅 데이터 스트리밍 플랫폼 및 이벤트 수집 서비스입니다. 이 아키텍처에서 Event Hubs는 이벤트 파이프라인에 대한 이벤트 수집기라고도 하는 정문 역할을 합니다. 이벤트 수집기는 이벤트 게시자와 이벤트 소비자 사이에 있는 구성 요소 또는 서비스입니다. 이벤트 스트림의 프로덕션을 이벤트 소비와 분리합니다.
Azure Functions 는 인프라를 명시적으로 프로비전하거나 관리할 필요 없이 이벤트 트리거 코드를 실행하는 데 사용할 수 있는 서버리스 컴퓨팅 서비스입니다. 이 아키텍처에서 Azure Functions는 HTTP 및 Blob 엔드포인트를 통해 수집된 데이터를 구문 분석하고 변환합니다. 원격 분석 데이터는 확장 가능한 변환 및 분석을 위해 이벤트 스트림 및 이벤트 하우스로 라우팅됩니다.
패브릭 이벤트 스트림은 실시간 이벤트 수집, 변환 및 라우팅을 가능하게 하는 Fabric의 기능입니다. 이 아키텍처에서 패브릭 이벤트 스트림은 다양한 원본에서 이벤트 데이터를 가져오는 다양한 원본 커넥터를 제공합니다. 이 방법을 사용하여 코드를 작성하지 않고 이벤트 데이터 처리, 변환 및 라우팅 논리를 만들 수 있습니다.
패브릭 이벤트 하우스는 시계열 데이터 및 실시간 분석 워크로드에 최적화된 분석 데이터베이스입니다. 이 아키텍처에서 이벤트 하우스는 구조적, 반구조적 및 비구조적 데이터를 포함하는 시간 기반 스트리밍 이벤트에 맞게 조정됩니다. 여러 원본에서 여러 파이프라인 및 여러 데이터 형식으로 데이터를 가져올 수 있습니다. 이 데이터는 수집 시간에 따라 인덱싱되고 분할됩니다.
데이터 활성화기는 변경 데이터에서 패턴을 감지할 때 자동으로 작업을 수행하는 패브릭의 코드 없음 기능입니다. 이 아키텍처에서 Data Activator는 데이터 원본에서 특정 패턴 또는 조건을 검색할 때 작업을 트리거하는 대기 시간이 짧은 이벤트 검색 엔진 역할을 합니다. 1초 미만의 대기 시간으로 이러한 데이터 원본을 모니터링하고 데이터가 임계값을 충족하거나 특정 패턴을 검색할 때 작업을 시작합니다. 이러한 작업에는 전자 메일 또는 Teams 알림 보내기, Power Automate 흐름 시작 또는 외부 시스템과의 통합이 포함됩니다.
대안
Azure Data Factory 는 ETL(추출, 변환 및 로드) 워크플로를 빌드하고 GUI(그래픽 사용자 인터페이스)에서 작업을 추적하고 다시 시도하는 도구를 제공합니다. Data Factory의 최소 지연 시간은 수집 시간부터 지속성까지 약 5분입니다. 모니터링 시스템에서 이러한 지연을 허용할 수 있는 경우 이 대안을 고려하세요.
시나리오 정보
조직에서 비즈니스 문제를 해결하기 위해 다양한 대규모 기술을 배포하는 경우가 많습니다. 이러한 시스템 및 사용자 디바이스는 대규모 원격 분석 데이터 집합을 생성합니다.
이 아키텍처는 미디어 산업의 사용 사례를 기반으로 합니다. 라이브 및 주문형 비디오 재생을 위한 미디어 스트리밍에서는 애플리케이션 문제를 거의 실시간으로 식별하고 대응해야 합니다. 이 실시간 시나리오를 지원하기 위해 조직에서 확장성 있는 아키텍처가 필요한 큰 원격 분석 세트를 수집해야 합니다. 데이터를 수집한 후에는 AI 및 변칙 검색과 같은 다른 유형의 분석을 수행하여 이러한 대규모 데이터 세트에서 문제를 효율적으로 식별해야 합니다.
대규모 기술이 배포되면 상호 작용하는 시스템 및 사용자 디바이스는 대규모 원격 분석 데이터 집합을 생성합니다. 기존 시나리오에서 조직은 데이터 웨어하우스 시스템을 통해 이 데이터를 분석하여 관리 결정을 지원하는 인사이트를 생성합니다. 이 방법은 일부 시나리오에서 작동할 수 있지만 스트리밍 미디어 사용 사례에 대해 충분히 응답하지 않습니다. 이 문제를 해결하려면 조직에서 서버, 네트워크 및 사용자 디바이스를 모니터링하는 원격 분석 데이터에 대한 실시간 인사이트가 필요합니다. 모니터링 시스템은 종종 오류 및 오류를 감지하지만 거의 실시간으로 감지하기가 어렵습니다. 이 아키텍처는 해당 문제를 해결하는 데 중점을 둡니다.
라이브 스트리밍 또는 주문형 비디오 설정에서 시스템 및 모바일 디바이스, 데스크톱 및 TV와 같은 다양한 클라이언트는 원격 분석 데이터를 생성합니다. 솔루션은 원시 데이터를 사용하고 컨텍스트를 각 데이터 요소와 연결합니다. 컨텍스트 예제에는 지리, 사용자 운영 체제, 콘텐츠 ID 및 콘텐츠 배달 네트워크 공급자와 같은 차원이 포함됩니다. 시스템은 분석을 위해 패브릭 이벤트 하우스에서 원시 원격 분석을 수집, 변환 및 저장합니다. AI 도구는 데이터를 해석하고 관찰 및 경고의 수동 프로세스를 자동화할 수 있습니다. 데이터 활성화기는 Real-Time Intelligence 허브에서 데이터를 읽고 대화형 대시보드를 표시하고 경고를 트리거합니다.
고려 사항
이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일련의 기본 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Well-Architected Framework를 참조하세요.
안정성
안정성은 애플리케이션이 고객에 대한 약정을 충족할 수 있도록 하는 데 도움이 됩니다. 자세한 내용은 안정성대한
중요 비즈니스용 애플리케이션은 Azure 지역 또는 콘텐츠 배달 네트워크 중단과 같은 중단 이벤트 중에도 활성 상태를 유지해야 합니다. 다음 전략, 두 가지 기본 전략 및 하나의 하이브리드 전략은 시스템에 중복성 구축을 지원합니다.
활성/활성: 중복 코드 및 함수가 실행됩니다. 두 시스템 중 하나에서 오류가 발생하는 동안 인계받을 수 있습니다.
활성/대기: 하나의 노드만 활성 또는 주 노드로 사용됩니다. 주 노드가 실패할 경우 다른 노드를 인수할 준비가 된 상태로 유지됩니다.
섞인: 일부 구성 요소 또는 서비스는 활성-활성 구성을 사용하는 반면 다른 구성 요소는 활성-대기 구성을 사용합니다.
모든 Azure 서비스에 기본 제공 중복성이 있는 것은 아닙니다. 예를 들어 Azure Functions는 특정 지역에서만 함수 앱을 실행합니다. 함수를 트리거하는 방법(HTTP 및 게시/구독)에 따라 구현하는 전략에 대한 자세한 내용은 Azure Functions의 안정성을 참조하세요.
Fabric은 영역 중복 가용성 영역을 지원합니다. 여기서 리소스는 사용자가 구성할 필요 없이 영역 간에 자동으로 복제됩니다. OneLake에 저장된 데이터에 대한 지역 간 복제에 대한 자세한 내용은 패브릭의 안정성을 참조하세요. 요구 사항에 따라 이 기능을 옵트인하거나 옵트아웃할 수 있습니다.
비용 최적화
비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 개선하는 방법에 중점을 둡니다. 자세한 내용은 비용 최적화대한
이 아키텍처의 비용은 들어오는 원격 분석 이벤트 수, Blob Storage 및 패브릭 이벤트 하우스의 원시 원격 분석 스토리지, 전용 가격 책정 모델 또는 패브릭 용량에 대한 종량제 가격 책정 모델에 따라 달라집니다.
총 비용을 예측하려면 Azure 가격 계산기를 사용합니다.
성능 효율성
성능 효율성은 사용자 요구를 효율적으로 충족하기 위해 워크로드의 크기를 조정하는 기능을 의미합니다. 자세한 내용은 성능 효율성대한
들어오는 원격 분석의 규모 및 빈도에 따라 패브릭의 스트리밍에 성능 제약 조건이 발생할 수 있습니다. 이러한 제약 조건은 일반적으로 다음 요소에서 발생합니다.
콜드 시작: 서버리스 호출에는 함수가 실행되기 전에 환경을 예약하고 설정하는 데 시간이 필요합니다. 이 설정은 최대 몇 초 정도 걸립니다.
요청 빈도: 예를 들어 1,000개의 HTTP 요청이 도착하지만 단일 스레드 서버만 사용할 수 있는 경우 시스템은 모든 요청을 동시에 처리할 수 없습니다. 효율적으로 처리하려면 더 많은 서버를 배포하여 수평으로 확장해야 합니다.
Eventstream 초기화 지연: 새 데이터 원본이 활성화되면 패브릭 이벤트 스트림 파이프라인에서 대기 시간이 발생할 수 있습니다. 이 지연은 콜드 스타트와 유사합니다. 간단하지만 대기 시간에 민감한 시나리오에 영향을 줄 수 있습니다.
고주파 데이터 버스트: 수천 대의 원격 분석 이벤트가 한 번에 도착하는 경우 단일 이벤트 스트림 구성이 동시에 처리되지 않을 수 있습니다. 실시간 응답성을 유지하려면 이벤트 스트림 파이프라인을 확장하고 여러 대상에서 라우팅 규칙을 최적화해야 합니다.
이러한 문제를 완화하려면 Fabric SKU에서 전용 용량 작업 영역을 사용합니다. 이 방법은 다음과 같은 이점을 제공합니다.
초기화 지연을 제거하여 일관된 성능을 보장합니다.
동시 수집 및 변환 워크로드를 처리하기 위해 Eventstream 파이프라인의 수평 크기 조정을 지원합니다.
자세한 내용은 Fabric Real-Time Intelligence를 참조하세요.
참가자
Microsoft는 이 문서를 유지 관리합니다. 다음 기여자는 이 문서를 작성했습니다.
주요 작성자:
- John Hauppa | 선임 기술 프로그램 관리자
- Uffaz Nathaniel | 수석 소프트웨어 엔지니어
기타 기여자:
- Dilmurod Makhamadaliev | 소프트웨어 엔지니어
- Omeed Musavi | 수석 소프트웨어 엔지니어 리드
LinkedIn 비공개 프로필을 보려면, LinkedIn에 로그인하세요.
다음 단계
- Real-Time Intelligence 설명서
- Real-Time Intelligence 자습서: 소개
- Azure Functions 소개
- 추가 코드 샘플
- Azure Media Services 모니터링