[转载]国外物联网平台初探(二):微软Azure IoT
原文鏈接:http://www.cnblogs.com/ibrahim/p/microsoft-azure-iot.html
平臺定位
連接設(shè)備、其它 M2M 資產(chǎn)和人員,以便在業(yè)務(wù)和操作中更好地利用數(shù)據(jù)。
?
連接 IoT 設(shè)備
將所有設(shè)備連接到云,從這些設(shè)備接收大規(guī)模數(shù)據(jù),以及管理這些設(shè)備的授權(quán)和限制。
在將設(shè)備連接到云和處理設(shè)備的聚合事件流時,互聯(lián)設(shè)備的快速增長以及平臺和協(xié)議的不一致會引起巨大挑戰(zhàn)。平臺預(yù)配容量以處理來自數(shù)百萬設(shè)備的事件,同時支持 AMQP 和 HTTP 協(xié)議,保護(hù)每臺設(shè)備的事件順序。
?
實時監(jiān)視
將設(shè)備連接到云并接收事件數(shù)據(jù)時,監(jiān)視此數(shù)據(jù)流,以獲得對業(yè)務(wù)的見解、促進(jìn)效率提升及精簡業(yè)務(wù)流程。
每秒分析數(shù)百萬事件,以及快速開發(fā)和部署實時監(jiān)視解決方案,從基礎(chǔ)結(jié)構(gòu)中的設(shè)備和傳感器發(fā)送的數(shù)據(jù)獲得可操作的建議。
?
Azure IoT架構(gòu)
?
Azure IoT服務(wù)
?
Azure IoT 中心(IoT Hub)
- Azure IoT 中心是一項完全托管的服務(wù),可在數(shù)百萬個 IoT 設(shè)備和一個解決方案后端之間實現(xiàn)安全可靠的雙向通信。
- 提供可靠的設(shè)備到云和云到設(shè)備的大規(guī)模消息傳送。
- 使用每個設(shè)備的安全憑據(jù)和訪問控制來實現(xiàn)安全通信。
- 可廣泛監(jiān)視設(shè)備連接性和設(shè)備標(biāo)識管理事件。
- 包含最流行語言和平臺的設(shè)備庫。
?
- 設(shè)備級別的身份驗證:每個設(shè)備設(shè)置獨有的安全密鑰,IoT 中心標(biāo)識注冊表會存儲設(shè)備標(biāo)識和密鑰,后端可將個別設(shè)備加入允許列表或方塊列表,以便完全控制設(shè)備訪問權(quán)限。
- 設(shè)備連接操作監(jiān)控:設(shè)備標(biāo)識管理操作與設(shè)備連接事件存在詳細(xì)的操作日志,便于識別連接問題,例如,嘗試使用錯誤憑據(jù)進(jìn)行連接的設(shè)備、消息發(fā)送太頻繁,或拒絕所有云到設(shè)備的消息。
- 豐富的設(shè)備庫:Azure IoT 設(shè)備 SDK 也支持C、C#、Java 和 JavaScript 等托管語言,支持許多 Linux 分發(fā)版、Windows 和實時操作系統(tǒng)。
- 可擴(kuò)展的IoT 協(xié)議。IoT 中心存在一個公共協(xié)議,它使設(shè)備可以通過本機方式使用 MQTT v3.1.1、HTTP 1.1 或 AMQP 1.0 協(xié)議。還可以通過以下方式擴(kuò)展 IoT 中心,以便為自定義協(xié)議提供支持:
- 現(xiàn)場網(wǎng)關(guān):使用 Azure IoT 網(wǎng)關(guān) SDK創(chuàng)建現(xiàn)場網(wǎng)關(guān),該 SDK 可將自定義協(xié)議轉(zhuǎn)換為 IoT 中心所理解的三個協(xié)議之一。
- 云網(wǎng)關(guān):自定義 Azure IoT 協(xié)議網(wǎng)關(guān)(在云中運行的一個開放源代碼組件)。
- 可擴(kuò)展高并發(fā)的事件處理:Azure IoT 中心可擴(kuò)展為數(shù)百萬個同時連接的設(shè)備,以及每秒數(shù)百萬個事件。
- 基于事件的設(shè)備數(shù)據(jù)處理:事件處理器引擎在熱路徑上可以處理設(shè)備事件,也可以將它們存儲在冷路徑上以供分析。IoT 中心可保留最多 7 天的事件數(shù)據(jù),以保證可靠的處理并消減負(fù)載峰值。
- 可靠的云到設(shè)備消息傳送:后端使用 IoT 中心將消息發(fā)送到單個設(shè)備(含至少一次的傳遞保證)。每條消息都有單獨的生存時間設(shè)置,且后端可以請求傳遞和過期回執(zhí)。這可確保完全了解云到設(shè)備消息的生命周期。
- 存儲和分析文件和緩存的傳感器數(shù)據(jù):設(shè)備使用 SAS URI 將 IoT 中心托管的文件上載到 Azure 存儲空間。當(dāng)文件到達(dá)云時,IoT 中心可以生成通知,使后端處理這些文件。
?
事件中心 Event Hubs
- 事件中心是一種事件處理服務(wù),用于向云提供大規(guī)模的事件與遙測數(shù)據(jù)入口,并且具有較低的延遲和較高的可靠性。事件中心充當(dāng)事件管道"前門",位于事件生成者與事件使用者之間的組件或服務(wù),可以將事件流的生成與這些事件的使用分離開來。
- 事件中心每秒可以引入數(shù)百萬的事件,從而能夠處理和分析連接設(shè)備和應(yīng)用程序生成的海量數(shù)據(jù)。
- 事件中心收集到數(shù)據(jù)后,可以使用任何實時分析提供程序或批處理/存儲適配器來轉(zhuǎn)換和存儲這些數(shù)據(jù)。
- 事件中心可將事件流的生成與這些事件的使用分離開來,事件使用者可以根據(jù)自己的計劃訪問事件。
?
- 每秒將數(shù)百萬事件流式傳輸?shù)蕉鄠€應(yīng)用程序中
- 事件中心是一個高度可伸縮的發(fā)布-訂閱采集器,每秒可獲取數(shù)百萬個事件,能夠處理和分析互連設(shè)備與應(yīng)用程序生成的海量數(shù)據(jù)。將數(shù)據(jù)采集到事件中心后,使用任何實時分析提供程序或者批處理/存儲適配器來轉(zhuǎn)換和存儲數(shù)據(jù)。
- 允許應(yīng)用程序處理負(fù)載分布可變的事件
- 大數(shù)據(jù)是當(dāng)今互連世界的直接體現(xiàn)。大數(shù)據(jù)有很多來源,例如每隔數(shù)分鐘就會生成遙測數(shù)據(jù)的互連式汽車和恒溫器、每隔一秒就會生成事件的應(yīng)用程序性能計數(shù)器,或者在用戶每執(zhí)行一個操作時就會捕獲遙測數(shù)據(jù)的移動應(yīng)用程序。具有彈性的托管采集器服務(wù)能夠應(yīng)對不斷變化的負(fù)載分布,以及間斷性連接造成的負(fù)載高峰。
- 跨平臺連接數(shù)百萬臺設(shè)備
- 互連設(shè)備的快速涌現(xiàn)使 IT 行業(yè)面臨更嚴(yán)峻的挑戰(zhàn),因為必須應(yīng)對各種平臺和協(xié)議。在連接這些不同數(shù)據(jù)源的同時處理大規(guī)模的聚合流已成為一個很大的難題。事件中心可讓用戶輕松置備容量以從數(shù)百萬臺設(shè)備采集事件,同時還能基于每臺設(shè)備保留事件順序。支持 AMQP 和 HTTP,讓很多平臺可與事件中心一起使用,本機客戶端庫也可用于各種流行平臺。
?
流分析(Stream Analytics)
云中的事件實時流式處理引擎,可實時快速開發(fā),對現(xiàn)有數(shù)據(jù)屬性進(jìn)行深入了解。
- 為物聯(lián)網(wǎng)解決方案執(zhí)行實時分析
- 每秒對數(shù)百萬事件進(jìn)行流式處理
- 獲得關(guān)鍵任務(wù)的可靠性和性能預(yù)測結(jié)果
- 利用設(shè)備和應(yīng)用程序的數(shù)據(jù),創(chuàng)建實時儀表板和警報
- 跨多個數(shù)據(jù)流進(jìn)行關(guān)聯(lián)
- 使用常見的基于 SQL 的語言,以實現(xiàn)快速開發(fā)
?
- 實時獲取分析結(jié)果
- 實現(xiàn)快速開發(fā)和部署低成本分析解決方案,從設(shè)備、傳感器、基礎(chǔ)結(jié)構(gòu)和應(yīng)用程序?qū)崟r獲取深入分析結(jié)果。
- 實現(xiàn)快速開發(fā)
- 減少為擴(kuò)展的分布式系統(tǒng)開發(fā)分析功能時的困難并降低復(fù)雜程度。只需使用基于 SQL 的語法描述所需的轉(zhuǎn)換,系統(tǒng)將自動分配以實現(xiàn)擴(kuò)展、性能和恢復(fù)能力,完全不需要管理復(fù)雜的基礎(chǔ)結(jié)構(gòu)和軟件。
- 執(zhí)行實時分析
- 與事件中心的現(xiàn)成集成,每秒可接收數(shù)百萬事件。比較多個實時流或?qū)崟r流與歷史值和模型一起進(jìn)行比較。這樣可以實現(xiàn)異常檢測和傳入數(shù)據(jù)轉(zhuǎn)換,并能夠在流中出現(xiàn)特定錯誤或情況時觸發(fā)警報,以及為實時儀表板提供支持。
- 實現(xiàn)任務(wù)可靠性和擴(kuò)展能力
- 擴(kuò)展以適應(yīng)任何數(shù)據(jù)量需求,同時仍能實現(xiàn)高吞吐量、低延遲和有保證的恢復(fù)能力,不需要任何硬件或其它前期成本,也不需要耗費時間進(jìn)行安裝或設(shè)置。在數(shù)分鐘內(nèi)啟動并運行。流分析可在高吞吐量的條件下處理數(shù)據(jù),結(jié)果可預(yù)測且無數(shù)據(jù)丟失。
?
通知中心(Notification Hubs)
可縮放的大規(guī)模移動推送通知引擎,可快速將數(shù)百萬條消息推送至多種平臺(iOS, Android, WP等)
?
?
- 在幾分鐘內(nèi)廣播至數(shù)百萬設(shè)備
- 快速將數(shù)百萬條消息推送至 iOS、Android (Baidu Push)、Windows,或 Kindle 設(shè)備。
- 支持任何后端系統(tǒng)
- 可插入內(nèi)部環(huán)境或 Azure 云端運行的任何后端系統(tǒng):.NET、PHP、Java、Node。
- 通過動態(tài)標(biāo)簽推送至不同用戶群
- 利用標(biāo)簽功能,根據(jù)活動、興趣、位置,或首選項劃分用戶群,在正確的時間將正確的信息推送給正確的人員。
- 使用模板輕松實現(xiàn)本地化
- 使用模板功能推送本地化通知信息,讓用戶獲得與自己所用語言一致的信息。模板功能無需為每個客戶存儲本地化設(shè)置。
- 針對大規(guī)模環(huán)境設(shè)計
- 無需重構(gòu)或切分(Sharding),即可快速擴(kuò)展至數(shù)百萬設(shè)備,發(fā)送數(shù)十億條推送通知。通知中心可自動對基礎(chǔ)結(jié)構(gòu)進(jìn)行必要調(diào)整,用非常低的延遲將信息推送至每臺活躍設(shè)備。
?
機器學(xué)習(xí)( Machine Learning )
提供開發(fā)簡單、功能強大、可靈活擴(kuò)展、基于托管云服務(wù)的預(yù)測分析方案
現(xiàn)屬于Cortana智能套件
?
- 主要功能
- 數(shù)據(jù)探索、描述性分析、預(yù)測性分析
- 監(jiān)管學(xué)習(xí)、無人值守學(xué)習(xí)
- 模型訓(xùn)練和評估
?
?
機器學(xué)習(xí)步驟
?
開發(fā)工具界面 – 創(chuàng)建IoT中心
?
IoT中心創(chuàng)建結(jié)果
?
共享訪問策略
?
開發(fā)工具界面 – 創(chuàng)建設(shè)備標(biāo)識
?
開發(fā)工具界面 - 創(chuàng)建流分析作業(yè)監(jiān)視器
?
開發(fā)工具界面 – 通知中心
?
開發(fā)工具界面 – 機器學(xué)習(xí)模型
Machine Learning Studio: 創(chuàng)建預(yù)測模型
?
開發(fā)工具界面 – Cortana智能庫
轉(zhuǎn)載于:https://www.cnblogs.com/kinging/articles/5865037.html
總結(jié)
以上是生活随笔為你收集整理的[转载]国外物联网平台初探(二):微软Azure IoT的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【线性代数本质】1:向量究竟是什么
- 下一篇: 3-1:类与对象入门——类的引入和类的定