【儀表網(wǎng) 儀表新概念】從1999年KevinAshton次提出這個概念以來,物聯(lián)網(wǎng)已經(jīng)經(jīng)歷了迅速的轉(zhuǎn)變。隨著近年來連接到物聯(lián)網(wǎng)的設(shè)備在多樣性和數(shù)量方面出現(xiàn)指數(shù)式的增長,物聯(lián)網(wǎng)已經(jīng)成為了一種主流技術(shù),在推動現(xiàn)在社會的生活方式方面有著極大的潛力。
在物聯(lián)網(wǎng)的技術(shù)與工程上,硬件與軟件平臺之間目前仍有明確的界限,其中大多數(shù)供應(yīng)商都將精力放在硬件方面。只有極少數(shù)供應(yīng)商提供物聯(lián)網(wǎng)軟件服務(wù):例如,Mattermark根據(jù)所獲總投資排名的物聯(lián)網(wǎng)創(chuàng)業(yè)公司中,只有13家提供物聯(lián)網(wǎng)軟件服務(wù)。
本文針對現(xiàn)有物聯(lián)網(wǎng)軟件平臺,基于我們對IoT供應(yīng)商進行的詳細(xì)分析做了一份綜合調(diào)查。而本文后選擇的物聯(lián)網(wǎng)供應(yīng)商,完全是基于這樣的標(biāo)準(zhǔn):這些供應(yīng)商是否提供軟件解決方案,來處理從物聯(lián)網(wǎng)設(shè)備/傳感器獲取的信息。注意:雖然我們希望盡可能全面,但本文中仍有可能漏掉了一些這些平臺的新改進。
物聯(lián)網(wǎng)軟件平臺想要的重要功能
基于近的幾份調(diào)查,我們選出了物聯(lián)網(wǎng)軟件平臺關(guān)鍵的功能:設(shè)備管理、集成、安全性、數(shù)據(jù)收集協(xié)議、分析類型以及支持可視化,以便對樣本功能進行比較。本文的后半段中會對這些特性進行簡單介紹。
設(shè)備管理與支持集成
設(shè)備管理是物聯(lián)網(wǎng)軟件平臺所需的重要功能之一。物聯(lián)網(wǎng)平臺應(yīng)當(dāng)維護著一堆與之連接的設(shè)備,并跟蹤這些設(shè)備的運行狀態(tài);還應(yīng)當(dāng)能夠處理配置、固件(或其他軟件)更新問題,并提供設(shè)備級的錯誤報告和處理方案。每天結(jié)束前,設(shè)備用戶應(yīng)當(dāng)能夠獲得個人設(shè)備級的統(tǒng)計。
支持集成是物聯(lián)網(wǎng)軟件平臺需要的另一個重要功能。需要從物聯(lián)網(wǎng)平臺上公布的重要操作和數(shù)據(jù)應(yīng)當(dāng)能通過API訪問,RESTAPI常用于這一目的。
信息安全
運營物聯(lián)網(wǎng)軟件平臺所需的信息安全手段,比普通軟件應(yīng)用和服務(wù)所需的要求更高。數(shù)百萬臺設(shè)備與物聯(lián)網(wǎng)平臺連接,代表著我們需要處理的漏洞也是相應(yīng)比例的。一般來講,為了避免被,物聯(lián)網(wǎng)設(shè)備與物聯(lián)網(wǎng)軟件平臺之間的網(wǎng)絡(luò)連接需要通過強大的加密機制來保障。
然而,在現(xiàn)代的物聯(lián)網(wǎng)軟件平臺上,大多低成本、低功率的設(shè)備都無法支持這樣的訪問控制措施。因此,物聯(lián)網(wǎng)軟件平臺自身需要采取替代措施,以解決這類設(shè)備級的問題。例如:將物聯(lián)網(wǎng)流量劃分為專用網(wǎng)絡(luò),依靠云應(yīng)用級的強大安全性,要求定期更新密碼并支持驗證更新固件,還有簽名才能更新軟件等等,這些手段都能加強物聯(lián)網(wǎng)軟件平臺的安全級別。
數(shù)據(jù)收集協(xié)議
需要注意的另一個重要方面,是物聯(lián)網(wǎng)軟件平臺的各個組件之間用于數(shù)據(jù)通信的協(xié)議類型。物聯(lián)網(wǎng)平臺可能需要擴展到數(shù)百萬甚至數(shù)十億設(shè)備(節(jié)點)上。應(yīng)當(dāng)使用輕量級通信協(xié)議,以實現(xiàn)低能耗以及低帶寬功能。
注意:雖然我們在本文中將協(xié)議作為概述性詞匯,不過用以收集數(shù)據(jù)的協(xié)議可分為下面幾類:比如應(yīng)用、負(fù)載容器、信息傳遞和協(xié)議。
數(shù)據(jù)分析
從連接到物聯(lián)網(wǎng)平臺的傳感器中所收集的數(shù)據(jù)需要通過智能化手段進行分析,以獲得有意義的見解。
物聯(lián)網(wǎng)數(shù)據(jù)分析有四種主要類型:實時分析、批處理分析、與交互式分析。實時分析:對數(shù)據(jù)流執(zhí)行在線(動態(tài))分析。樣本操作包括基于窗口的集成、篩選、轉(zhuǎn)換等。
批處理分析:對積累的數(shù)據(jù)集進行操作。這樣,批處理操作會在預(yù)定時間段內(nèi)運行,也許持續(xù)數(shù)小時或數(shù)日。:基于各類統(tǒng)計與機器學(xué)習(xí)技術(shù),集中進行預(yù)測。交互式分析:對數(shù)據(jù)流和批數(shù)據(jù)執(zhí)行多個探索性分析。后一個就是實時分析,在任何軟件平臺都占據(jù)較重的份量。
當(dāng)前的物聯(lián)網(wǎng)軟件平臺
對當(dāng)前的物聯(lián)網(wǎng)軟件平臺進行仔細(xì)調(diào)查后,我們發(fā)現(xiàn)上面提到的每個功能都已實現(xiàn),只是程度不同而已。我們在下面列出了相關(guān)的平臺,并進行了功能總結(jié)對比:
表1相關(guān)平臺功能總結(jié)對比(標(biāo)著“未知”的欄目代表相關(guān)信息在可用文件中無法找到)
11個熱門物聯(lián)網(wǎng)開發(fā)平臺的比較
很明顯,上面列舉的物聯(lián)網(wǎng)初創(chuàng)公司,其中很多可能還不具備設(shè)備管理功能。在這方面,還需要物聯(lián)網(wǎng)軟件平臺供應(yīng)商提供解決方案。
此外在分析生成的物聯(lián)網(wǎng)數(shù)據(jù)時,在計算及可視化方面提供的支持相對較少。它們大多支持實時分析——這是任何物聯(lián)網(wǎng)框架的功能。然而,只有極少數(shù)物聯(lián)網(wǎng)軟件平臺為其他3種分析類型提供支持。而可視化界面大多表現(xiàn)為門戶網(wǎng)站這樣的簡單模式,允許對物聯(lián)網(wǎng)生態(tài)環(huán)境進行管理,不過很少提供可視化的數(shù)據(jù)分析功能。
在不同的物聯(lián)網(wǎng)軟件平臺中,還有幾個常見功能,包括基于集成的RESTAPI,支持用MQTT協(xié)議來收集數(shù)據(jù),以及使用SSL進行鏈路加密。盡管在表一中沒有提到,不過單ParStream公司就能達(dá)到300萬到400萬行/秒的吞吐量。
這表明大多數(shù)物聯(lián)網(wǎng)軟件平臺設(shè)計時并未太多考慮物聯(lián)網(wǎng)部署的系統(tǒng)性能,而在真實情況下這是非常關(guān)鍵的。
需要改進的功能
很明顯有若干地方需要改進。在本節(jié)中,我們首先提供了一張改進功能列表。在物聯(lián)網(wǎng)軟件平臺供應(yīng)商的努力下,其中一些項目已經(jīng)實現(xiàn),還有一些性能等待實現(xiàn)。之后我們提供了一張列表,包括現(xiàn)在尚未實現(xiàn)的這些新功能。
現(xiàn)有功能
數(shù)據(jù)分析
現(xiàn)在物聯(lián)網(wǎng)軟件平臺大多支持實時分析,不過批處理分析和交互式數(shù)據(jù)分析也許同樣重要。
在這一點上,有人可能會爭辯:在其他的處理平臺中包括這類分析功能,想要配置用于分析場景的軟件系統(tǒng)也很簡單。不過,這談何容易。用于實時分析(Storm、Samza等)、用于批處理分析(Hadoop、Spark等)、用于(SparkMLLIB等)、用于交互式分析(ApacheDrill等)的數(shù)據(jù)處理系統(tǒng),并不能直接用在物聯(lián)網(wǎng)案例中。
基準(zhǔn)
物聯(lián)網(wǎng)軟件平臺需要有擴展性,還應(yīng)包含描述和評估系統(tǒng)性能的設(shè)備。定義良好的性能指標(biāo)需要:能夠塑造與測量物聯(lián)網(wǎng)系統(tǒng)的性能,并考慮到網(wǎng)絡(luò)特性、能耗特點、系統(tǒng)吞吐率、計算資源消耗以及其他運行特征。
邊緣分析
需要采取措施以減少傳感器設(shè)備與物聯(lián)網(wǎng)服務(wù)器之間的大量網(wǎng)絡(luò)帶寬損耗。解決方案之一是使用輕量級的通訊協(xié)議。另一個辦法就是使用邊緣分析法,以減少傳輸?shù)轿锫?lián)網(wǎng)服務(wù)器上的原始數(shù)據(jù)總量。即便是在簡單的硬件嵌入系統(tǒng)中(如Arduino),也可以實現(xiàn)邊緣分析法。
其他問題
應(yīng)當(dāng)注意:有多個與物聯(lián)網(wǎng)軟件平臺相關(guān)的其他問題,比如倫理、道德和法律問題,在本文中并未涉及。盡管這些問題也很重要,但在本文中不作討論。
需要添加的功能
處理無序進程
在任何物聯(lián)網(wǎng)應(yīng)用中都有可能碰到無序事件,在傳感器所發(fā)出的事件流中,元組順序混亂可能是網(wǎng)絡(luò)延遲、時鐘偏移等原因所導(dǎo)致的。處理無序的物聯(lián)網(wǎng)事件可能會導(dǎo)致系統(tǒng)故障。處理無序事件時,需要在結(jié)果準(zhǔn)確性與延遲之間做出權(quán)衡。
有四項主要的處理技術(shù):基于緩存(Buffer-based)、基于標(biāo)點(Punctuation-based)、基于推測(Speculation-based)以及基于近似(Approximation-basedtechniques)。在物聯(lián)網(wǎng)解決方案中,應(yīng)當(dāng)使用其中的一項或多項來解決無序事件的問題。
支持物聯(lián)網(wǎng)背景
背景主要由個體、其偏好或過去的行為構(gòu)成。例如:在很多不同類型的傳感器,因此我們能夠獲得豐富的背景信息。在物聯(lián)網(wǎng)分析中,這些背景數(shù)據(jù)應(yīng)當(dāng)被納入考慮。
結(jié)論
物聯(lián)網(wǎng)模式的快速發(fā)展需要強大的物聯(lián)網(wǎng)軟件平臺,能通過物聯(lián)網(wǎng)用例滿足出現(xiàn)的需求。本文中,我們調(diào)查了現(xiàn)有先進的物聯(lián)網(wǎng)軟件平臺的功能,調(diào)查集中在這些方面:設(shè)備管理、集成、安全性、數(shù)據(jù)收集協(xié)議、分析類型、可視化支持。從這項研究中,像設(shè)備管理、物聯(lián)網(wǎng)數(shù)據(jù)分析、物聯(lián)網(wǎng)軟件系統(tǒng)可擴展性以及性能這樣的領(lǐng)域明顯需要物聯(lián)網(wǎng)平臺社區(qū)投入特別的關(guān)注。