發(fā)布時(shí)間:2022-11-03
欄目:電商資訊
上一篇文章講的是美團(tuán)的大數(shù)據(jù)平臺(tái)架構(gòu),相信大家也看到了這種平臺(tái)的優(yōu)勢(shì),也就是因?yàn)檫@種大數(shù)據(jù)平臺(tái)架構(gòu)的存在,阿里才會(huì)提出數(shù)據(jù)中臺(tái)這么個(gè)非常好用的東西,后面有空會(huì)和大家再講講數(shù)據(jù)中臺(tái)。
好了,言歸正傳,假如我們能夠化整為零,在企業(yè)內(nèi)部從宏觀、整體的角度設(shè)計(jì)和實(shí)現(xiàn)一個(gè)統(tǒng)一的大數(shù)據(jù)平臺(tái),引入單一集群、單一存儲(chǔ),統(tǒng)一服務(wù)和統(tǒng)一安全的架構(gòu)思想,就能很好的幫助企業(yè)解決很多問題。
提到大數(shù)據(jù)分析平臺(tái),不得不說Hadoop系統(tǒng),Hadoop到現(xiàn)在也超過10年的歷史了,很多東西發(fā)生了變化,版本也從0.x進(jìn)化到目前的2.6版本。我把2021年后定義成后Hadoop平臺(tái)時(shí)代,這不是說不用Hadoop,而是像NoSQL(NotOnlySQL)那樣,有其他的選型補(bǔ)充。
Hadoop:開源的數(shù)據(jù)分析平臺(tái),解決了大數(shù)據(jù)(大到一臺(tái)計(jì)算機(jī)無法進(jìn)行存儲(chǔ),一臺(tái)計(jì)算機(jī)無法在要求的時(shí)間內(nèi)進(jìn)行處理)的可靠存儲(chǔ)和處理。適合處理非結(jié)構(gòu)化數(shù)據(jù),包括HDFS,MapReduce基本組件。
HDFS:提供了一種跨服務(wù)器的彈性數(shù)據(jù)存儲(chǔ)系統(tǒng)。
MapReduce:技術(shù)提供了感知數(shù)據(jù)位置的標(biāo)準(zhǔn)化處理流程:讀取數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行映射(Map),使用某個(gè)鍵值對(duì)數(shù)據(jù)進(jìn)行重排,然后對(duì)數(shù)據(jù)進(jìn)行化簡(jiǎn)(Reduce)得到很終的輸出。
AmazonElasticMapReduce(EMR):托管的解決方案,運(yùn)行在由AmazonElasticComputeCloud(EC2)和SimpleStrorageService(S3)組成的網(wǎng)絡(luò)規(guī)模的基礎(chǔ)設(shè)施之上。假如你需要一次性的或不常見的大數(shù)據(jù)處理,EMR可能會(huì)為你節(jié)省開支。但EMR是高度優(yōu)化成與S3中的數(shù)據(jù)一起工作,會(huì)有較高的延時(shí)。Hadoop還包含了一系列技術(shù)的擴(kuò)展系統(tǒng),這些技術(shù)主要包括了Sqoop、Flume、Hive、Pig、Mahout、Datafu和HUE等。
這里就不一一列舉了,有很多,有感愛好的可以和我私信討論。
大數(shù)據(jù)計(jì)算通過將可執(zhí)行的代碼分發(fā)到大規(guī)模的服務(wù)器集群上進(jìn)行分布式計(jì)算,以處理大規(guī)模的數(shù)據(jù),即所謂的移動(dòng)計(jì)算比移動(dòng)數(shù)據(jù)更劃算。但是這樣的計(jì)算方式必然不會(huì)很快,即使一個(gè)規(guī)模不太大的數(shù)據(jù)集上的一次簡(jiǎn)單計(jì)算,MapReduce也可能需要幾分鐘,Spark快一點(diǎn),也至少需要數(shù)秒的時(shí)間。
而網(wǎng)站處理用戶請(qǐng)求,需要毫秒級(jí)的響應(yīng),也就是說,要在1秒內(nèi)完成計(jì)算,大數(shù)據(jù)計(jì)算必然不能實(shí)現(xiàn)這樣的響應(yīng)要求。但是網(wǎng)站應(yīng)用又需要使用大數(shù)據(jù)實(shí)現(xiàn)統(tǒng)計(jì)分析、數(shù)據(jù)挖掘、關(guān)聯(lián)推薦、用戶畫像等一系列功能。
所以網(wǎng)站需要構(gòu)建一個(gè)大數(shù)據(jù)平臺(tái),去整合網(wǎng)站應(yīng)用和大數(shù)據(jù)系統(tǒng)之間的差異,將應(yīng)用程序產(chǎn)生的數(shù)據(jù)導(dǎo)入到大數(shù)據(jù)系統(tǒng),經(jīng)過處理計(jì)算后再導(dǎo)出給應(yīng)用程序使用。一個(gè)典型的網(wǎng)站大數(shù)據(jù)平臺(tái)架構(gòu)如下圖:
大數(shù)據(jù)平臺(tái)可分為三個(gè)部分:
1.數(shù)據(jù)采集
將應(yīng)用程序產(chǎn)生的數(shù)據(jù)和日志等同步到大數(shù)據(jù)系統(tǒng)中,由于數(shù)據(jù)源不同,這里的數(shù)據(jù)同步系統(tǒng)實(shí)際上是多個(gè)相關(guān)系統(tǒng)的組合。數(shù)據(jù)庫(kù)同步通常用Sqoop,日志同步可以選擇Flume,打點(diǎn)采集的數(shù)據(jù)經(jīng)過格式化轉(zhuǎn)換后通過Kafka傳遞。
不同的數(shù)據(jù)源產(chǎn)生的數(shù)據(jù)質(zhì)量可能差別很大,數(shù)據(jù)庫(kù)中的數(shù)據(jù)也許可以直接導(dǎo)入大數(shù)據(jù)系統(tǒng)就可以,而日志和爬蟲產(chǎn)生的數(shù)據(jù)就需要進(jìn)行大量的清洗、轉(zhuǎn)化處理才能有效使用。所以數(shù)據(jù)同步系統(tǒng)實(shí)際上承擔(dān)著傳統(tǒng)數(shù)據(jù)倉(cāng)庫(kù)ETL的工作。
2.數(shù)據(jù)處理
這里是大數(shù)據(jù)存儲(chǔ)與計(jì)算的核心,數(shù)據(jù)同步系統(tǒng)導(dǎo)入的數(shù)據(jù)存儲(chǔ)在HDFS。MapReduce、Hive、Spark等計(jì)算任務(wù)讀取HDFS上的數(shù)據(jù)進(jìn)行計(jì)算,再將計(jì)算結(jié)果寫入HDFS。

MapReduce、Hive、Spark等進(jìn)行的計(jì)算處理被稱作是離線計(jì)算,HDFS存儲(chǔ)的數(shù)據(jù)被稱為離線數(shù)據(jù)。相對(duì)的,用戶實(shí)時(shí)請(qǐng)求需要計(jì)算的數(shù)據(jù)稱為在線數(shù)據(jù),這些數(shù)據(jù)由用戶實(shí)時(shí)產(chǎn)生,進(jìn)行實(shí)時(shí)在線計(jì)算,并把結(jié)果數(shù)據(jù)實(shí)時(shí)返回用戶,這個(gè)計(jì)算過程中涉及的數(shù)據(jù)主要是用戶自己一次請(qǐng)求產(chǎn)生和需要的數(shù)據(jù),數(shù)據(jù)規(guī)模非常小,內(nèi)存中一個(gè)線程上下文就可以處理。
在線數(shù)據(jù)完成和用戶的交互后,被數(shù)據(jù)同步系統(tǒng)導(dǎo)入到大數(shù)據(jù)系統(tǒng),這些數(shù)據(jù)就是離線數(shù)據(jù),其上進(jìn)行的計(jì)算通常針對(duì)(某一方面的)全體數(shù)據(jù),比如針對(duì)所有訂單進(jìn)行商品的關(guān)聯(lián)性挖掘,這時(shí)候數(shù)據(jù)規(guī)模非常大,需要較長(zhǎng)的運(yùn)行時(shí)間,這類計(jì)算就是離線計(jì)算。
除了離線計(jì)算,還有一些場(chǎng)景,數(shù)據(jù)規(guī)模也比較大,要求的處理時(shí)間也比較短。比如淘寶要統(tǒng)計(jì)每秒產(chǎn)生的訂單數(shù),以便進(jìn)行監(jiān)控和宣傳。這種場(chǎng)景被稱為大數(shù)據(jù)流式計(jì)算,通常用Storm、SparkSteaming等流式大數(shù)據(jù)引擎來完成,可以在秒級(jí)甚至毫秒級(jí)時(shí)間內(nèi)完成計(jì)算。
3.數(shù)據(jù)輸出與展示
大數(shù)據(jù)計(jì)算產(chǎn)生的數(shù)據(jù)還是寫入到HDFS中,應(yīng)用程序不可能到HDFS中讀取數(shù)據(jù),所以必須要將HDFS中的數(shù)據(jù)導(dǎo)出到數(shù)據(jù)庫(kù)中。數(shù)據(jù)同步導(dǎo)出相對(duì)比較簡(jiǎn)單,計(jì)算產(chǎn)生的數(shù)據(jù)都比較規(guī)范,稍作處理就可以用Sqoop之類的系統(tǒng)導(dǎo)出到數(shù)據(jù)庫(kù)。
這時(shí),應(yīng)用程序就可以直接訪問數(shù)據(jù)庫(kù)中的數(shù)據(jù),實(shí)時(shí)展示給用戶,比如展示給用戶的關(guān)聯(lián)推薦的商品。淘寶賣家的量子魔方之類的產(chǎn)品,其數(shù)據(jù)都來自大數(shù)據(jù)計(jì)算產(chǎn)生。
除了給用戶訪問提供數(shù)據(jù),大數(shù)據(jù)還需要給運(yùn)營(yíng)和決策層提供各種統(tǒng)計(jì)報(bào)告,這些數(shù)據(jù)也寫入數(shù)據(jù)庫(kù),被相應(yīng)的后臺(tái)系統(tǒng)訪問。很多運(yùn)營(yíng)和治理人員,天天一上班,就是登錄后臺(tái)數(shù)據(jù)系統(tǒng),查看前一天的數(shù)據(jù)報(bào)表,看業(yè)務(wù)是否正常。假如數(shù)據(jù)正常甚至上升,就可以稍微輕松一點(diǎn),假如數(shù)據(jù)下跌,焦躁而忙碌的一天也馬上就開始了。
將上面三個(gè)部分整合起來的是任務(wù)調(diào)度治理系統(tǒng),不同的數(shù)據(jù)何時(shí)開始同步,各種MapReduce、Spark任務(wù)如何合理調(diào)度才能使資源利用很合理、等待的時(shí)間又不至于太久,臨時(shí)的重要任務(wù)能夠盡快執(zhí)行,這些都需要任務(wù)調(diào)度治理系統(tǒng)完成。有時(shí)候?qū)Ψ治鰩熀凸こ處熼_放的作業(yè)提交、進(jìn)度跟蹤,數(shù)據(jù)查看等功能也集成在這個(gè)系統(tǒng)中。
對(duì)于每個(gè)公司的大數(shù)據(jù)團(tuán)隊(duì),很核心開發(fā)維護(hù)的也就是這個(gè)系統(tǒng),大數(shù)據(jù)平臺(tái)上的其他系統(tǒng)一般都有成熟的開源軟件可以選擇,作業(yè)調(diào)度治理會(huì)涉及很多個(gè)性化的需求,通常需要團(tuán)隊(duì)自己開發(fā)。
看到這里,你們對(duì)整個(gè)大數(shù)據(jù)平臺(tái)架構(gòu)了解了嗎,假如還沒有,我特地選了幾個(gè)知名互聯(lián)網(wǎng)公司的例子給你們,圖片有點(diǎn)糊,諒解。
文章地址:http://www.meyanliao.com/article/online/12982.html

- 1互聯(lián)網(wǎng)對(duì)傳統(tǒng)企業(yè)的沖擊有多大
- 2美團(tuán)再因不正當(dāng)競(jìng)爭(zhēng)敗訴新反法互聯(lián)網(wǎng)專條首次適用外賣領(lǐng)域!
- 32021互聯(lián)網(wǎng)十件大事對(duì)不起賈躍亭你只能排第四
- 4互聯(lián)網(wǎng)宣傳做的就是用戶體驗(yàn)
- 5互聯(lián)網(wǎng)創(chuàng)業(yè)到底需要怎樣的能力
- 6適合上班族的25個(gè)副業(yè)(適合上班族的互聯(lián)網(wǎng)副業(yè))
- 7互聯(lián)網(wǎng)的世界沒有永遠(yuǎn)的敵人只有永遠(yuǎn)的利益
- 8押?jiǎn)h進(jìn)駐天線貓助力互聯(lián)網(wǎng)數(shù)碼產(chǎn)品寄存行業(yè)經(jīng)濟(jì)持續(xù)發(fā)展
- 9互聯(lián)網(wǎng)公司如何做好品牌定位
- 102021年互聯(lián)網(wǎng)金融發(fā)展回顧冬去春欲來改弦當(dāng)更張