前面寫了一篇AWS的IoT解決方案: AWS IOT解決方案分析。後端
今天來看下Azure的IoT的解決方案是怎麼實現的。瀏覽器
1、體系結構安全
下面圖是微軟給出的IoT解決方案的體系結構:網絡
在此體系結構中,IoT 設備收集其發送到雲網關的數據。 雲網關讓其餘後端服務可經過儀表板或其餘呈現設備,從數據傳遞到其餘企業運營應用程序或操做員的位置處理數據。機器學習
1.1設備鏈接ide
在此 IoT 解決方案體系結構中,設備將遙測數據(例如抽水站的傳感器讀數)發送到雲中進行存儲和處理。 在預測性維護方案中,解決方案後端可使用傳感器數據流來判斷特定的泵什麼時候須要維護。設備還能夠經過讀取來自雲終結點的消息,接收和響應雲到設備的消息。 例如,在預見性維護方案中,解決方案後端可將消息發送到抽水站中的其餘水泵,以便在維護應開始以前先從新路由流量。此過程將確保維護工程師到場後便可開始工做。學習
IoT 項目面臨的最大挑戰之一是如何可靠且安全地將設備鏈接到解決方案後端。相比於其餘客戶端(例如瀏覽器和 Mobile Apps),IoT 設備有不一樣的特徵。 IoT 設備:設計
• 一般是無人操做的嵌入式系統。代理
• 能夠部署到物理訪問昂貴的遠程位置。blog
• 可能只能經過解決方案後端來訪問。沒法經過其餘方式來與設備交互。
• 能力和處理資源可能都有限。
• 網絡鏈接可能不穩定、緩慢或昂貴。
• 可能須要使用專屬、自定義或行業特定的應用程序協議。
• 可使用大量常見的硬件和軟件平臺來建立。
除了上述需求以外,全部 IoT 解決方案還必須提供可擴展性、安全性和可靠性。 使用傳統技術(例如 Web 容器和消息傳送代理)時,所產生的一系列鏈接需求不只難以實現,並且實現起來很是耗時。使用 Azure IoT 中心和 Azure IoT 設備 SDK 能夠更輕鬆地實現符合這些要求的解決方案。
設備能夠直接與雲網關終結點通訊;若是設備沒法使用任何雲網關支持的協議,則能夠經過中間網關進行鏈接。例如,AzureIoT 協議網關能夠在設備不能使用 IoT 中心支持的任何協議時執行協議轉換。
1.2數據處理和分析
在雲中,IoT 解決方案後端負責大部份數據的處理,例如篩選及彙總遙測數據並將其路由到其餘服務。IoT 解決方案後端:
• 接收大規模來自設備的遙測數據,並肯定如何處理和存儲該數據。
• 可能容許你從雲向特定設備發送命令。
• 提供可以讓你預配設備並控制哪些設備可以鏈接到基礎結構的設備註冊功能。
• 可以讓你跟蹤設備狀態並監視其活動。
在預見性維護方案中,解決方案後端存儲歷史遙測數據。解決方案後端可使用此數據來識別可指示特定水泵已達到維護時間的模式。
IoT 解決方案能夠包含自動反饋循環。例如,解決方案後端中的分析模塊可從遙測數據中識別出特定設備的溫度超出正常工做級別。 而後,解決方案能夠將命令發送到該設備,指示它採起糾正措施。
1.3呈現和業務鏈接
呈現和業務鏈接層可以讓最終用戶與 IoT 解決方案及設備交互。 它可以讓用戶查看和分析從其設備收集的數據。 這些視圖能夠採用儀表板或 BI 報表的格式,以顯示歷史數據和/或接近實時的數據。 例如,操做員可檢查特定抽水站的狀態,並查看系統引起的任何警報。此層還可集成 IoT 解決方案與現有業務線應用程序,以連接企業業務流程或工做流。 例如,預測性維護解決方案可集成計劃系統,以在解決方案識別出須要維護的泵時預定工程師到抽水站檢查。
2、具體服務
前面是一個抽象的體系結構,再來看下微軟提供了那些具體服務,在Azure的物聯網分類裏面一共有下面6個服務:
流分析,機器學習,通知中心,Time Series Insights都比較容易理解。IoT中心和事件中心兩個服務比較容易混淆。分別來看下。
2.1 IoT中心
首先看IoT 中心,核心是設備
Azure IoT 中心是一項徹底託管的服務,可在數百萬個 IoT 設備和一個解決方案後端之間實現安全可靠的雙向通訊。 Azure IoT 中心:
· 提供了多個設備到雲和雲到設備的通訊選項,包括單向消息傳遞、文件傳輸和請求-答覆方法。
· 將內置的聲明性消息路由到其餘 Azure 服務。
· 爲設備元數據和同步的狀態信息提供可查詢存儲。
· 使用每一個設備的安全密鑰或 X.509 證書來實現安全的通訊和訪問控制。
· 可普遍監視設備鏈接性和設備標識管理事件。
· 包含最流行語言和平臺的設備庫。
2.2 事件中心
事件中心在解決方案體系結構中扮演的常見角色是充當事件管道的「前門」,一般稱爲「事件引入器」。 事件引入器是位於事件發佈者與事件使用者之間的組件或服務,能夠將事件流的生成與這些事件的使用分離開來。 下圖顯示了此體系結構:
Azure 事件中心是一種事件處理服務,用於提供雲規模的事件與遙測引入,具備較低的延遲和較高的可靠性。 事件中心提供消息流處理功能,其特徵不一樣於傳統的企業消息傳送。事件中心功能圍繞高吞吐量和事件處理方案而構建。 所以,事件中心未實現適用於消息傳送實體(例如主題)的某些消息傳送功能。
事件中心在命名空間級別建立,使用 AMQP 和 HTTP 做爲其主要的API 接口。
2.3 二者定位對比
IoT 中心是專爲 IoT 設備鏈接設計的服務,事件中心主要用於大規模事件引入。在同一解決方案中同時使用IoT 中心和事件中心並很多見。 IoT 中心處理設備到雲的通訊,而事件中心處理的是將後期事件引入實時處理引擎。