能否利用Hadoop搭建完整的雲端計算平臺

張小凡vip發表於2018-04-10

Hadoop並不完全代表雲端計算,所以,要用Hadoop搭建完整的雲端計算平臺,答案是不夠。我們常說雲端計算,實際上還是通過計算機的大規模或者 說海量處理來為生活中各式各樣的人和各行各業服務——所以,核心在“服務”。關於服務,展開來就是常用的那3種(也是事實上的標 準):SaaS,PaaS,IaaS。對雲端計算來說,公有和私有,虛擬和儲存,這其實是相對討論的核心。

回頭說Hadoop。在Google三大論文的直接刺激下,Hadoop社群興起,而在眾多的開源實現中,Hadoop(主專案)可以說是所有已知雲端計算方面開源專案的一個Top專案。

雲端計算中有哪些構件?發展到目前的技術與規模,並沒有一個確切的定論,今天的說的話明天可能就不一樣了。但對Hadoop來說,實現了的部分,就是大部分企業在不斷髮展中所遇到的大部分問題。直接上圖:

從整體生態系統的角度,從底層儲存,到中間的計算模型和框架,再到上層的邏輯處理和流、顯示,都有相應開源的實現。這就是你說的構件了。

包括我們看到的Hadoop2.0中,引入的新的處理框架,Spark,Storm,YARN(取代MR),都是Hadoop生態系統的完善與實現。

Hadoop實現的是在簡易硬體的基礎上進行儘量高可用性海量計算與處理的中上層模型。Hadoop處理了儲存(也只是一部分),虛擬化是沒有涉 及的,而底層硬體Hadoop也是不涉及的,不管是Hadoop還是其他的專案,只是在軟體的層面想通過縱向或者橫向的擴充解決所有的問題是不現實的。 Hadoop在硬體這方面,只是在實現中預留或者接入硬體特性,也就是在虛擬化這方面Hadoop只是個“APP”,不是“始作俑者”(用詞不當了)。

那麼,完整的雲端計算平臺呢?

按照企業級來說,是要看具體的企業方向和企業型別的,包括IBM和VMware都有提供不同的解決方案。大致上一定是由單點–>叢集 –>多層(準分散式)–>硬體–>分散式(地域分佈)來解決的。具體到Hadoop體系的技術,直接去對應上圖就好了。

從雲端計算這個概念出現到今天,資料可以說“浩如煙海”了,但很多資料只是互相複製黏貼,並沒有說到雲端計算的核心。我想提出的一個觀點是,完整的雲端計算平臺,依賴的是業務,提供的是儲存與支援。

沒有業務需求而是照搬網上的資料或者自認為“活用”了某些技術,都可能只是“娛人娛己”。我們看一下網際網路負載均衡技術是如何發展的就就更容易理解雲端計算:

客戶端快取–>CDN快取–>Apache&Nginx靜態頁面快取–>PHP和Java動態記憶體 –>Memcache&Other Nosql–>Mysql&Oracle–>HDFS&Other Big Table

從技術的角度看,所有問題解決起來都是層次化的(大家肯定都有寫Demo吧),都是根據不同的需求引入不同的技術,在單層單點乃至叢集都無法解決 問題的時候,新的計算框架,雲端計算與網格計算乃至動畫需要的大規模渲染都在需要的時候順理成章的引入。總之,完整的雲端計算平臺,對於不同的公司業務都是不 同的,拿騰訊來說,平臺的元件多如牛毛,“平臺”只是提供最基礎的服務:儲存與支援,其他的都需要業務根據自身的特點在其上進行構建(相信大公司都是有自 己的完整方案的,這裡我就不能再說了……),至於提高什麼樣級別的這種“服務”,就要看公司的業務規模,需要支撐的體系,乃至公司的決策戰略了等等

原文連結:
http://www.open-open.com/solution/view/1426725577820

相關文章