我們生活在科技飛速發展而造成的前所未有的產業破壞時代,特別是在物聯網領域。物聯網有助于產業轉型為數據驅動的模式,拓展出更多的機遇。物聯網技術的快速采用,來自于那些通過技術創新改變業務的公司的支持;制造商正在提供低成本高端設備,使得物聯網平臺的設備集成和管理成為可能。
市場上有大量工具和框架,它們有著不同的利弊,很難做出選擇。數字互聯網的采用應該轉向靈活的、可靠的和成本效益高的平臺,低限度的投入基礎設施、軟件、知識和雇工。
試驗
為了證明這一理念,我們決定找出如何從頭開始構建一個零基礎設施和維護成本,幾乎沒有任何運營費用的物聯網解決方案。
這種方式完全符合云計算的概念,用多少付多少,量入為出,平臺即服務(PaaS),軟件即服務(SaaS)和Serverless方式。
安裝
為了實現這一理念,我們采用了亞馬遜web服務(AWS)的云功能。我們的項目是創建實時報告遙測的設備模擬器,并通過API實時獲取這些信息。
AWS的物聯網平臺作為一個強大的物聯網框架,它支持MQTT—一種應用為廣泛的通信協議。我們選擇存留和處理數據的支持服務也是基于平臺的價格和維護成本。
在研究了幾種不同的體系結構方法和各種服務之后,我們終提出以下組件列表:
AWS物聯網的數據介質和設備管理,
DynamoDB—保留數據可讀的文件存儲,
AWS Lambda—無服務器的數據處理,
S3—用于靜態網站托管的塊存儲,
網關API—REST訪問數據。
數據流圖
試驗項目的全部的數據流以以下方式工作:
乍一看第二條,可能有點傻,你可以辯稱,DynamoDB并不是存儲原始時間序列數據的佳選擇。然而,它做了一個偉大的工作,通過少量的設備達到了演示目的。
我們也考慮過用Firehose作為一個傳遞流,用于從物聯網到S3/Reshift以及EMR集群的數據處理,但是對這個小項目來說,必將有點殺雞用了宰牛刀的感覺。
為架構設置以下關鍵參數:
分析/計算
后臺的操作僅僅需要每分鐘處理幾個請求—這意味著大部分時間CPU都是空閑的。如果你不想為CPU空閑時間付費,那么Serverless架構就很適合你。
假設有10000臺設備,每十五分鐘報告一次小容量的數據,那么每個月大約會有2920萬個請求,每個月平均超過730小時。
AWS物聯網平臺每1M請求的成本是5美元,DynamoDB每秒10個提出請求的成本是0.0065美元,花費等同于每秒50個得到請求。
僅僅是通過AWS物聯網接受數據,每個月的賬單在146美元左右,將數據以小的閱讀能力存放在DynamoDB是14美元??傎M用是160美元,每月每臺設備0.02美元,等價于每個請求0.000005美元。賬單沒有考慮lambda,存儲,API網關,因為這些實際上只是總費用的一小部分,所以可以忽略不計。
令人印象深刻的是一個有著成千上萬連接設備的物聯網方案,每個月花費不到二百美元。然而,想象一下每個業務,設備每秒都在報告關鍵數據,有成千上萬個這樣的設備,你要為Serverless的操作付出多少錢?
這會節省你的時間,10K個設備每秒發送一個消息,結果將是—每個月支付超過136000美元,如果是100K個設備—相應的支出將超過1360000美元,每個月每個設備將增加到13.61美元。你還會考慮組建自己的Serverless的物聯網解決方案嗎?答案是—視情況而定!
利弊考量
所有這些數字意味著優化你的請求率將立即并且幾乎是線性地導致你每個月賬單的減少。
這就引出了我們第二個重要的結論,我們必須考慮—總擁有成本。組建Serverless架構有一個虛擬的門檻,超出了Serverless方法之外,它變得非常昂貴,可能也起不到作用。
例如,傳統的架構實現成本可能不依賴于設備數量或者每秒的請求數,但是這么做的代價是有額外的運營費用。成本也可以通過使用開源的解決方案來降低。
毫無疑問,Serverless架構有很多優點:
要考慮的首要因素是為你的項目需求選擇正確的方式。如果你不擔心云鎖定,Serverless方式將是合適的:
另一方面,如果你正在建設一個不可知的云和一個高度可定制的解決方案去運行實時數據,可以考慮定制或者開源的物聯網解決方案。
本站文章版權歸原作者及原出處所有 。內容為作者個人觀點, 并不代表本站贊同其觀點和對其真實性負責,本站只提供參考并不構成任何投資及應用建議。本站是一個個人學習交流的平臺,網站上部分文章為轉載,并不用于任何商業目的,我們已經盡可能的對作者和來源進行了通告,但是能力有限或疏忽,造成漏登,請及時聯系我們,我們將根據著作權人的要求,立即更正或者刪除有關內容。本站擁有對此聲明的最終解釋權。