데이터 처리
또한 수집과 시각화 간에 ThingWorx Platform은 응용 프로그램의 모든 비즈니스 로직 및 데이터 변환 요구사항을 실행할 수 있는 충분한 시스템 리소스를 필요로 합니다.
이 단원에서는 데이터 처리 요구사항에 영향을 줄 수 있는 보다 중요한 영역에 대 한 개념을 설명합니다. 데이터 처리는 비즈니스 사용 사례별로 매우 달라지므로 표준화된 계산이 덜 유용합니다.
수집 및 시각화 추정치가 구해지면 생산 단계로 옮겨가기 전에 응용 프로그램 로드 또는 스트레스 테스트라는 중요한 단계를 거칩니다. 이러한 단계에서는 응용 프로그램에 복잡한 비즈니스 로직 또는 이벤트/경고 처리에 대한 추가 리소스가 필요한 경우 기준선보다 다른 크기 시스템을 선택하게 될 수 있습니다.
구독 및 이벤트
타이머 및 속성 변경 이벤트에 대한 구독은 대개 ThingWorx 응용 프로그램의 대부분의 비즈니스 로직을 구성합니다. 이러한 구독은 수집 및 장치 연결 중에 사용되지 않는 시스템인 이벤트 처리 하위 시스템의 메모리를 사용합니다.
안정적인 수집 및 장치 연결을 위해 시스템의 크기가 조정되면 시스템을 생산 용도를 지원할 수 있는 적절한 크기로 조정하기 위한 중요한 단계인 비즈니스 로직을 사용한 로드 테스트를 거칩니다.
파일 전송 및 관리
에지 장치 간에 파일을 전송하는 것은 ThingWorx 응용 프로그램 사용 사례에 대한 일반적인 요구사항입니다.
소프트웨어 업데이트 배포
로그 파일 문제 해결 또는 액세스
기능 및 성능을 확인하기 위해 이미지, PDF 또는 기타 파일 수신
동시에 많은 파일이 전송되거나 큰 파일이 전송될 것으로 예상되는 경우 이러한 로드를 처리하기 위해 추가 플랫폼 메모리가 필요할 수 있습니다.
ThingWorx에 대한 고가용성 요구사항
고가용성 구성에서 배포하는 경우(ThingWorx 고가용성 단원에서 설명됨) 고가용성 관계형 데이터베이스 구성이 종종 사용됩니다.
이 구성을 통해 시스템 오류로 인한 가동 중지를 방지할 수 있지만 쓰기 성능이 약간 저하될 수도 있습니다.
이를 해결하기 위해 데이터 수집 계산에서 예상된 WPS가 원하는 구성에 대한 임계값에 가까우면 다음 크기의 시스템 구성을 고려하십시오.
터널 및 타사 도구
많은 비즈니스 사용 사례에서는 에지 장치로의 터널링 세션을 활용합니다. 이를 위해서는 세션 전체에서 WebSocket 연결이 열리고 유지되어야 합니다.
마찬가지로 타사 도구(예: SCADA, ERP 또는 기타 통합 백오피스 응용 프로그램)가 플랫폼에 대해 WebSocket 연결을 사용할 수도 있습니다.
이러한 도구가 REST API 호출을 사용하여 ThingWorx에 액세스하는 경우 이전에 데이터 시각화를 위해 계산된 초당 HTTP 요청 수가 증가합니다.
각 WebSocket 연결에는 플랫폼에 대한 메모리가 필요하므로, 많은 동시 터널링 세션 또는 REST API 요청이 예상되는 경우 플랫폼에 대한 총 메모리 할당(또는 선택되는 VM의 크기/클래스)을 늘리는 것이 좋습니다.
데이터 보존, 집계 및 보관
데이터 처리(내 비즈니스 로직이 어디까지 보이도록 할지 여부) 및 데이터 시각화(사용자가 어디까지 보도록 해야 하는지 여부) 모두에 대해 기록 데이터가 필요한 경우가 많습니다.
플랫폼에 저장할 기록 데이터의 양은 데이터베이스 크기 조정과 플랫폼 시스템 크기 조정 모두에 영향을 줍니다. 데이터 소스(스트림, 데이터 테이블 및 가치 스트림)가 클수록 데이터베이스에서 질의하는 트랜잭션이 길어집니다. 이러한 긴 트랜잭션으로 인해 스트림과 가치 스트림 대기열이 추가 메모리를 백업하고 활용할 수도 있습니다.
한 데이터 소스에 너무 많은 엔트리가 포함되지 않도록 데이터를 집계해 보는 것이 가장 좋습니다(자세한 내용은 이 모범 사례 안내서 참조). 많은 양의 기록 데이터가 필요하거나 많은 양의 수집된 데이터를 장기간 보관해야 하는 경우 보다 강력한 데이터베이스 솔루션을 고려해야 합니다. 아래 데이터베이스 옵션에 대한 세부 내용을 참조하십시오.
H2 - 개발 및 소규모 시스템에 가장 적합한 소규모 메모리 내 데이터베이스로, 소규모 구현 이상으로 확장되지는 않습니다.
* 
H2는 생산 ThingWorx 시스템에 권장되지 않습니다.
Microsoft SQL Server - 개발 또는 생산 시스템에서 ThingWorx 데이터 모델, 스트림 및 가치 스트림을 관리하는 데 사용할 수 있는 강력하고 다양한 기능의 관계형 데이터베이스입니다. 모든 소규모, 중규모 및 대규모 구현에 맞게 크기가 조정될 수 있습니다.
PostgreSQL - SQL Server와 유사한 PostgreSQL은 모든 크기의 생산 환경에서 사용할 수 있는 관계형 데이터베이스입니다. SQL Server와 PostgreSQL 중 어떤 것을 선택할지는 데이터베이스 또는 운영 체제에 대한 기존 IT 경험에 의해 결정되는 경우가 많습니다.
InfluxDB - ThingWorx 데이터 모델을 관리하는 관계형 데이터베이스(Microsoft SQL Server 또는 PostgreSQL)와 함께 개발 및 생산 시스템에서 ThingWorx 스트림 및 가치 스트림을 큰 규모로 수집하는 데 가장 적합한 시계열 데이터베이스입니다.
* 
ThingWorx는 고가용성 및 성능 향상을 위해 오픈 소스인 단일 서버 버전의 InfluxDB 또는 InfluxDB Enterprise 클러스터와 함께 사용할 수 있습니다. 이 오픈 소스 버전은 이 안내서의 테스트용으로 사용되었습니다.
도움이 되셨나요?