AWS IOT解決方案分析
一、IOT能干什么?
IOT喊了這么多年,終于慢慢要落地了。新技術關鍵還是要有應用驅動才會成熟。IOT在典型的應用有,車聯網,梯(電梯)聯網,現在比較火的共享單車也是一個典型的IOT應用。
我們來看看其中一個梯聯網的案例,來理解一下IOT在其中發揮的作用:
電梯這個行業,和別的行業不太一樣。其實賣電梯并不會賺特別多的錢,但是維護電梯確對一個電梯公司非常重要。就像我們說的美女,是七分姿色,三分保養。電梯也一樣,維護非常重要。中國一部分電梯事故,是為了省錢,沒有找專業資質的公司來維護造成的。
全球目前有 1500 萬部電梯,前 4 大廠商手里都維護有超過 100 萬部電梯。每部電梯平均每年有 2 天的時間是不工作的。這兩天,可能是因為故障,也可能是因為保養,對一部電梯來說,兩天可能不算什么,但是乘以 1500 萬,大家知道這個數字是多么大。
另外,每部電梯每個月要進行 2 次例行的巡檢,這個數字好像也不大,我們把這兩次巡檢乘以 12 個月,再乘以 1500 萬,這個量就很大了。
所以說如果我們能用一種新的技術手段,把這個東西效率提高了,節省的費用是大大的。所以這個就用到了IOT解決方案。通過傳感器把數據收集到云上去,實時監控和分析電梯,發現問題,節省人工成本。
二、AWS的IOT解決方案
IOT很多廠商都在投入,我們看看AWS提供了什么IOT解決方案。
IOT解決方案核心是要解決無數的設備怎么連接到平臺上進行處理,下面看看AWS給出的解決方案都能做些什么?下面是AWS給出的IOT解決方案的參考架構圖:
圖上主要涉及到的組件和功能如下:
1. AWS IoT 設備 SDK
AWS IoT 提供有 SDK,使用提供的SDK集成到IOT設備和移動應用程序中,設備和程序就不用關心數據是怎么發送以及發送到哪里去。AWS支持MQTT、HTTP 或 WebSockets 協議連接和驗證 AWS IoT 并與之交換消息。MQTT比較有意思,1999年IBM發明的,核心是開銷小,支持使用發布/訂閱消息模式,提供一對多的消息發布,解除應用程序耦合,非常適合IOT場景。
2. 設備網關
設備網關是IOT設備連接和管理的入口,負責管理IOT設備的連接。
AWS IoT 設備網關支持設備安全高效地與 AWS IoT 進行通信。設備網關可以使用發布/訂閱模式交換消息,從而支持一對一和一對多的通信。憑借此一對多的通信模式,AWS IoT 將支持互連設備向多名給定主題的訂閱者廣播數據。設備網關支持 MQTT、WebSocket 和 HTTP 1.1 協議。設備網關可自動擴展,以支持 10 億多臺設備,而無需預配置基礎設施。
3. 身份驗證和授權
安全是基本需求,在IOT設備認證和鑒權的能力是基本能力。
AWS IoT 支持 AWS 身份驗證方法(稱為“SigV4”)以及基于身份驗證的 X.509 證書。使用 HTTP 的連接可以使用任一方法,使用 MQTT 的連接可以使用基于證書的身份驗證,使用 WebSockets 的連接可以使用 SigV4。
4. 注冊表
注冊表將創建設備標識并跟蹤元數據,如設備的屬性和功能。注冊表向格式一致的每臺設備分配唯一的標識,而不管設備的類型和連接方式為何。此外,它還支持描述設備功能的元數據,例如傳感器是否報告溫度,以及數據是華氏度還是攝氏度。
5. 設備影子
憑借 AWS IoT,您可以創建每臺設備的持久虛擬版(或“影子”),它包含設備的最新狀態,因此應用程序或其他設備可以讀取消息并與此設備進行交互。設備影子保留每臺設備的最后報告狀態和期望的未來狀態,即便設備處于離線狀態。您可以通過 API 或使用規則引擎,獲取設備的最后報告狀態或設置期望的未來狀態。
設備影子提供始終可用的 REST API,使得構建與您的設備進行交互的應用程序更加輕松。此外,應用程序可以設置設備的期望未來狀態,而無需說明設備的當前狀態。AWS IoT 將比較期望未來狀態和最后報告狀態之間的差異,并命令設備“彌補差異”。
AWS IoT 設備 SDK 使您的設備能夠輕松地同步其狀態及其影子,并響應通過影子設置的期望的未來狀態。
6. 規則引擎
規則引擎對大量的IOT設備上來的數據進行最初的過濾和處理,更復雜是數據分析送到后端的云服務去處理。
規則引擎可以構建 IoT 應用程序,這些應用程序將收集、處理和分析互連設備在全局范圍內生成的數據并根據數據執行操作,且無需管理任何基礎設施。規則引擎評估發布到 AWS IoT 的入站消息,并根據您定義的業務規則轉換這些消息并將它們傳輸到另一臺設備或云服務。規則可以應用至一臺或多臺設備中的數據,并且它可以并行執行一個或多個操作。
規則引擎還可以將消息路由到 AWS 終端節點,包括 AWS Lambda、Amazon Kinesis、Amazon S3、Amazon Machine Learning、Amazon DynamoDB、Amazon CloudWatch 和內置 Kibana 集成的 Amazon Elasticsearch Service。外部終端節點可以使用 AWS Lambda、Amazon Kinesis 和 Amazon Simple Notification Service (SNS) 進行連接。
您可以在管理控制臺中或者使用類似 SQL 的語句編寫規則。規則可以編寫為采用不同的方式表示,具體取決于消息內容。例如,如果溫度讀數超出特定閾值,則它可以觸發規則以便將數據傳輸到 AWS Lambda。規則還可以編寫為考慮云中的其他數據,例如其他設備中的數據。例如,您可以在規則中編寫,如果此溫度超出其他 5 臺設備的平均值 15%,則應采取措施。
三、IOT的前景
從IOT產業鏈廠商(運營商,云服務,IOT廠家)來看,IOT慢慢逐漸成熟落地的時機已經到了,越來越多的IOT應用會出來,實際服務和解決生活中的具體問題。
【本文為51CTO專欄作者“大數據和云計算”的原創稿件,轉載請通過微信公眾號獲取聯系和授權】