자산 자산 알림 메시지 쿼리 - AWS IoT SiteWise

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

자산 자산 알림 메시지 쿼리

자산 자산 알림을 쿼리하려면 SQL 명령문으로 구성된 AWS IoT Core 규칙을 생성하십시오.

AWS IoT SiteWise 자산 자산 데이터 업데이트를 다음 형식으로 AWS IoT Core에 게시합니다.

{ "type": "PropertyValueUpdate", "payload": { "assetId": "String", "propertyId": "String", "values": [ { "timestamp": { "timeInSeconds": Number, "offsetInNanos": Number }, "quality": "String", "value": { "booleanValue": Boolean, "doubleValue": Number, "integerValue": Number, "stringValue": "String" } } ] } }

values목록의 각 구조는 timestamp-quality-value (TQV) 구조입니다.

  • timestamp는 현재 Unix epoch 시간(초)과 오프셋(나노초)을 포함합니다.

  • quality는 데이터 요소의 품질을 나타내는 다음 문자열 중 하나를 포함합니다.

    • GOOD – 데이터가 어떤 문제의 영향도 받지 않습니다.

    • BAD – 데이터가 센서 고장과 같은 문제의 영향을 받습니다.

    • UNCERTAIN – 데이터가 센서 부정확과 같은 문제의 영향을 받습니다.

  • value는 속성 유형에 따라 다음 필드 중 하나를 포함합니다.

    • booleanValue

    • doubleValue

    • integerValue

    • stringValue

values배열에서 값을 구문 분석하려면 규칙 SQL 명령문에 복잡한 중첩 개체 쿼리를 사용해야 합니다. 자세한 내용은AWS IoT 개발자 가이드의 중첩 객체 쿼리를 참조하거나 Amazon DynamoDB에 속성 값 업데이트를 게시합니다. 자습서에서 자산 속성 알림 메시지 구문 분석에 대한 구체적인 예를 참조하세요.

예 값 배열을 추출하는 쿼리 예제

다음 명령문은 해당 속성을 가진 모든 자산의 특정 이중 유형 속성을 확인하기 위해 업데이트된 속성 값 배열을 쿼리하는 방법을 보여 줍니다.

SELECT (SELECT VALUE (value.doubleValue) FROM payload.values) AS windspeed FROM '$aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE' WHERE type = 'PropertyValueUpdate'

이전 규칙 쿼리 문은 다음과 같은 형식으로 데이터를 출력합니다.

{ "windspeed": [ 26.32020195042838, 26.282584572975477, 26.352566977372508, 26.283084346171442, 26.571883739599322, 26.60684140743005, 26.628738636715045, 26.273486932802125, 26.436379105473964, 26.600590095377303 ] }
예 단일 값을 추출하는 쿼리 예제

다음 명령문은 해당 속성을 가진 모든 자산의 특정 이중 유형 속성을 확인하기 위해 속성 값 배열의 첫 번째 값을 쿼리하는 방법을 보여 줍니다.

SELECT get((SELECT VALUE (value.doubleValue) FROM payload.values), 0) AS windspeed FROM '$aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE' WHERE type = 'PropertyValueUpdate'

이전 규칙 쿼리 문은 다음과 같은 형식으로 데이터를 출력합니다.

{ "windspeed": 26.32020195042838 }
중요

이 규칙 쿼리 문은 각 배치에 있는 첫 번째 값 이외의 값 업데이트를 무시합니다. 각 배치에는 최대 10개의 값이 포함될 수 있습니다. 나머지 값을 포함해야 하는 경우 자산 속성 값을 다른 서비스로 출력하는 보다 복잡한 솔루션을 설정해야 합니다. 예를 들어 배열의 각 값을 다른 주제에 다시 게시하는 AWS Lambda 동작이 포함된 규칙을 설정하고, 해당 주제를 쿼리하여 각 값을 원하는 규칙 작업에 게시하는 다른 규칙을 설정할 수 있습니다.