IoT實時數據可視化方案系列:2. 一體化集成實時可視化分析工具Time Series Insights

(。・∀・)ノ゙嗨,盆友們,此次我胡漢三又回來啦!此次咱們要討論的另外一款功能強大的可視化工具是與Power BI師出同門的Time Series Insights(微軟爸爸的懷抱).
俗話說的好,相親前要先看簡歷!那麼Time Series Insights簡歷會是什麼樣呢?他爲何能從衆多追求競爭者中脫穎而出?是長相出衆?仍是個性獨特?咱們要從TSI的概念開始聊起!ios

1. Concept

根據Time Series Insights官方文檔所述:web

According to Time Series Insights' official documentation:
AZURE TIME SERIES INSIGHTS IS A FULLY MANAGED ANALYTICS, STORAGE, AND VISUALIZATION SERVICE THAT MAKES IT SIMPLE TO EXPLORE AND ANALYZE BILLIONS OF IOT EVENTS SIMULTANEOUSLY. IT GIVES YOU A GLOBAL VIEW OF YOUR DATA, LETTING YOU QUICKLY VALIDATE YOUR IOT SOLUTION AND AVOID COSTLY DOWNTIME TO MISSION-CRITICAL DEVICES BY HELPING YOU DISCOVER HIDDEN TRENDS, SPOT ANOMALIES, AND CONDUCT ROOT-CAUSE ANALYSES IN NEAR REAL-TIME.  

在這段言簡意賅的濃縮歸納中,幾個閃亮的關鍵詞引發了個人特別注意:
(There are a few glittering keywords which really catch my attention when I read this paragraph: ) 數據庫

  • FULLY MANAGED ANALYTICS, STORAGE, AND VISUALIZATION SERVICE

換言之, Azure TSI=SQL Database+Query System(powerful analysis)+Visualization Layer.
另外, 'Fully Managed' 可能暗示着TSI提供的解決方案是開箱即用的,無需工程師進行復雜的架構和調配的。從上述咱們給出的公式也能夠看出TSI是多種工具融合一體的產品,所以推測可能會很是易部署和上手(Also, 'Fully Managed' indicates that Time Series Insights is probably an out-of-the-box solution with no complex architecture and easy configuration. From the above formula that we gave, it can also be inferred that TSI is a handy and easy-to-deploy product)。編程

  • BILLIONS OF IoT EVENTS SIMULTANEOUSLY  

TSI支持同時對上千萬IoT時間數據的可視化,以全局視角來展現數據,'extremely suitable for when the number of devices exceeded several hundred thousand. Even POWER BI doesn't have the ability to do this(特別適用於當IoT設備數量超過十萬的情景。此時Power BI可能都沒有這樣的能力作到這一點).'數據結構

  • HIDDEN TRENDS, SPOT ANOMALIES, AND CONDUCT ROOT-CAUSE ANALYSES IN NEAR REAL-TIME

TSI能幫助用戶發現數據潛在趨勢,偵測設備異常且具有根源分析能力,而這一切的操做實現幾乎都在實時完成。架構

  • TSI所解決的用戶痛點:

challenges

這張截圖來自微軟首席項目經理OP Ravi在Microsoft Build 2017中針對TSI的產品展現演講。
它闡述了在IoT數據可視化領域,現今客戶的廣泛痛點:框架

  • 數據老是被儲存本地,沒法在雲端共享;
  • 工程師或數據分析師沒有時間作可視化前的數據處理準備;
  • 很難去可視化IoT大量級數據(好比當數據的數量超過10萬以上);
  • 可視化的工具可以公司被不一樣層級不一樣崗位的人員使用,易用易上手。

根據微軟的另外一產品經理Andrew Shannon在IoTSWC 2017會議中所描述,TSI本來只是一款Microsoft公司內部使用的產品,而正是由於他們發現其餘公司也有着和微軟一樣的痛點,他們決定將這款產品商業化,並放入Azure生態環境。編程語言

  • 一張圖對TSI的總結

core scenarios
TSI在這些核心場景中能展示其在市場中獨特優點:ide

  • IoT時間序列數據的可視化和分析;
  • 針對多設備,多工廠的不一樣數據的統一視窗
  • IoT方案的驗證和檢測
  • 根源問題分析和異常偵測
  • 支持REST API, 自由靈活地在TSI上層開發您本身的APP

綜上所述,TSI不一樣於通常的終端可視化軟件,以展現數據儀表盤爲主, 它是一款針對海量IoT設備數據的統一化可視和分析軟件。它由多種工具集成,開箱即用,操做簡便友好,對非專業工程師人員一樣適用。工具

2. Architecture

TSI Architecture

做爲Azure生態圈中一款IoT數據可視分析產品,TSI的架構主要依賴於Azure框架。事件數據從不一樣遙感設備上傳入到Azure IoT Hub或Azure Event Hub中, 經過簡單的設置便可將數據儲存在TSI自帶的SQL數據庫,數據將以時間爲主索引進行儲存,最終經過TSI Explorer圖形化展現。

  • 使用TSI後架構發生的變化(Comparison between 'before TSI' and 'after TSI')

Architecture before Azure TSI implementation
Comparison A. Architecture before Azure TSI implementation.
Architecture after Azure TSI implementation.
Comparison B. Architecture after Azure TSI implementation.
能夠看到,在使用TSI後,架構設計中減小了產品使用的數量。而且省去了在存入數據庫前對數據的預先流處理的環節。而TSI能完美地代替Stream Analytics,利用這些未經處理的原始數據自動生成可用的Schema供用戶分析選擇。這樣一來不只簡化的了產品架構的複雜程度,也節省了必定的人力和金錢成本

3. Using Time Series Insights to explore your data

  • 配置過程

TSI配置過程較爲簡單,注意使用TSI的前提條件爲:

  1. Azure可用的帳戶;
  2. 數據流經IoT Hub或Event Hub.

因爲無複雜的構架,具體配置過程可參見微軟官方手冊
其餘相關配置操做請參見上述連接中左方導航欄的How-to Guide。

  • 產品界面

TSI explorer爲一款雲端基於web的可視化及分析工具,其主要界面以下圖所示:
TSI-layout
界面沒法進行自定義設計和拖拽,相較於Power BI顯然沒那麼靈活。能夠在主儀表盤進行多個圖表的展現。點擊+號可添加圖表。
逐個點擊儀表盤中的每一個圖標,能夠看到關於該圖標的詳細信息及界面展現:

  • Line Graph: 針對時間序列的數據可視化,Y-axis中展現的值能夠根據界面中左方Query中的Measure來選擇調配。使用與觀察數據在某一項(例如設備溫度)指標的走勢趨向,方便決策和規避風險

line-graph

  • Heatmap: 整個界面與line-graph類似。一樣針對於時間序列。 適用於根源分析和異常偵測。能快速發現設備在某個時刻的異常動向(顏色標識明顯),根據異常的數據記錄逐層分析出根本緣由;

Heatmap
兩個圖表都能經過左上角滑動條靈活調配圖表中的時間間隔;
左下角的Query可以對顯示的數據作一些限制,例如只顯示溫度超過20度的數據等,query無需使用任何特定的編程語言只要進行簡單的設置便可使用;
在圖標上選擇特定時間範圍,右選後看到彈出的菜單能夠選擇Zoom或Explore Data。 Zoom能夠進一步放大時間區間的數據,Explore Data後則出現圖中右下角的圖形框。能夠看到時間範圍內各個數據指標的圖形可視化(Stats)和全部的數據庫記錄(Events);
在圖形部分的左側Filter Series下方的區域,選擇右鍵,能夠看到彈出的菜單。選擇Spilt this series by...能夠看到TSI按照數據不一樣自動生成的schema。側面印證了TSI內部包含了對數據的流處理。 在個人例子我針對了不一樣設備的名稱來拆分個人數據流。

  • 實時圖形刷新頻率<=60s  

The data update interval is usually within 60 seconds. And it only automatically refreshes the line graph of the following query sector.
auto-refresh
當要搜索的時間區域肯定後,主界面所展現的line graph和heatmap是不會隨時間自動刷新的。但搜索區域的索引line graph是會以小於等於1分鐘/次的頻率刷新的,不過條件是將界面右上角的autofresh功能打開。
在每次更改query條件或手動刷新也能讓TSI展現數據庫內的最新數據。可是就不要期待TSI能有流動的事實數據展現了,它作不到像POWER BI streaming dashboard中接近於實時的數據圖形流動效果

4. Conclusion

總結一下TSI的優缺點:

Benefits:

  1. 易用 - TSI能自動對數據進行流處理,分析出可用的指標和數據結構,供客戶進行可視化和分析。無編程技能的要求,適合各種人員的使用;
  2. 簡單 - 從IoT Hub或Event Hub流出後全部數據處理可視化和分析都集成在了一個工具中。所以也能有效下降架構複雜度和成本(Simplicity - the whole logic of data aggregation is prepared in one tool; Reducing the number of services, and therefore costs(cost effective) – thanks to replacing Stream Analytics and databases which we no longer needed);
  3. 實時數據分析 - 數據進入TSI的延遲小於等於60s, TSI對數據的分析顯示都是基於近乎實時的基礎上(Real-time analytics – there is a live data preview via line graph and a heat map);
  4. 靈活 - 能夠利用REST API構建您本身的APP,自定義可視化類型(Flexibility – the solution is accessible via APIs. You can customize your visualization on the top of TSI);
  5. 可伸縮 - 針對多設備地理位置分佈的不一樣遙感設備產生的大數據,提供統一全局的管理和視圖,可隨意伸縮擴展適合觀測走勢趨向幫助決策或異常偵測根源分析( scalable, extremely suitable for when the number of devices exceeded several hundred thousand. Even POWER BI doesn't have the ability to do this)。

Caveats:

  1. 僅針對Azure生態使用且僅目前僅接受來自於IoT Hub或Event Hub的數據(Azure Eco-Environment----only accepts source from IoT Hub and Event Hub);
  2. 僅具有heatmap和line graph兩種圖形的可視化,沒法自定義圖形或修改圖形,一樣沒法修改儀表板樣式或圖表樣式。可視化限制性強(Only Line Graph and Heatmap, no customization or any edit);
  3. 不適用於實時數據的監測,無報警功能,無實時數據可視的能力;更適合於海量數據的可視化分析。

綜上所述, TSI這款產品比較適合於

  • 各種開發資源有限的
  • IoT設備多且位置分佈,種類各異的(例如石油,生產等傳統行業的工廠)
  • 所提供的可視化數據及分析須要提供給公司不一樣人員使用(如工程師,數據分析師,客戶經理等等)
  • 着重於實時數據分析,而不是實時數據的可視化儀表盤,對單個設備的數據監測需求不高的公司或客戶方。  

[Appendix]Reference:

  1. https://predica.pl/blog/azure...
  2. https://www.youtube.com/watch...
  3. https://www.youtube.com/watch...
相關文章
相關標籤/搜索