教學課程:從已處理的數據取得深入解析
在本教學課程中,您會填入即時儀錶板,從您在上一個教學課程中傳送至事件中樞的 OPC UA 數據擷取見解。 使用 Microsoft Fabric 即時智慧,您會將資料從事件中樞帶入 Microsoft Fabric,並將其對應至可成為即時儀表板來源的 KQL 資料庫。 然後,您會組建儀表板,以在視覺效果圖格中顯示該資料,其擷取深入解析並顯示一段時間的值。
這些作業是範例端對端教學課程體驗中的最後一個步驟,從從雲端中的裝置數據取得見解,從邊緣部署 Azure IoT 作業。
必要條件
開始本教學課程之前,您必須先完成 教學課程:使用數據流將資產遙測傳送至雲端
您也需要 Microsoft Fabric 訂用帳戶。 在您的訂用帳戶中,您需要具有 參與者 或更高許可權的工作區存取權。
此外,您的網狀架構租用戶必須允許建立即時儀表板。 這是您租用戶系統管理員可以啟用的設定。 如需詳細資訊,請參閱在管理入口網站中啟用租用戶設定。
我們會解決什麼問題?
OPC UA 資料抵達雲端之後,您將有許多可供分析的資訊。 您可能想要組織這些資料並建立包含圖形和視覺效果的報表,以從資料衍生深入解析。 本教學課程中的步驟說明如何將該數據連線到即時智慧,並建置即時儀錶板。
將資料內嵌至即時智慧
在本節中,您會設定 Microsoft Fabric Eventstream,以將事件中樞連接至即時智慧中的 KQL 資料庫。 此流程包括設定資料對應,以將承載資料從 JSON 格式轉換成 KQL 中的資料行。
建立 Eventstream
在本節中,您會建立 Eventstream,用來將資料從事件中樞帶入 Microsoft Fabric 即時智慧,最後帶入 KQL 資料庫。
首先,流覽至 Microsoft Fabric 中的即時智慧體驗,然後開啟您的 Fabric 工作區。
請遵循在 Microsoft Fabric 中建立事件串流中的步驟,在工作區中建立新的事件串流資源。
建立 eventstream 之後,您會看到主要編輯器,您可以在其中開始建置 eventstream。
新增事件中樞作為來源
接下來,從上一個教學課程新增事件中樞作為事件數據流的數據源。
請遵循將 Azure 事件中樞來源新增至 Eventstream 中的步驟新增事件來源。 請記住以下注意事項:
- 您將使用共用存取金鑰驗證來建立新的雲端連線。
- 請確定事件中樞上已啟用本機驗證。 您可以從 Azure 入口網站 的 [概觀] 頁面進行設定。
- 針對 [ 取用者] 群組,請使用預設選取專案 ($Default)。
- 針對 [ 數據格式],選擇 [Json ] (預設可能已選取它)。
完成此流程之後,Azure 事件中樞會在 Eventstream 即時檢視中顯示為來源。
驗證資料流程
請遵循下列步驟來檢查到目前為止的工作,並確定資料正在流入 Eventstream。
在先前的教學課程中,啟動您部署 Azure IoT 作業的叢集。 您使用 Azure IoT 操作執行個體部署的 OPC PLC 模擬器應該會開始執行,並將資料傳送至 MQTT 代理程式。 您可以使用 mqttui 驗證流程的這個部分,如驗證資料正在流動中所述。
等候幾分鐘,資料才會散佈。 然後,在 Eventstream 即時檢視中,選取 AzureEventHub 來源,並重新整理 [資料預覽]。 您應該會看到模擬器中的 JSON 資料開始出現在資料表中。
提示
如果數據尚未抵達您的事件串流,您可能會想要檢查事件中樞活動,以確認 它正在接收訊息。 這可協助您隔離要偵錯之流程的區段。
準備 KQL 資源
在本節中,您會在 Microsoft Fabric 工作區中建立 KQL 資料庫,以作為資料的目的地。
請遵循建立 Eventhouse 中的步驟,使用子 KQL 資料庫建立即時智慧事件屋。 您只需要完成名為 建立 Eventhouse 的區段。
接下來,在您的資料庫中建立數據表。 將其稱為 OPCUA,並使用下列資料行。
資料行名稱 資料類型 AssetId 字串 溫度 decimal 溼度 decimal 時間戳記 Datetime 建立 OPCUA 數據表之後,請選擇您的資料庫,並使用 [探索您的資料] 按鈕來開啟查詢視窗。
執行下列 KQL 查詢來建立資料表的資料對應。 資料對應將稱為 opcua_mapping。
.create table ['OPCUA'] ingestion json mapping 'opcua_mapping' '[{"column":"AssetId", "Properties":{"Path":"$[\'AssetId\']"}},{"column":"Temperature", "Properties":{"Path":"$[\'ThermostatTemperature\']"}},{"column":"Humidity", "Properties":{"Path":"$[\'ThermostatHumidity\']"}},{"column":"Timestamp", "Properties":{"Path":"$[\'EventProcessedUtcTime\']"}}]'
將運算列表新增為目的地
接下來,返回 Eventstream 檢視,您可以在其中將新的 KQL 資料表新增為 Eventstream 目的地。
請遵循將 KQL Database 目的地新增至 Eventstream 中的步驟,以新增目的地。 請記住以下注意事項:
使用直接擷取模式。
在 [設定] 步驟中,選取您稍早建立的 OPCUA 資料表。
在 [檢查] 步驟中,開啟 [進階] 選項。 在 [對應] 下,選取 [現有對應],然後選擇 opcua_mapping。
提示
如果找不到現有的對應,請嘗試重新整理 Eventstream 編輯器,然後重新啟動步驟以新增目的地。 或者,您可以從 KQL 資料表起始這個相同的設定流程,而不是從 Eventstream 起始,如從 Eventstream 取得資料中所述。
完成此流程之後,KQL 資料表會顯示在 Eventstream 即時檢視中作為目的地。
等候幾分鐘,資料才會散佈。 然後,選取 KQL 目的地並重新整理 [資料預覽],以查看資料表中出現的 Eventstream 中已處理的 JSON 資料。
如有需要,您也可以直接在 KQL 資料庫中檢視及查詢此資料。
建立即時儀表板
在本節中,您將建立新的 即時儀錶板 ,以可視化您的教學課程數據。 儀錶板會允許依資產標識符和時間戳進行篩選,並顯示溫度和濕度數據的視覺摘要。
注意
如果您的租用戶系統管理員已啟用在網狀架構租用戶中建立即時儀表板,您只能建立即時儀表板。 如需詳細資訊,請參閱在管理入口網站中啟用租用戶設定。
建立儀表板並連線資料來源
請遵循建立新的儀表板一節中的步驟,從即時智慧功能建立新的即時儀表板。
然後,依照 [新增資料來源] 一節中的步驟,將資料庫新增為資料來源。 請記住下列注意事項:
- 在 [資料來源] 窗格中,您的資料庫將會位於 OneLake 資料中樞之下。
設定參數
接下來,設定儀錶板的某些參數,讓視覺效果可以依資產標識碼和時間戳進行篩選。 儀錶板隨附依時間範圍篩選的預設參數,因此您只需要建立一個可以依資產標識元篩選的參數。
切換至 [ 管理] 索引卷標,然後選取 [ 參數]。 選取 [+ 新增 ] 以新增參數。
建立具有下列特性的新參數:
- 標籤:資產
- 參數類型: 單一選取 專案(預設已選取)
- 變數名稱: _asset
- 資料類型: 字串 (預設已選取)
- 來源: 查詢
資料來源:您的資料庫(預設已選取)
選取 [編輯查詢 ],然後新增下列 KQL 查詢。
OPCUA | summarize by AssetId
- 值數據行: AssetId
- 預設值: 選取查詢的第一個值
選取 [ 完成] 以儲存您的參數。
建立折線圖圖格
接下來,將磚新增至儀錶板,以顯示所選資產和時間範圍的溫度和濕度折線圖。
選取 [+ 新增圖格] 或 [新增圖格] 以新增圖格。
輸入圖格的下列 KQL 查詢。 此查詢會從儀錶板選取器套用時間範圍和資產的篩選參數,並使用其時間戳、溫度和濕度提取產生的記錄。
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | project Timestamp, Temperature, Humidity
執行查詢,以驗證可以找到資料。
選取查詢結果旁 [+ 新增視覺效果],以新增此資料的視覺效果。 建立具有下列特性的視覺效果:
- 磚名稱: 一段時間的溫度和濕度
- 視覺效果類型:折線圖
- Data︰
- Y 數據行: 溫度(十進位) 和 濕度(十進位) (預設已推斷)
- X 資料行:時間戳 (日期時間) (依預設已推斷)
- Y 軸:
- 標籤:單位
- X 軸:
- 標籤:時間戳記
選取 [套用變更] 以建立圖格。
在儀表板上檢視已完成的圖格。
建立最大值圖格
接下來,建立一些磚以顯示溫度和濕度的最大值。
選取 [新增圖格] 以建立新的圖格。
輸入圖格的下列 KQL 查詢。 此查詢會從儀錶板選取器套用篩選參數的時間範圍和資產,並從產生的記錄中取得最高溫度值。
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | top 1 by Temperature desc | summarize by Temperature
執行查詢,以驗證可以找到最高溫度。
選取 [+ 新增視覺效果] 以新增此資料的視覺效果。 建立具有下列特性的視覺效果:
- 圖格名稱:最高溫度
- 視覺效果類型:統計資料
- Data︰
- Y 資料行:溫度 (十進位) (依預設已推斷)
選取 [套用變更] 以建立圖格。
在儀表板上檢視完成的已圖格 (您可能想要調整圖格的大小,以便顯示全文)。
開啟圖格的選項,然後選取 [複製圖格]。
這會在儀表板上建立複製圖格。
在新的圖格上,選取 [鉛筆] 圖示來進行編輯。
將 KQL 查詢中的 Temperature 取代為濕度,使其符合下列查詢。
OPCUA | where Timestamp between (_startTime.._endTime) | where AssetId == _asset | top 1 by Humidity desc | summarize by Humidity
執行 查詢以確認可以找到最大濕度。
在 [視覺效果格式設定] 窗格中,更新下列特性:
- 磚名稱: 最大濕度
- Data︰
- 值資料行: 濕度(十進位) (預設已推斷)
選取 [套用變更]。
在儀表板上檢視已完成的圖格。
儲存已完成的儀表板。
現在,您有儀錶板可針對這些教學課程中的資產數據顯示不同類型的視覺效果。 從這裡,您可以嘗試使用篩選條件並新增其他圖格類型,以查看儀表板如何讓您使用您的資料執行更多作業。
我們如何解決問題?
在本教學課程中,您已使用 eventstream 將事件中樞數據內嵌至 Microsoft Fabric 實時智慧中的 KQL 資料庫。 然後,您已建立由該資料提供的即時儀表板,以視覺化方式追蹤一段時間的變更值。 藉由在 Microsoft Fabric 中將各種來源的邊緣資料關聯在一起,您可以建立具有視覺效果和互動式功能的報表,以更深入地深入解析資產健康情況、使用率和作業趨勢。 這可讓您提升生產力、改善資產效能,並推動明智的決策制定,以取得更好的業務成果。
這會完成教學課程流程中的最後一個步驟,以使用 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。
注意
資源群組包含您在本教學課程中建立的事件中樞命名空間。
您也可以刪除Microsoft Fabric 工作區和/或與本教學課程相關聯的所有資源,包括 eventstream、eventhouse 和實時儀錶板。