當今智能行業最為熱門的話題無非就是云計算、大數據與人工智能。它們之間好像互相有關系,一般談云計算的時候會提到大數據,談人工智能的時候會提大數據,談人工智能的時候會提云計算……它們相輔相成、不可分割。若非技術人員,可能會較難理解這三者間的相互關系,所以有必要解釋一下。
首先來說云計算,云計算最初的目標是對資源的管理,管理的主要是計算資源,網絡資源,存儲資源三個方面。
1.1管數據中心就像配電腦
什么叫計算,網絡,存儲資源呢?就說你要買臺筆記本電腦吧,你是不是要關心這臺電腦什么樣的CPU?。慷啻蟮膬却姘??這兩個我們稱為計算資源。
這臺電腦要能上網吧,需要有個網口可以插網線,或者有無線網卡可以連接我們家的路由器,您家也需要到運營商比如聯通,移動,電信開通一個網絡,比如100M的帶寬,然后會有師傅弄一根網線到您家來,師傅可能會幫您將您的路由器和他們公司的網絡連接配置好,這樣您家的所有的電腦,手機,平板就都可以通過您的路由器上網了。這就是網絡。
您可能還會問硬盤多大啊?原來硬盤都很小,10G之類的,后來500G,1T,2T的硬盤也不新鮮了。(1T是1000G),這就是存儲。
對于一臺電腦是這個樣子的,對于一個數據中心也是同樣的。想象你有一個非常非常大的機房,里面堆了很多的服務器,這些服務器也是有CPU,內存,硬盤的,也是通過類似路由器的設備上網的。這個時候的一個問題就是,運營數據中心的人是怎么把這些設備統一的管理起來的呢?
1.2靈活就是想啥時要都有,想要多少都行
管理的目標就是要達到兩個方面的靈活性。哪兩個方面呢?比如有個人需要一臺很小很小的電腦,只有一個CPU,1G內存,10G的硬盤,一兆的帶寬,你能給他嗎?像這種這么小規格的電腦,現在隨便一個筆記本電腦都比這個配置強了,家里隨便拉一個寬帶都要100M。然而如果去一個云計算的平臺上,他要想要這個資源的時候,只要一點就有了。
所以說它就能達到兩個方面靈活性。
第一個方面就是想什么時候要就什么時候要,比如需要的時候一點就出來了,這個叫做時間靈活性。第二個方面就是想要多少呢就有多少,比如需要一個很小很小的電腦,可以滿足,比如需要一個特別大的空間,以云盤為例,似乎云盤給每個人分配的空間動不動就就很大很大,隨時上傳隨時有空間,永遠用不完,這個叫做空間靈活性。
空間靈活性和時間靈活性,也即我們常說的云計算的彈性。
為了解決這個彈性的問題,經歷了漫長時間的發展。
1.3物理設備不靈活
首先第一個階段就是物理機,或者說物理設備時期。這個時期相當于客戶需要一臺電腦,我們就買一臺放在數據中心里。物理設備當然是越來越牛,例如服務器,內存動不動就是百G內存,例如網絡設備,一個端口的帶寬就能有幾十G甚至上百G,例如存儲,在數據中心至少是PB級別的(一個P是1000個T,一個T是1000個G)。
然而物理設備不能做到很好的靈活性。首先它不能夠達到想什么時候要就什么時候要、比如買臺服務器,哪怕買個電腦,都有采購的時間。突然用戶告訴某個云廠商,說想要開臺電腦,如果使用物理服務器,當時去采購啊就很難,如果說供應商啊關系一般,可能采購一個月,供應商關系好的話也需要一個星期。用戶等了一個星期后,這時候電腦才到位,用戶還要登錄上去開始慢慢部署自己的應用,時間靈活性非常差。第二是空間靈活性也不行,例如上述的用戶,要一個很小很小的電腦,現在哪還有這么小型號的電腦啊。不能為了滿足用戶只要一個G的內存是80G硬盤的,就去買一個這么小的機器。但是如果買一個大的呢,因為電腦大,就向用戶多收錢,用戶說他只用這么小的一點,如果讓用戶多付錢就很冤。
1.4虛擬化靈活多了
有人就想辦法了。第一個辦法就是虛擬化。用戶不是只要一個很小的電腦么?數據中心的物理設備都很強大,我可以從物理的CPU,內存,硬盤中虛擬出一小塊來給客戶,同時也可以虛擬出一小塊來給其他客戶,每個客戶都只能看到自己虛的那一小塊,其實每個客戶用的是整個大的設備上其中的一小塊。虛擬化的技術能使得不同的客戶的電腦看起來是隔離的,我看著好像這塊盤就是我的,你看這呢這塊盤就是你的,實際情況可能我這個10G和您這個10G是落在同樣一個很大很大的這個存儲上的。