Azure IoT Hub 청구 정보

Azure IoT Hub 가격 책정에서는 IoT Hub의 다양한 SKU 및 가격 책정에 대한 일반적인 정보를 제공합니다. 이 문서에서는 IoT Hub에서 다양한 IoT Hub 기능이 메시지로 측정되는 방식에 대한 자세한 정보를 제공합니다.

참고 항목

클라우드-디바이스 메시지, 디바이스 트윈스, 디바이스 관리 등 이 문서에 언급된 일부 기능은 IoT Hub의 표준 계층에서만 사용할 수 있습니다. 기본 및 표준/무료 IoT Hub 계층에 대한 자세한 내용은 솔루션에 적합한 IoT Hub 계층 선택을 참조하세요.

작업당 요금

다음 표를 사용하여 요금이 청구되는 작업을 확인할 수 있습니다. 모든 청구 가능 작업은 기본 및 표준 계층 IoT 허브에서 4K 바이트 블록 단위로 요금이 청구됩니다. 작업은 무료 계층 IoT 허브에서 0.5K 바이트 청크 단위로 측정됩니다. 각 범주에 대한 자세한 정보는 청구 정보 열에 제공됩니다. 이 열에는 다음 정보가 포함됩니다.

  • 기본 및 표준 계층 IoT 허브에서 청구 가능 작업의 요금 측정 방법에 대한 세부 정보. 모든 작업이 기본 계층에서 사용할 수 있는 것은 아닙니다.
  • 다음 중 하나를 사용하여 요금이 청구되는 작업
    • REST API 설명서(있는 경우)에 대한 링크
    • REST API 설명서를 사용할 수 없거나 MQTT 및/또는 AMQP를 통해서만 작업을 사용할 수 있는 경우 작업 엔드포인트 엔드포인트 값은 대상 IoT 허브에 대한 선행 참조를 생략합니다({fully-qualified-iothubname}.azure-devices.net).
  • 각 작업(또는 엔드포인트)에 따라 기울임꼴로 표시되는 하나 이상의 용어. 이러한 용어는 IoT 허브의 할당량에 대해 청구되는 청구 가능 작업을 나타냅니다. Azure Portal에서 지원 요청을 시작할 때 할당량 사용 인사이트의 일부로 이러한 용어가 제공된 것을 볼 수 있습니다. 고객 지원에서 반환될 수도 있습니다. 아래 표를 사용하여 해당 작업과 이러한 용어를 상호 참조하여 IoT 솔루션에 대한 할당량 사용 및 요금 청구를 이해할 수 있습니다. 자세한 내용은 예제 4를 참조하세요.
작업 범주 청구 정보
ID 레지스트리 작업
(만들기, 업데이트, 가져오기, 나열, 삭제, 대량 업데이트, 통계)
요금이 부과되지 않습니다.
디바이스-클라우드 메시지 IoT Hub에 수신 시, 성공적으로 전송된 메시지는 4KB 청크 단위로 요금이 청구됩니다. 예를 들어 100바이트 메시지는 하나의 메시지로 요금이 청구되고, 6KB 메시지는 두 개의 메시지로 요금이 청구됩니다.

디바이스 이벤트 보내기: IoT 허브에 메시지 라우팅 기능이 구성되어 있는지 여부에 따라 디바이스-클라우드 원격 분석 또는 디바이스-클라우드 원격 분석 라우팅입니다.
클라우드-디바이스 메시지 성공적으로 전송된 메시지는 4KB 청크 단위로 요금이 청구됩니다. 예를 들어 6KB 메시지에는 두 개의 메시지에 대한 요금이 청구됩니다.

디바이스 바인딩된 알림 수신: 클라우드-디바이스 명령
파일 업로드 Azure Storage에 대한 파일 전송은 IoT Hub에서 측정되지 않습니다. 파일 전송 시작 및 완료 메시지는 4KB 증분으로 측정되어 요금이 청구됩니다. 예를 들어 10MB 파일을 전송하는 경우 Azure Storage 비용 외에 2개의 메시지로써 요금이 청구됩니다.

파일 업로드 Sas URI 만들기: 디바이스-클라우드 파일 업로드
파일 업로드 상태 업데이트: 디바이스-클라우드 파일 업로드
직접 메서드 성공적인 메서드 요청은 4KB 청크 단위로 요금이 청구됩니다. 응답은 추가 메시지로서 4KB 단위로 요금이 청구됩니다. 페이로드가 없는 요청 또는 응답은 하나의 메시지로 요금이 청구됩니다. 예를 들어 디바이스에서 페이로드가 없는 응답을 초래하는 4KB 본문 메서드에는 2개 메시지 요금이 청구됩니다. 디바이스에서 1KB 응답을 초래하는 6KB 본문 메서드에는 요청에 대한 두 메시지와, 응답에 대한 다른 메시지 요금이 청구됩니다. 연결이 끊긴 디바이스에 대한 요청은 4KB 청크 단위 메시지와 디바이스가 온라인 상태가 아님을 나타내는 응답에 대한 메시지 1개로 요금이 청구됩니다.

디바이스 - 메서드 호출: 디바이스 직접 메서드 호출
모듈 - 메서드 호출: 모듈 직접 메서드 호출
디바이스 및 모듈 쌍 읽기 디바이스 또는 모듈과 솔루션 백 엔드에서의 쌍 읽기는 4KB 청크 메시지로 요금이 청구됩니다. 예를 들어 8KB 트윈 읽기는 2개의 메시지로 요금이 청구됩니다.

트윈 가져오기: 트윈 가져오기
모듈 트윈 가져오기: 모듈 트윈 가져오기

다음과 같이 디바이스에서 디바이스 및 모듈 트윈을 읽습니다.
엔드포인트: /devices/{id}/twin(MQTT, AMQP만 해당): D2C 트윈 가져오기
엔드포인트: /devices/{deviceid}/modules/{moduleid}/twin(MQTT, AMQP만 해당): 모듈 D2C 트윈 가져오기
디바이스 및 모듈 쌍 업데이트(태그 및 속성) 디바이스 또는 모듈과 솔루션 백 엔드에서의 쌍 업그레이드는 4KB 청크 메시지로써 요금이 청구됩니다. 예를 들어 트윈에 12KB 업데이트는 3개 메시지로 요금이 청구됩니다.

트윈 업데이트: 트윈 업데이트
모듈 트윈 업데이트: 모듈 트윈 업데이트
트윈 바꾸기: 트윈 바꾸기
모듈 트윈 바꾸기: 모듈 트윈 바꾸기

다음과 같이 디바이스의 디바이스 또는 모듈 트윈 reported 속성을 업데이트합니다.
엔드포인트: /twin/PATCH/properties/reported/(MQTT, AMQP만 해당): D2 패치 ReportedProperties 또는 모듈 D2 패치 ReportedProperties

다음과 같이 디바이스에서 원하는 속성 업데이트 알림을 수신합니다.
엔드포인트: /twin/PATCH/properties/desired/ (MQTT, AMQP만 해당): D2C 알림 DesiredProperties 또는 모듈 D2C 알림 DesiredProperties
디바이스 및 모듈 쌍 쿼리 디바이스 또는 devices.modules에 대한 쿼리는 4KB 청크의 결과 크기에 따라 메시지로 청구됩니다. 작업에 대한 쿼리는 요금이 청구되지 않습니다.

트윈 가져오기(디바이스 또는 devices.modules 컬렉션에 대한 쿼리): 디바이스 쿼리
디지털 트윈 읽기 솔루션 백 엔드에서 디지털 트윈 읽기는 4KB 청크 메시지로 요금이 청구됩니다. 예를 들어 8KB 트윈 읽기는 2개의 메시지로 요금이 청구됩니다.

디지털 트윈 가져오기: 디지털 트윈 가져오기
디지털 트윈 업데이트 솔루션 백 엔드에서 디지털 트윈 업데이트는 4KB 청크 메시지로 요금이 청구됩니다. 예를 들어 트윈에 12KB 업데이트는 3개 메시지로 요금이 청구됩니다.

디지털 트윈 업데이트: 디지털 트윈 업데이트
디지털 트윈 명령 성공한 명령은 4KB 청크 단위로 요금이 청구되고, 응답은 추가 메시지로서 4KB 단위로 요금이 청구됩니다. 본문이 없는 요청 또는 응답은 하나의 메시지로 요금이 청구됩니다. 예를 들어 디바이스에서 본문이 없는 응답을 초래하는 4KB 본문 명령에는 2개 메시지 요금이 청구됩니다. 디바이스에서 1KB 응답을 초래하는 6KB 본문 명령에는 요청에 대한 2개 메시지 + 응답에 대한 다른 메시지 요금이 청구됩니다. 연결이 끊긴 디바이스에 대한 명령은 4KB 청크 단위 메시지와 디바이스가 온라인 상태가 아님을 나타내는 응답에 대한 메시지 1개로 요금이 청구됩니다.

구성 요소 호출 명령: 디지털 트윈 구성 요소 명령
루트 수준 호출 명령: 디지털 트윈 루트 명령
작업 연산
(만들기, 취소, 가져오기, 쿼리)
요금이 부과되지 않습니다.
디바이스 단위 작업 연산 작업 연산(예: 트윈 업데이트 및 메서드)은 4KB 청크 단위로 요금이 청구됩니다. 예를 들어 1KB 요청과 빈 페이로드 응답으로 1000개 메서드 호출을 초래하는 작업에는 2000개 메시지(각 요청 및 응답마다 1개 메시지) 요금이 청구됩니다.

트윈 업데이트 디바이스 작업
메서드 호출 디바이스 작업
구성 작업
(만들기, 업데이트, 가져오기, 나열, 삭제, 쿼리 테스트)
요금이 부과되지 않습니다.
디바이스별 구성 작업 구성 작업은 4KB 청크 단위 메시지로 요금이 청구됩니다. 응답에는 요금이 부과되지 않습니다. 예를 들어 본문이 6KB인 구성 적용 작업은 2개 메시지로 요금이 청구됩니다.

Edge 디바이스에서 적용: 구성 서비스 적용
연결 유지 메시지 AMQP 또는 MQTT 프로토콜을 사용하는 경우 연결을 설정하기 위해 교환되는 메시지와 협상에서 또는 연결을 계속 열어 두기 위해 교환되는 메시지에는 요금이 청구되지 않습니다.
디바이스 스트림(미리 보기) 디바이스 스트림은 현재 미리 보기로 제공되며 아직 작업 요금이 청구되지 않습니다.

엔드포인트: /twins/{deviceId}/streams/{streamName}: 디바이스 스트림
엔드포인트: /twins/{deviceId}/modules/{moduleId}/streams/{streamName}: 디바이스 스트림 모듈

참고 항목

모든 크기는 바이트 단위의 페이로드 크기를 고려해서 계산됩니다(프로토콜 프레이밍은 무시됨). 속성 및 본문이 있는 메시지의 경우 크기는 프로토콜을 고려하지 않는 방식으로 산출됩니다. 자세한 내용은 IoT Hub 메시지 형식을 참조하세요.

최대 메시지 크기는 작업 종류에 따라 다릅니다. 자세한 내용은 IoT Hub 할당량 및 제한을 참조하세요.

일부 작업의 경우 일괄 처리 및 압축 전략을 사용하여 비용을 줄일 수 있습니다. 디바이스-클라우드 원격 분석을 사용하는 예제는 예제 #3을 참조하세요.

예 #1

디바이스가 분당 1개의 1KB 디바이스-클라우드 메시지를 IoT Hub로 전송하면 Azure Stream Analytics에서 읽습니다. 솔루션 백 엔드는 10분 간격으로 디바이스에서 메서드(512바이트 페이로드)를 호출하여 특정 작업을 트리거합니다. 디바이스는 200바이트의 결과로 메서드에 응답합니다.

디바이스는 다음을 사용합니다.

  • 한 메시지 * 60 분 * 24 시간 = 디바이스-클라우드 메시지에 대해 1일 1440개 메시지

  • 2개 메시지(요청 + 응답) * 시간당 6회 * 24 시간 = 메서드에 대한 288개 메시지

이 계산을 통해 하루에 총 1728개의 메시지가 됩니다.

예 #2

디바이스는 1시간마다 하나의 100KB 디바이스-클라우드 메시지를 보냅니다. 또한 4시간마다 1KB 페이로드로 디바이스 쌍을 업데이트합니다. 솔루션 백 엔드는 하루에 1번, 14KB의 디바이스 쌍을 읽고 512바이트 페이로드로 업데이트하여 구성을 변경합니다.

디바이스는 다음을 사용합니다.

  • 디바이스-클라우드 메시지에 대해 25(100KB/4KB)개 메시지 * 24시간

  • 1개 메시지(1KB/4KB) * 디바이스 트윈 업데이트에 대해 하루 6회

이 계산을 통해 하루에 총 606개의 메시지가 됩니다.

솔루션 백 엔드는 디바이스 쌍을 읽기 위한 4개 메시지(14KB/4KB)와 업데이트하기 위한 1개 메시지(512/4KB)를 더해서 총 5개 메시지를 사용합니다.

전체적으로 디바이스 및 솔루션 백 엔드는 하루에 611개 메시지를 사용합니다.

예 #3

시나리오에 따라 메시지를 일괄 처리하면 할당량 사용을 줄일 수 있습니다.

예를 들어 읽을 때마다 100바이트의 데이터만 생성하는 센서가 있는 디바이스를 생각해 볼 수 있습니다.

  • 디바이스가 40개 센서를 4KB 페이로드(40 * 100바이트)로 단일 디바이스-클라우드 메시지로 읽어 들이는 경우 1개 메시지만 할당량에 대해 청구됩니다. 디바이스가 매시간 센서를 40회 읽고 해당 읽기를 매시간 단일 디바이스-클라우드 메시지로 일괄 처리하면 하루에 보내는 메시지는 24개입니다.

  • 디바이스가 각 센서 읽기에 대해 100바이트 페이로드가 있는 디바이스-클라우드 메시지를 보내는 경우 동일한 양의 데이터에 대한 할당량에서 40개 메시지를 사용합니다. 디바이스가 매시간 센서를 40회 읽고 각 메시지를 개별적으로 보내는 경우 하루에 보내는 메시지는 960개(40개 메시지 * 24개)입니다.

일괄 처리 전략은 시나리오와 데이터가 얼마나 중요한지에 따라 달라집니다. 대량의 데이터를 보내는 경우 메시지 할당량에 미치는 영향을 더 줄이기 위해 데이터 압축을 구현하는 방법도 고려할 수 있습니다.

예제 #4

Azure Portal에서 지원 요청을 열면 보고된 문제와 관련된 진단이 실행됩니다. 결과는 요청의 솔루션 탭에 인사이트로 표시됩니다. 이러한 인사이트 중 하나는 이전 표의 기울임꼴 용어를 사용하여 IoT 허브에 대한 할당량 사용을 보고합니다. 이 특정 인사이트가 반환되는지 여부는 보고 중인 문제에 대해 IoT 허브에서 수행된 진단 결과에 따라 달라집니다. 할당량 사용 인사이트가 보고되면 표를 사용하여 보고된 사용 용어 또는 용어를 이러한 용어가 참조하는 작업과 상호 참조할 수 있습니다.

예를 들어 다음 스크린샷은 디바이스-클라우드 원격 분석 관련 문제에 대해 시작된 지원 요청을 보여줍니다.

Screenshot that shows selecting an issue in Azure portal support request.

다음 솔루션을 선택하면 IoT Hub 일일 메시지 할당량 분석 아래의 진단에 할당량 사용 현황 인사이트가 반환됩니다. IoT 허브로 전송된 디바이스-클라우드 메시지에 대한 분석 내용이 표시됩니다. 이 예제에서는 IoT 허브에서 메시지 라우팅을 사용하므로, 메시지가 디바이스-클라우드 원격 분석 라우팅으로 표시됩니다. 다른 IoT 허브의 동일한 문제에 대한 할당량 사용 인사이트는 반환되지 않을 수 있습니다. 반환되는 내용은 해당 IoT 허브의 활동 및 상태에 따라 달라집니다.

Screenshot that shows quota usage in Azure portal support request.