이 빠른 시작에서는 실시간 대시보드를 채워 이전 빠른 시작에서 Event Hubs로 보낸 OPC UA 데이터에서 인사이트를 캡처합니다. Microsoft Fabric 실시간 인텔리전스를 사용하여 Event Hubs의 데이터를 Microsoft Fabric으로 가져와 실시간 대시보드의 원본이 될 수 있는 KQL 데이터베이스에 매핑합니다. 그런 다음, 인사이트를 포착하고 시간 경과에 따른 값을 보여주는 시각적 타일로 해당 데이터를 표시하는 대시보드를 구축합니다.
이러한 작업은 Azure IoT 작업을 에지에 배포하는 것부터 클라우드에 있는 해당 디바이스 데이터에서 인사이트를 가져오는 것까지 포함하는 샘플 엔드투엔드 빠른 시작 환경의 마지막 단계입니다.
필수 구성 요소
이 빠른 시작을 시작하기 전에 이전 Azure IoT 작업 빠른 시작을 완료합니다.
또한 다음 Fabric 리소스가 필요합니다.
- Microsoft Fabric 구독. 사용자의 구독에서는 Contributor 이상의 권한이 있는 작업 영역에 액세스해야 합니다.
- 실시간 대시보드를 만들 수 있는 Fabric 테넌트입니다. 테넌트 관리자가 이 설정을 사용하도록 설정할 수 있습니다. 자세한 내용은 관리 포털의 테넌트 설정 사용을 참조하세요.
어떤 문제를 해결할 수 있나요?
OPC UA 데이터가 클라우드에 도착하면 분석할 수 있는 정보가 많이 제공됩니다. 이러한 데이터를 구성하고 그래프와 시각화가 포함된 보고서를 만들어 데이터에서 인사이트를 얻을 수 있습니다. 이 빠른 시작의 단계에서는 해당 데이터를 실시간 인텔리전스에 연결하고 실시간 대시보드를 만드는 방법을 보여 줍니다.
실시간 인텔리전스로 데이터 수집
이 섹션에서는 사용자의 이벤트 허브를 실시간 인텔리전스의 KQL 데이터베이스에 연결하도록 Microsoft Fabric 이벤트 스트림을 설정합니다. 이 프로세스에는 페이로드 데이터를 JSON 형식에서 KQL의 열로 변환하는 데이터 매핑 설정이 포함됩니다.
Eventstream 만들기
이 섹션에서는 Event Hubs의 데이터를 Microsoft Fabric 실시간 인텔리전스로 가져오고 최종적으로는 KQL 데이터베이스로 가져오는 Eventstream을 만듭니다.
먼저 Microsoft Fabric의 실시간 허브로 이동합니다.
이벤트 허브를 새로운 Eventstream의 데이터 원본으로 추가합니다. 자세한 지침은 Azure Event Hubs에서 실시간 허브로 이벤트 가져오기를 참조하세요. 데이터 원본을 추가할 때 다음 사항에 유의해야 합니다.
- 스트림 세부 정보 창에서 Eventstream 이름을 식별 이름으로 편집합니다.
- Azure Event Hubs Key의 경우 기본 선택 항목(RootManageSharedAccessKey)을 사용합니다.
-
연결의 경우 공유 액세스 키 인증을 사용하여 새 연결을 만듭니다. 연결 자격 증명 세부 정보가 자동으로 입력됩니다.
- Event Hubs 네임스페이스에서 로컬 인증이 사용하도록 설정되어 있는지 확인합니다. Azure Portal의 네임스페이스 개요 페이지에서 이 인증을 설정할 수 있습니다.
- 소비자 그룹의 경우 기본 선택($Default)을 사용합니다.
- 데이터 서식의 경우 기본 선택 항목(Json)을 사용합니다.
Eventstream을 연결한 후 Eventstream 열기 단추를 사용하여 제작 캔버스에서 Eventstream을 확인합니다. Azure Event Hubs의 스트림은 Eventstream 원본으로 표시됩니다.
데이터 흐름 확인
다음 단계에 따라 지금까지의 작업을 확인하고, 데이터가 이벤트 스트림으로 흐르는지 확인합니다.
이전 빠른 시작에서 Azure IoT 작업을 배포해 놓은 클러스터를 시작합니다. Azure IoT 작업 인스턴스와 함께 배포한 OPC PLC 시뮬레이터가 실행되어 데이터를 전송해야 합니다. Azure Portal에서 이벤트 허브가 메시지를 수신하는지 확인하여 이 단계를 확인할 수 있습니다.
데이터가 전파되기까지 몇 분 정도 기다립니다. 그런 다음 Eventstream 라이브 뷰에서 Eventstream 원본을 선택하고 데이터 미리 보기를 새로 고칩니다. 시뮬레이터의 JSON 데이터가 테이블에 나타나기 시작하는 것을 볼 수 있습니다.
팁
Eventstream에 데이터가 도착하지 않으면 이벤트 허브 작업을 확인하여 흐름의 어느 섹션을 디버깅해야 하는지 격리합니다.
KQL 리소스 준비
이 섹션에서는 Microsoft Fabric 작업 영역에서 데이터의 대상으로 사용할 KQL 데이터베이스를 만듭니다.
먼저 실시간 인텔리전스 Eventhouse를 만듭니다(자세한 지침은 Eventhouse 만들기를 참조하세요). Eventhouse가 만들어지면 동일한 이름의 기본 KQL 데이터베이스가 자동으로 포함됩니다.
다음으로, Eventhouse의 기본 데이터베이스에 새 테이블을 만듭니다(자세한 지침은 KQL 데이터베이스에 빈 테이블 만들기를 참조하세요). 이름을 OPCUA로 지정하고 다음 스키마를 수동으로 입력합니다.
열 이름 데이터 형식 자산ID 문자열 스파이크 부울 온도 십진수 FillWeight 십진수 EnergyUse 십진수 타임스탬프 날짜/시간 OPCUA 테이블을 만든 후 해당 테이블을 선택하고 코드로 쿼리 단추를 사용하여 테이블에 대한 새 쿼리 창에서 샘플 쿼리를 엽니다.
샘플 쿼리를 지우고 테이블에 대한 데이터 매핑을 만드는 다음 KQL 쿼리를 실행합니다. 데이터 매핑은 opcua_mapping이라고 합니다.
.create table ['OPCUA'] ingestion json mapping 'opcua_mapping' '[{"column":"AssetId", "Properties":{"Path":"$[\'AssetId\']"}},{"column":"Spike", "Properties":{"Path":"$.Spike"}},{"column":"Temperature", "Properties":{"Path":"$.TemperatureF"}},{"column":"FillWeight", "Properties":{"Path":"$.FillWeight"}},{"column":"EnergyUse", "Properties":{"Path":"$.EnergyUse.Value"}},{"column":"Timestamp", "Properties":{"Path":"$[\'EventProcessedUtcTime\']"}}]'
KQL 데이터베이스에 Eventstream 데이터 추가
다음으로, KQL 테이블의 데이터 원본으로 Eventstream을 추가합니다. 자세한 지침은 Eventstream에서 데이터 가져오기를 참조하세요. 데이터 원본을 추가할 때 다음 사항에 유의해야 합니다.
OPCUA 테이블을 대상 테이블로 사용하고 Eventstream을 원본으로 사용합니다.
검사 단계에서 이전에 만든 opcua_mapping 선택합니다.
이 설정을 완료하면 데이터가 Eventstream을 통해 흐르기 시작하고 KQL 테이블로 처리됩니다.
데이터가 전파되기까지 몇 분 정도 기다립니다. 그런 다음 OPCUA 테이블을 선택합니다(보기를 새로 고쳐야 할 수도 있음). 그러면 테이블에 Eventstream의 데이터가 미리 표시됩니다.
코드로 쿼리 단추를 사용하여 OPCUA 테이블에 대한 쿼리 창을 열고 쿼리를 실행하여 데이터를 탐색할 수도 있습니다.
실시간 대시보드 만들기
이 섹션에서는 빠른 시작 데이터를 시각화하기 위한 새로운 실시간 대시보드를 만들고 샘플 대시보드 템플릿에서 타일 집합을 가져옵니다. 대시보드에서는 자산 ID와 타임스탬프로 필터링할 수 있으며, 온도, 급증 빈도 및 기타 데이터의 시각적 요약을 표시합니다.
참고
테넌트 관리자가 Fabric 테넌트에서 실시간 대시보드 만들기를 사용하도록 설정한 경우에만 실시간 대시보드를 만들 수 있습니다. 자세한 내용은 관리 포털의 테넌트 설정 사용을 참조하세요.
대시보드 만들기
작업 영역으로 이동하여 실시간 인텔리전스 기능에서 새로운 실시간 대시보드를 만듭니다. 자세한 지침은 새 대시보드 만들기를 참조하세요.
템플릿 업로드 및 데이터 원본 연결
GitHub의 다음 위치에서 샘플 대시보드 템플릿을 다운로드합니다. dashboard-AIOquickstart.json.
그런 다음, 다음 단계에 따라 대시보드 템플릿을 업로드하고 데이터에 연결합니다.
- 실시간 대시보드에서 관리 탭으로 전환하고 파일로 바꾸기를 선택합니다.
- 컴퓨터에 다운로드한 템플릿 파일을 선택합니다.
- 템플릿 파일은 대시보드를 여러 타일로 채우지만, 아직 데이터 원본을 연결하지 않았기 때문에 타일에 데이터를 가져올 수 없습니다.
-
관리 탭에서 데이터 원본을 선택합니다. 이 작업을 수행하면 AIO 데이터의 샘플 원본이 포함된 데이터 원본 창이 열립니다.
AIOdata 데이터 원본을 편집하려면 연필 아이콘을 선택합니다.
- 데이터베이스를 선택합니다( Eventhouse/KQL 데이터베이스 아래). 데이터 원본 연결이 완료되면 적용을 선택하고 데이터 원본 창을 닫습니다.
시각적 개체는 KQL 데이터베이스의 데이터로 채워집니다.
홈 탭에서 저장을 선택하여 대시보드를 저장합니다.
대시보드 탐색
이제 이 빠른 시작에서 자산 데이터에 대한 다양한 형식의 시각적 정보를 표시하는 대시보드가 생겼습니다. 템플릿에 포함된 시각적 개체는 다음과 같습니다.
- 모든 시각적 정보를 타임스탬프(기본적으로 포함됨) 및 자산 ID로 필터링할 수 있는 대시보드 매개 변수입니다.
- 시간에 따른 온도와 그 급증을 보여 주는 꺾은선형 차트 타일입니다.
- 온도에 대한 실시간 급증 표시기를 보여 주는 통계 타일입니다. 타일에는 가장 최근의 온도 값이 표시되고, 해당 값이 급증하는 경우 조건부 서식에 따라 경고로 표시됩니다.
- 최대 온도를 보여 주는 통계 타일입니다.
- 선택한 시간 프레임 내의 급증 수를 보여 주는 통계 타일입니다.
- 시간에 따른 온도 대비 충전 중량을 보여 주는 꺾은선형 차트 타일입니다.
- 시간에 따른 온도 대비 에너지 사용량을 보여 주는 꺾은선형 차트 타일입니다.
여기에서 필터를 실험하고 다른 타일 형식을 추가하여 대시보드에서 데이터로 어떤 작업을 더 수행할 수 있는지 알아볼 수 있습니다.
이 단계에서는 Azure IoT 작업을 사용하여 클라우드에서 배포부터 분석까지 디바이스 데이터를 관리하는 빠른 시작 흐름이 완료됩니다.
리소스 정리
이제 빠른 시작 환경을 마쳤으므로 이 섹션에서는 샘플 리소스를 삭제하는 방법에 대한 지침을 제공합니다.
Azure IoT 작업 배포를 제거하지만 클러스터는 유지하려면 az iot ops delete 명령을 사용합니다.
az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP
이 빠른 시작을 위해 만든 모든 리소스를 삭제하려면 Azure IoT 작업을 배포한 Kubernetes 클러스터를 삭제한 다음, 해당 클러스터가 포함된 Azure 리소스 그룹을 제거합니다.
이러한 빠른 시작에서 Codespaces를 사용한 경우 GitHub에서 Codespace를 삭제합니다.
참고
리소스 그룹에는 이 빠른 시작에서 만든 Event Hubs 네임스페이스가 포함되어 있습니다.
또한 이벤트 스트림, Eventhouse, 실시간 대시보드를 포함하여 Microsoft Fabric 작업 영역 및 이 빠른 시작과 관련된 모든 리소스를 삭제할 수 있습니다. 또한, 컴퓨터에 다운로드한 대시보드 템플릿 파일을 삭제하는 것이 좋습니다.