在當(dāng)今的大數(shù)據(jù)時(shí)代,大數(shù)據(jù)平臺(tái)的搭建也成為互聯(lián)網(wǎng)行業(yè)的熱門(mén)技術(shù)課題。中培偉業(yè)《大數(shù)據(jù)平臺(tái)搭建及高性能計(jì)算最佳實(shí)踐》專(zhuān)家蔣老師結(jié)合相關(guān)事件,在這里介紹了大數(shù)據(jù)平臺(tái)搭建的常見(jiàn)步驟及相關(guān)注意事項(xiàng)。
1. linux系統(tǒng)安裝
一般使用開(kāi)源版的Redhat系統(tǒng)--CentOS作為底層平臺(tái)。為了提供穩(wěn)定的硬件基礎(chǔ),在給硬盤(pán)做RAID和掛載數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的時(shí),需要按情況配置。例如,可以選擇給HDFS的namenode做RAID2以提高其穩(wěn)定性,將數(shù)據(jù)存儲(chǔ)與操作系統(tǒng)分別放置在不同硬盤(pán)上,以確保操作系統(tǒng)的正常運(yùn)行。
2. 分布式計(jì)算平臺(tái)/組件安裝
目前國(guó)內(nèi)外的分布式系統(tǒng)的大多使用的是Hadoop系列開(kāi)源系統(tǒng)。Hadoop的核心是HDFS,一個(gè)分布式的文件系統(tǒng)。在其基礎(chǔ)上常用的組件有Yarn、Zookeeper、Hive、Hbase、Sqoop、Impala、ElasticSearch、Spark等。
3. 數(shù)據(jù)導(dǎo)入
前面提到,數(shù)據(jù)導(dǎo)入的工具是Sqoop。用它可以將數(shù)據(jù)從文件或者傳統(tǒng)數(shù)據(jù)庫(kù)導(dǎo)入到分布式平臺(tái)『一般主要導(dǎo)入到Hive,也可將數(shù)據(jù)導(dǎo)入到Hbase』。
4. 數(shù)據(jù)分析
數(shù)據(jù)分析一般包括兩個(gè)階段:數(shù)據(jù)預(yù)處理和數(shù)據(jù)建模分析。
(1)數(shù)據(jù)預(yù)處理是為后面的建模分析做準(zhǔn)備,主要工作時(shí)從海量數(shù)據(jù)中提取可用特征,建立大寬表。這個(gè)過(guò)程可能會(huì)用到Hive SQL,Spark QL和Impala。
(2)數(shù)據(jù)建模分析是針對(duì)預(yù)處理提取的特征/數(shù)據(jù)建模,得到想要的結(jié)果。如前面所提到的,這一塊最好用的是Spark。常用的機(jī)器學(xué)習(xí)算法,如樸素貝葉斯、邏輯回歸、決策樹(shù)、神經(jīng)網(wǎng)絡(luò)、TFIDF、協(xié)同過(guò)濾等,都已經(jīng)在ML lib里面,調(diào)用比較方便。
5. 結(jié)果可視化及輸出API
可視化一般式對(duì)結(jié)果或部分原始數(shù)據(jù)做展示。一般有兩種情況,行數(shù)據(jù)展示,和列查找展示。在這里,要基于大數(shù)據(jù)平臺(tái)做展示,會(huì)需要用到ElasticSearch和Hbase。Hbase提供快速『ms級(jí)別』的行查找。 ElasticSearch可以實(shí)現(xiàn)列索引,提供快速列查找。
6. 平臺(tái)搭建主要問(wèn)題:
(1)穩(wěn)定性 Stability
理論上來(lái)說(shuō),穩(wěn)定性是分布式系統(tǒng)最大的優(yōu)勢(shì),因?yàn)樗梢酝ㄟ^(guò)多臺(tái)機(jī)器做數(shù)據(jù)及程序運(yùn)行備份以確保系統(tǒng)穩(wěn)定。但也由于大數(shù)據(jù)平臺(tái)部署于多臺(tái)機(jī)器上,配置不合適,也可能成為最大的問(wèn)題。 曾經(jīng)遇到的一個(gè)問(wèn)題是Hbase經(jīng)常掛掉,主要原因是采購(gòu)的硬盤(pán)質(zhì)量較差。硬盤(pán)損壞有時(shí)會(huì)到導(dǎo)致Hbase同步出現(xiàn)問(wèn)題,因而導(dǎo)致Hbase服務(wù)停止。由于硬盤(pán)質(zhì)量較差,隔三差五會(huì)出現(xiàn)服務(wù)停止現(xiàn)象,耗費(fèi)大量時(shí)間。結(jié)論:大數(shù)據(jù)平臺(tái)相對(duì)于超算確實(shí)廉價(jià),但是配置還是必須高于家用電腦的。
(2)可擴(kuò)展性 Scalability
如何快速擴(kuò)展已有大數(shù)據(jù)平臺(tái),在其基礎(chǔ)上擴(kuò)充新的機(jī)器是云計(jì)算等領(lǐng)域應(yīng)用的關(guān)鍵問(wèn)題。在實(shí)際2B的應(yīng)用中,有時(shí)需要增減機(jī)器來(lái)滿足新的需求。如何在保留原有功能的情況下,快速擴(kuò)充平臺(tái)是實(shí)際應(yīng)用中的常見(jiàn)問(wèn)題。
想了解更多IT資訊,請(qǐng)?jiān)L問(wèn)中培偉業(yè)官網(wǎng):中培偉業(yè)