雲計算(cloud computing)從2005年進入咱們的視線至今已經發展了12年,商業應用取得了巨大的成功,邊緣計算(edge computing)則是雲計算繼續發酵的產物,目前還處於概念階段。html
那麼到底什麼是邊緣計算呢? 引用Wikipedia對Edge computing的定義,邊緣計算是指:java
Edge computing is a method of optimising cloud computing systems by performing data processing at the edge of the network, near the source of the data.編程
與將數據傳到遠程的雲端進行處理相對,邊緣計算則是在靠近數據源頭的網絡邊緣提供計算和存儲資源。瀏覽器
通俗的說,邊緣計算是去中心化或分佈式的雲計算,原始數據不傳回雲端,而是在本地完成分析。看好邊緣計算的人認爲計算能力正在從雲端向邊緣移動,所以邊緣計算會成爲下一個像雲計算這樣成功的技術爆發點。另外一方面,邊緣計算是驅動物聯網的關鍵技術,所以邊緣計算的推進者每每是從事物聯網的人。緩存
有了定義還不足以理解邊緣計算,你可能會問到底什麼是邊緣呢?安全
邊緣是一個很籠統的概念,它是指接近數據源的計算基礎設施,不一樣的邊緣計算提供商每每有不一樣的邊緣。好比美國電信公司AT&T的邊緣就是離客戶幾英里的蜂窩網絡基站;對於世界最大的CDN廠商阿卡麥,邊緣則是指遍及全球的CDN設備;對於機場的監控設備,邊緣就是覆蓋整個機場無死角的高清攝像頭。服務器
雲計算髮展至今還未到達頂峯,企業將服務遷移至雲上正處於預熱階段,在一些營銷的推波助瀾下又冒出了個邊緣計算,甚至霧計算(fog computing)。下面談一談他們的區別和聯繫。網絡
雲計算的概念應該是比較明確的了——一種按使用量付費、經過網絡提供的虛擬資源,這些資源包括服務器、運行環境和軟件,它們分別對應IaaS、Paas和SaaS。架構
下面引用IIOT EDGE COMPUTING VS. CLOUD COMPUTING的觀點來解釋雲計算和邊緣計算的區別。機器學習
傳統的雲計算架構要求客戶端將數據推送到中心服務器而後再拉回來,好比咱們天天都在使用的icloud幫助咱們備份照片、短信等。而後這種集中式的雲架構對時間敏感、帶寬稀缺的工業物聯網就再也不適用,所以某些關鍵數據的處理任務最好是在數據源而不是雲端,邊緣計算應用而生。
雲計算和邊緣計算共同參與的物聯網解決方案
邊緣計算並不會替代雲計算,他們是相輔相成的,簡單的說就是大量的計算任務在離用戶最近的邊緣計算節點上完成,只有少許的數據須要傳到雲計算中心。它們扮演的角色以下所示:
CLOUD COMPUTING
EDGE COMPUTING
思科最先使用霧計算這個術語來描述網絡邊緣的計算層,能夠對數據進行預處理,使數據快速,安全地傳輸到雲端。霧計算與邊緣計算很是接近,但也是有區別的。
如下觀點來自Fog Computing vs. Edge Computing: What’s the Difference?,這篇文章採訪了該行業內兩位比較權威的從業人士:
霧計算與邊緣計算都是將智能和計算能力推向靠近數據來源的位置,所以他們經常被混用。他們的區別也正是計算能力(大腦)所處的位置:
三者的關係以下所示(圖片來自Fog vs Edge Computing):
如今的雲計算都是集中式的,即把服務器集中在某一個地方,爲了使用雲計算的計算資源,數據須要先被傳輸到距離用戶很遠的數據中心而後集中處理。可是不少設備都沒法接入雲端,大體是如下兩個緣由:
數據量大:對於巨大的數據量,這種傳輸帶寬成本難以接受;好比通用電氣很早就意識到工業機牀上的傳感器產生的大量的數據須要在設備邊緣進行處理,只將有最有價值的數據移到雲端進行機器學習而且在不一樣設備之間共享(Edge computing could push the cloud to the fringe)
速度:對於要求低延遲、密集型計算的智能設備,好比頭戴式VR,機器人,無人機等,受限於網絡傳輸延遲而沒法享受雲計算的強大計算資源,這些設備還面臨一個共同的問題,就是電池續航時間短;
邊緣計算概念的提出就是爲了解決這樣的問題。 在邊緣計算中,傳感器,控制器和其餘鏈接的設備自己收集和分析物聯網數據,或將其傳輸到附近的計算設備(如服務器或筆記本電腦)進行分析。當數據處理和分析發生在網絡邊緣(與數據中心或雲相對)時,數據能夠當即分析並投入運行。
Sprint公司的物聯網事業部經理Mohamad Nasser在Four advantages of edge computing一文中給出了邊緣計算的應用實例,並闡述了邊緣計算的四個優點。
openedgecomputing.org 的首頁上言簡意賅的列出了邊緣計算的兩條優點。
結合維基百科的觀點,將以上內容整理後總結以下:
任何東西都是有缺點的,若是隻看到優勢說明理解的不夠深刻。邊緣計算還處於概念階段,一樣存在不少問題,好比:
CDN的做用簡單的說就是經過將圖片、視頻等靜態文件緩存到接近用戶的節點上,下降直接訪問源站的延遲,從而實現加速。
CDN公司擁有遍及各地、接近用戶的龐大服務器集羣天然成爲了優點明顯的邊緣計算資源,所以結合CDN技術的優點,向客戶提供邊緣計算服務成爲了傳統CDN公司向創新型服務商轉變的一個新的突破點。
如下是邊緣計算在CDN的探索性應用:
國內CDN行業的龍頭老大網宿認爲將來CDN的演進方向之一是造成邊緣計算系統。所以,網宿科技對MEC有着清晰的規劃。網宿科技將經過佈局集中式數據中心+邊緣計算節點,用中心雲+邊緣雲的方式承載將來。此外,公司正在升級現有CDN節點爲具有存儲、計算、傳輸、安全功能的邊緣計算節點,部署數量更多的邊緣計算節點到距離用戶更近的城域網(出處:深度報告:移動邊緣計算,站在5G「中央」)。此外網宿基於邊緣計算的方式,成功研發出邊緣彈幕分發技術,全部的彈幕在網宿平臺上直接進行分發,不用再回源,解救了直播平臺彈幕壓力大的一大痛點。(出處:CDN掀起二次變革:從傳輸服務到邊緣計算)
阿卡邁在全球節點上除了作傳統CDN分發以外,還利用自身分佈式運算的能力,幫助用戶解決業務邏輯問題。舉個簡單例子,阿卡邁在雲端部署方面,能夠精確識別用戶所在的位置和用戶所使用的瀏覽器類型。還能精確識別這個客戶所在的運營商所屬的組織機構等。利用這些信息,咱們就能夠在雲端幫助客戶作一些邏輯判斷,幫助用戶完成在雲端的一些通用型邏輯處理,例如把來自手機的訪問自動重定向到M站(手機站),以及將瀏覽器語言自動定向到所屬國家和地區。經過雲端的邏輯智能處理,就大大節省客戶在應用編碼上的時間,上述的這些技術都已經產品化,並已是通過不少客戶驗證過的解決方案,讓客戶經過簡單的配置在幾小時以內在雲端實現,下降操做的難度以及縮短部署推向市場的時間(出處:阿卡邁梁世鵬:雲計算與CDN是一對天生的孿生兄弟)。阿卡麥經過與IBM合做,使客戶能夠直接將java應用部署到分佈在全球的邊緣設備上,實現就近計算,提高用戶體驗(出處:Akamai, IBM team for edge computing)。
英特爾提出了利用CDN節點直接進行視頻轉碼、分發和存儲的視頻直播解決方案,數據不用迴流到源站,大大節省了帶寬資源,而且得到更好的用戶體驗(出處:邊緣計算攬洪荒之力挺直播大潮 GPU攜深度學習助智能CDN)。