기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
데이터 보존 흐름 구성
데이터 보존 흐름은 엣지에서 운영 가시성을 유지하는 데 사용할 수 있습니다. 이는 네트워크 중단 시 또는 데이터에 즉시 액세스해야 하는 경우에 유용합니다. 이 흐름은 MQTT 브로커를 구독하여 디바이스 데이터를 수신하고 InfluxDB® 형식으로 변환한 다음 로컬에 저장합니다. 이 흐름을 구현하면 운영자가 클라우드 종속성 없이 액세스할 수 있는 복원력이 뛰어난 로컬 데이터 스토어를 생성하여 엣지에서 실시간 모니터링 및 의사 결정을 수행할 수 있습니다.
흐름은 데이터를 올바르게 캡처하고 저장하기 위해 함께 작동하는 세 가지 주요 구성 요소로 구성됩니다.
-
MQTT 구독 클라이언트 - 브로커로부터 데이터를 수신하여 모든 관련 산업 데이터를 캡처합니다.
-
InfluxDB 변환기 - AWS IoT SiteWise 페이로드를 InfluxDB 형식으로 변환하여 효율적인 시계열 스토리지를 위한 데이터 준비
-
InfluxDB 라이터 - 로컬 스토리지를 처리하여 로컬 애플리케이션의 데이터 지속성 및 가용성 보장

MQTT 구독 클라이언트 설정
-
아래 예제를 가져 AWS IoT SiteWise 와서에서 MQTT EMQX 브로커로부터 데이터를 수신하도록 Node-RED로 MQTT 구독 클라이언트를 구성합니다.
예 : 노드의 MQTT
[ { "id": "string", "type": "mqtt in", "z": "string", "name": "Subscribe to MQTT broker", "topic": "
/Renton/WindFarm/Turbine/WindSpeed
", "qos": "1
", "datatype": "auto-detect", "broker": "string", "nl": false, "rap": true, "rh": 0, "inputs": 0, "x": 290, "y": 340, "wires": [ [ "string" ] ] }, { "id": "string", "type": "mqtt-broker", "name": "emqx", "broker": "127.0.0.1", "port": "1883", "clientid": "", "autoConnect": true, "usetls": false, "protocolVersion": "5", "keepalive": 15, "cleansession": true, "autoUnsubscribe": true, "birthTopic": "", "birthQos": "0", "birthPayload": "", "birthMsg": {}, "closeTopic": "", "closePayload": "", "closeMsg": {}, "willTopic": "", "willQos": "0", "willPayload": "", "willMsg": {}, "userProps": "", "sessionExpiry": "" } ]
이 구독을 통해 브로커에 게시된 모든 관련 데이터가 로컬 스토리지에 캡처되어 산업 운영에 대한 전체 레코드를 제공할 수 있습니다. 노드는 다음 구독 설정과 함께 MQTT 게시자 구성 섹션과 동일한 MQTT 연결 파라미터를 사용합니다.
-
주제 -
/Renton/WindFarm/Turbine/WindSpeed
-
QoS -
1
자세한 내용은 Node-RED 설명서의 MQTT 브로커에 연결을
InfluxDB 변환기 구성
InfluxDB는 인덱싱에 태그를
-
태그 - 효율적인 인덱싱을 위한 품질 및 이름 속성
-
필드 - 타임스탬프(에포크 이후 밀리초) 및 값
예 : InfluxDB 페이로드로 변환하는 함수 노드
[ { "id": "string", "type": "function", "z": "string", "name": "Translate to InfluxDB payload", "func": "let data = msg.payload;\n\nlet timeInSeconds = data.propertyValues[0].timestamp.timeInSeconds;\nlet offsetInNanos = data.propertyValues[0].timestamp.offsetInNanos;\nlet timestampInMilliseconds = (timeInSeconds * 1000) + (offsetInNanos / 1000000);\n\nmsg.payload = [\n {\n \"timestamp(milliseconds_since_epoch)\": timestampInMilliseconds,\n \"value\": data.propertyValues[0].value.doubleValue\n },\n {\n \"name\": data.propertyAlias,\n \"quality\": data.propertyValues[0].quality\n }\n]\n\nreturn msg", "outputs": 1, "timeout": "", "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 560, "y": 340, "wires": [ [ "string" ] ] } ]
추가 구성 옵션은 Node-RED GitHub 리포지토리의 node-red-contrib-influxdb
InfluxDB 라이터 설정
InfluxDB 라이터 노드는 데이터 보존 흐름의 최종 구성 요소로, 산업 데이터를 로컬 InfluxDB 데이터베이스에 저장하는 역할을 합니다. 이 로컬 스토리지는 네트워크 중단 시 운영 가시성을 유지하고 시간이 중요한 애플리케이션의 데이터에 즉시 액세스할 수 있도록 하는 데 중요합니다.
-
팔레트 관리 옵션을 통해 node-red-contrib-influxdb 패키지를 설치합니다. 이 패키지는 Node-RED를 InfluxDB와 연결하는 데 필요한 노드를 제공합니다.
-
흐름에 InfluxDB 출력 노드를 추가합니다. 이 노드는 InfluxDB 데이터베이스에 대한 실제 데이터 쓰기를 처리합니다.
-
InfluxDB 인스턴스에 대한 보안 연결을 설정하도록 서버 속성을 구성합니다.
-
버전을 2.0으로 설정 - 이전 버전과 다른 API를 사용하는 InfluxDB v2.x에 연결하도록 지정합니다.
-
URL을 로 설정
http://127.0.0.1:8086
- 로컬 InfluxDB 인스턴스를 가리킵니다. -
InfluxDB 인증 토큰을 입력합니다. 이 보안 토큰은 데이터베이스에 대한 연결을 승인합니다. InfluxDB를 사용하여 로컬 스토리지 설정 절차 중에 토큰을 생성했습니다.
-
-
스토리지 위치 파라미터를 지정하여 데이터가 저장되는 위치와 방법을 정의합니다.
-
InfluxDB 조직 이름 입력 - 조직은 버킷과 대시보드가 속한 사용자 그룹을 위한 워크스페이스입니다. 자세한 내용은의 조직 관리를
참조하세요InfluxData Documentation. -
InfluxDB 버킷 지정(예:
WindFarmData
) - 버킷은 시계열 데이터의 컨테이너 역할을 하는 기존 시스템의 데이터베이스와 동일합니다. -
InfluxDB 측정 설정(예:
TurbineData
) - 측정은 관계형 데이터베이스의 테이블과 유사하여 관련 데이터 포인트를 구성합니다.
-
참고
InfluxDB 인스턴스의 왼쪽 사이드바에서 조직 이름을 찾습니다. 조직, 버킷 및 측정 개념은 InfluxDB의 데이터 조직 모델의 기본입니다. 자세한 내용은 InfluxDB 설명서를
보존 흐름 배포 및 확인
데이터 보존 흐름의 모든 구성 요소를 구성한 후에는 시스템이 올바르게 작동하는지 배포하고 확인해야 합니다. 이 확인을 통해 산업 데이터가 즉각적인 액세스 및 분석을 위해 로컬에 올바르게 저장되고 있는지 확인할 수 있습니다.
-
데이터 보존 흐름도에 표시된 대로 노드 3개를 연결합니다. 이렇게 하면 로컬 스토리지에 대한 데이터 구독에서 전체 파이프라인이 생성됩니다.
-
배포를 선택하여 변경 사항을 적용하고 흐름을 활성화합니다. 그러면 데이터 수집 및 스토리지 프로세스가 시작됩니다.
-
InfluxDB Data Explorer를 사용하여 데이터를 쿼리하고 시각화합니다. 이 도구를 사용하면 데이터가 올바르게 저장되고 있는지 확인하고 시계열 데이터의 초기 시각화를 생성할 수 있습니다.
Data Explorer에서 시간 경과에 따른 풍속 측정값이 기록되는 것을 확인하여 데이터 생성부터 로컬 스토리지까지 전체 파이프라인이 올바르게 작동하는지 확인할 수 있습니다.
자세한 내용은 의 Data Explorer에서 쿼리
를 참조하세요InfluxData Documentation.
데이터 게시 흐름과 데이터 보존 흐름이 모두 배포되면 이제 즉각적인 액세스와 복원력을 위해 로컬 복사본을 AWS IoT SiteWise 유지하면서 클라우드로 데이터를 전송하는 완전한 시스템을 갖게 됩니다. 이 이중 경로 접근 방식을 사용하면 클라우드 기반 분석 및 스토리지의 이점을 얻는 동시에 엣지에서 운영 가시성을 유지할 수 있습니다.