다음을 통해 공유


IoT Edge의 Azure Stream Analytics

IoT Edge의 Azure Stream Analytics를 통해 개발자는 디바이스에서 생성된 데이터의 전체 값을 잠금 해제할 수 있도록 거의 실시간에 가까운 분석 인텔리전스를 IoT 디바이스에 배포할 수 있습니다. Azure Stream Analytics는 짧은 대기 시간, 복원력, 효율적인 대역폭 사용 및 규정 준수를 위해 설계되었습니다. 기업은 산업 운영에 가까운 제어 논리를 배포하고 클라우드에서 수행된 빅 데이터 분석을 보완할 수 있습니다.

IoT Edge의 Azure Stream Analytics는 Azure IoT Edge 프레임워크 내에서 실행됩니다. Stream Analytics에서 작업이 만들어지면 IoT Hub를 사용하여 배포하고 관리할 수 있습니다.

일반적인 시나리오

이 섹션에서는 IoT Edge의 Stream Analytics에 대한 일반적인 시나리오를 설명합니다. 다음 다이어그램은 IoT 디바이스와 Azure 클라우드 간의 데이터 흐름을 보여줍니다.

IoT Edge의 상위 수준 다이어그램

짧은 대기 시간 명령 및 제어

제조 안전 시스템은 매우 짧은 대기 시간으로 운영 데이터에 응답해야 합니다. IoT Edge의 Stream Analytics를 사용하면 거의 실시간으로 센서 데이터를 분석하고 변칙을 감지하여 머신을 중지하거나 경고를 트리거할 때 명령을 실행할 수 있습니다.

클라우드에 대한 연결 제한

원격 마이닝 장비, 연결된 선박 또는 해양 시추와 같은 중요 업무용 시스템은 클라우드 연결이 간헐적인 경우에도 데이터를 분석하고 대응해야 합니다. Stream Analytics를 사용하면 스트리밍 논리가 네트워크 연결과 독립적으로 실행되며 추가 처리 또는 스토리지를 위해 클라우드로 보낼 항목을 선택할 수 있습니다.

제한된 대역폭

제트 엔진이나 커넥티드 카에서 생성된 데이터의 양이 너무 커서 데이터를 필터링하거나 미리 처리한 후 클라우드로 전송해야 합니다. Stream Analytics를 사용하여 클라우드로 전송해야 하는 데이터를 필터링하거나 집계할 수 있습니다.

규정 준수

규정 준수를 위해서는 클라우드로 전송되기 전에 일부 데이터를 로컬로 익명화하거나 집계해야 할 수 있습니다.

Azure Stream Analytics의 Edge 작업

Stream Analytics Edge 작업은 Azure IoT Edge 디바이스에 배포된 컨테이너에서 실행됩니다. Edge 작업은 다음 두 부분으로 구성됩니다.

  • 작업 정의를 담당하는 클라우드 파트: 사용자가 클라우드에서 입력, 출력, 쿼리 및 기타 설정(예: 순서가 다른 이벤트)을 정의합니다.

  • IoT 디바이스에서 실행되는 모듈입니다. 이 모듈은 Stream Analytics 엔진을 포함하고 클라우드에서 작업 정의를 받습니다.

Stream Analytics는 IoT Hub를 사용하여 디바이스에 에지 작업을 배포합니다. 자세한 내용은 IoT Edge 배포를 참조하세요.

Azure Stream Analytics Edge 작업

Edge 작업 제한 사항

목표는 IoT Edge 작업과 클라우드 작업 간에 패리티를 갖는 것입니다. 대부분의 SQL 쿼리 언어 기능은 에지 및 클라우드 모두에서 지원됩니다. 그러나 에지 작업에는 다음 기능이 지원되지 않습니다.

  • JavaScript의 UDF(사용자 정의 함수)입니다. UDF는 C#에서 IoT Edge 작업 (미리 보기)에 사용할 수 있습니다.
  • UDA(사용자 정의 집계)입니다.
  • Azure ML 함수.
  • 입력/출력에 대한 AVRO 형식입니다. 현재 CSV 및 JSON만 지원됩니다.
  • 다음 SQL 연산자는 다음과 같습니다.
    • PARTITION BY
    • GetMetadataPropertyValue
  • 지연 도착 정책

런타임 및 하드웨어 요구 사항

IoT Edge에서 Stream Analytics를 실행하려면 Azure IoT Edge를 실행할 수 있는 디바이스가 필요합니다.

Stream Analytics 및 Azure IoT Edge는 Docker 컨테이너를 사용하여 여러 호스트 운영 체제(Windows, Linux)에서 실행되는 이식 가능한 솔루션을 제공합니다.

IoT Edge의 Stream Analytics는 x86-64 또는 ARM(고급 RISC 컴퓨터) 아키텍처 모두에서 실행되는 Windows 및 Linux 이미지로 제공됩니다.

입력 및 출력

Stream Analytics Edge 작업은 IoT Edge 디바이스에서 실행되는 다른 모듈에서 입력 및 출력을 가져올 수 있습니다. 특정 모듈에서 또는 특정 모듈에 연결하려면 배포 시 라우팅 구성을 설정할 수 있습니다. 자세한 내용은 IoT Edge 모듈 컴퍼지션 설명서에 설명되어 있습니다.

입력 및 출력 모두에 대해 CSV 및 JSON 형식이 지원됩니다.

Stream Analytics 작업에서 만드는 각 입력 및 출력 스트림에 대해 배포된 모듈에 해당 엔드포인트가 만들어집니다. 이러한 엔드포인트는 배포 경로에서 사용할 수 있습니다.

지원되는 스트림 입력 형식은 다음과 같습니다.

  • 에지 허브
  • 이벤트 허브
  • IoT Hub

지원되는 스트림 출력 형식은 다음과 같습니다.

  • 에지 허브
  • SQL 데이터베이스
  • 이벤트 허브
  • Blob Storage/ADLS Gen2

참조 입력은 참조 파일 형식을 지원합니다. 클라우드 작업 다운스트림을 사용하여 다른 출력에 도달할 수 있습니다. 예를 들어 Edge에서 호스트되는 Stream Analytics 작업은 출력을 Edge Hub로 보낸 다음, IoT Hub로 출력을 보낼 수 있습니다. IoT Hub에서 입력을 받아 Power BI 또는 다른 출력 형식으로 출력하는 클라우드 호스팅 Azure Stream Analytics 작업을 두 번째로 사용할 수 있습니다.

Azure Stream Analytics 모듈 이미지 정보

이 버전 정보는 2020-09-21에 마지막으로 업데이트되었습니다.

  • 이미지: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-amd64

    • 기본 이미지: mcr.microsoft.com/dotnet/core/runtime:2.1.13-alpine
    • 플랫폼:
      • 아키텍처: amd64
      • os: linux
  • 이미지: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm32v7

    • 기본 이미지: mcr.microsoft.com/dotnet/core/runtime:2.1.13-bionic-arm32v7
    • 플랫폼:
      • 아키텍처: ARM
      • os: linux
  • 이미지: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm64

    • 기본 이미지: mcr.microsoft.com/dotnet/core/runtime:3.0-bionic-arm64v8
    • 플랫폼:
      • 아키텍처: arm64
      • os: linux

도움받기

추가 지원을 받으려면 Azure Stream Analytics에 대한 Microsoft Q&A 질문 페이지를 참조하세요.

다음 단계