天天看點

CDH5到CDH6都更新了些什麼

發現最近很多人關注CDH版本更新的問題,CDH6更新有一年多的時間了,2019年2月19日,疊代的版本為CDH6.1.1,現在CDH最新的版本已經到CDH6.3.3了。為了友善比較,本文内容主要基于CDH5.16.1和CDH6.1.1進行說明。CDH6是基于Hadoop3同時包含大量其他元件的大版本更新的釋出版本,許多使用者考慮到未來CDH的版本主要是基于CDH6,而CDH5會慢慢的停止更新,是以考慮新搭叢集使用CDH6,或者想把已有的CDH5叢集更新到CDH6第一個問題就是需要考慮CDH5和CDH6的差别,通過分析一些差異看能否将已有的應用遷移或者直接部署到CDH6,相容性穩定性是否存在問題等。出于這個目的,本文會大概概括一下兩個版本間的差異,如果你需要更詳細的從各個方面比較CDH5和CDH6的差别的文檔,可以給我留言,我會發你。然後需要強調一下:沒有最好的技術,也不是說最新的技術就是最好的,永遠隻有最合适的技術。

CDH6相對于CDH5是一次各個元件的大版本更新,要了解大版本更新,這裡先解釋一下Hadoop相關元件的版本說明。比如版本号是x.y.z,z代表的一般是Maintenance Version或Patch Version,這種版本更新主要修複bug,不改動API,也不涉及新的功能,y代表的是Minor Version,這種版本更新主要是增加新的功能和新的API,x代表的是Major Version,往往會新增全新的功能,甚至改動API。那麼CDH5到CDH6就是一次Major Version的更新,新增了很多功能,API的更改有可能導緻你舊有的程式的不相容而需要修改或者重新開發,但根據軟體開發疊代的原則,往往新版本會向下相容一段時間,你隻需要經過嚴格的測試,在一段時間内應用開發的修改理論不會太大,但還是要結合實際情況,進行嚴格的測試後再行判斷和評估。

CDH5現在依舊是市場上用的最多,推得最廣的版本,客戶認可度也較高。同時,CDH5經過快5年的疊代也是目前最成熟和穩定的版本,各個元件跟随着社群版的更新疊代,已經把各個元件的bug修複得很完善。另外,無論是國外還是國内支援案例也多,國内可以找到很多相關的實施案例供參考,可以節省運維人力、物力成本。最後CDH5的周邊生态圈支援也比較豐富,無論是開源還是商業産品,ETL工具,排程工具,報表工具,BI工具等。你如果現在選擇CDH5或者已經在用了,Cloudera也官宣了依舊會再支援三年。

CDH6的更新較大,很多元件也都是大版本更新,引入了很多激動人心的新功能,同時各個元件也修複了大量已知的問題和安全漏洞。比如HDFS的糾删碼用于冷資料降低存儲成本又保證了資料的可用性,NameNode和YARN的聯邦解決大規模叢集的性能瓶頸問題,YARN引入GPU支援,未來會引入docker支援等。長遠來看,從Hadoop2更新到Hadoop3或者從CDH5更新到CDH6是必須的,因為無論是社群還是Cloudera從現在開始開始都會将開發重心轉移到Hadoop3或CDH6上,而CDH5則主要以維護和修複bug為主。

建議:

如果你是新搭叢集,并且規模不太大(50個節點以内),基于Hadoop的應用也都是新開發,CDH6是一個不錯的選擇,畢竟避免了以後還要考慮從CDH5更新到CDH6的麻煩,同時還需要進行一次應用測試和遷移。未來遷移到CDH和HDP的合并版本CDP也會更加容易。

如果你已經有CDH5叢集,作為生産系統各種應用已經穩定運作了較長的時間,如果不是因為功能或性能原因必須要用新版本,現階段可以暫時不考慮更新,繼續觀望一段時間。而你一旦決定更新,需要謹慎和細緻的對待,包括你要考慮OS,JDK,中繼資料庫等的更新,已有各種應用比如Hive/Impala/Spark SQL,MapReduce/Spark代碼,腳本,Python/R算法工程等在CDH6進行測試,同時周邊的一些工具對接比如ETL,排程,報表,BI工具等也需要進行對接測試,一切測試通過以後規劃好合理的停機時間,然後進行更新。

注:以上總結分析和建議僅供參考,如果你在選擇CDH版本時存在問題,可以給我留言,我會給你一個從各個方面詳細比較CDH5和CDH6差别的文檔,進而幫助你進行正确的判斷及相應的選擇。或者也歡迎聯系400-601-6012,我們将會結合你的實際情況進行合理的分析和建議。BTW如果你對Cloudera和Hortonworks合并後的新産品CDP感興趣,也可以聯系這個客服電話。

繼續閱讀