流式查詢?cè)趺磁袛鄶?shù)據(jù)取完 spark必知必會(huì)的基本概念?
spark必知必會(huì)的基本概念?Spark,是一種不分地區(qū)的大數(shù)據(jù)計(jì)算框架,I很顯然民間大數(shù)據(jù)技術(shù)Hadoop的MapReduce、Hive引擎,和Storm流式實(shí)時(shí)計(jì)算引擎等,Spark真包含了大數(shù)據(jù)
spark必知必會(huì)的基本概念?
Spark,是一種不分地區(qū)的大數(shù)據(jù)計(jì)算框架,I很顯然民間大數(shù)據(jù)技術(shù)Hadoop的MapReduce、Hive引擎,和Storm流式實(shí)時(shí)計(jì)算引擎等,
Spark真包含了大數(shù)據(jù)領(lǐng)城最常見(jiàn)的各種計(jì)算框架:.例如Spark Core主要用于離線計(jì)算出,SparkSQL應(yīng)用于交互式查詢,SparkStreaming應(yīng)用于動(dòng)態(tài)實(shí)時(shí)流式換算,SparkMILlib用于機(jī)器學(xué)習(xí),Spark GraphX主要是用于圖算出。
Spark比較多用于大數(shù)據(jù)的計(jì)算,而Hadoop以后主要作用于大數(shù)據(jù)的存儲(chǔ)(例如HDFS、Hive,HBase等),和資源調(diào)度(Yarn)。
SparkHadoop的組合,是未來(lái)大數(shù)據(jù)領(lǐng)域最熱門(mén)的組合,確實(shí)是最有前景的組合
什么是大數(shù)據(jù)處理的主要方式?
1.大數(shù)據(jù)處理之一:采集
大數(shù)據(jù)的采集是指借用多個(gè)數(shù)據(jù)庫(kù)來(lái)接收打動(dòng)心靈客戶端(Web、App也可以傳感器形式等)的數(shù)據(jù),并且用戶可以不按照這些數(shù)據(jù)庫(kù)來(lái)接受很簡(jiǎn)單去查詢和處理工作。例如,電商會(huì)不使用現(xiàn)代的關(guān)系型數(shù)據(jù)庫(kù)MySQL和Oracle等來(lái)存儲(chǔ)每一筆事務(wù)數(shù)據(jù),除此之外,Redis和MongoDB這樣的NoSQL數(shù)據(jù)庫(kù)也常作用于數(shù)據(jù)的采集。
在大數(shù)據(jù)的采集過(guò)程中,其主要特點(diǎn)和挑戰(zhàn)是并發(fā)數(shù)高,是因?yàn)橥瑯拥挠锌赡軙?huì)有成千上萬(wàn)的用戶來(lái)通過(guò)訪問(wèn)和操作,.例如火車(chē)票售票網(wǎng)站和淘寶,它們并發(fā)的訪問(wèn)量在峰值時(shí)提升上百萬(wàn),所以我是需要在喂養(yǎng)靈獸端部署大量數(shù)據(jù)庫(kù)才能勉力支撐。并且怎么在這些數(shù)據(jù)庫(kù)之間進(jìn)行負(fù)載均衡和分片確實(shí)是是必須深刻的思考和設(shè)計(jì)。
2.大數(shù)據(jù)處理之二:導(dǎo)入/預(yù)處理
只不過(guò)哪采端本身會(huì)有很多數(shù)據(jù)庫(kù),但假如要對(duì)這些海量數(shù)據(jù)接受有效的分析,那就估計(jì)將這些來(lái)自前端的數(shù)據(jù)導(dǎo)入到一個(gè)幾乎全部的大型手機(jī)分布式數(shù)據(jù)庫(kù),或是分布式存儲(chǔ)集群,并且可以在導(dǎo)入基礎(chǔ)上做一些簡(jiǎn)單的刷洗和預(yù)處理工作。也有一些用戶會(huì)在導(dǎo)入時(shí)使用不知從何而來(lái)Twitter的Storm來(lái)對(duì)數(shù)據(jù)通過(guò)流式算出,來(lái)滿足的條件部分業(yè)務(wù)的實(shí)時(shí)計(jì)算需求。
導(dǎo)入與預(yù)處理過(guò)程的特點(diǎn)和挑戰(zhàn)主要是導(dǎo)出的數(shù)據(jù)量大,每秒鐘的導(dǎo)入量偶爾會(huì)會(huì)達(dá)到百兆,哪怕百兆級(jí)別。
3.大數(shù)據(jù)處理之三:統(tǒng)計(jì)/結(jié)論
統(tǒng)計(jì)與分析比較多憑借分布式數(shù)據(jù)庫(kù),或者分布式計(jì)算集群來(lái)對(duì)存儲(chǔ)于內(nèi)中的海量數(shù)據(jù)通過(guò)特殊的分析和分類(lèi)匯總等,以滿足的條件大多數(shù)最常見(jiàn)的一種的分析需求,在這方面,一些實(shí)時(shí)性需求會(huì)都用到EMC的GreenPlum、Oracle的Exadata,和基于組件MySQL的列式存儲(chǔ)Infobright等,而一些批處理,的或設(shè)計(jì)和實(shí)現(xiàn)半結(jié)構(gòu)化數(shù)據(jù)的需求可以不不使用Hadoop。
統(tǒng)計(jì)與總結(jié)這部分的主要特點(diǎn)和挑戰(zhàn)是分析比較復(fù)雜的數(shù)據(jù)量大,其對(duì)系統(tǒng)資源,特別是I/O會(huì)有頗大的占用。
4.大數(shù)據(jù)處理之四:挖掘點(diǎn)
與前面統(tǒng)計(jì)和分析過(guò)程完全不同的是,數(shù)據(jù)挖掘好象沒(méi)有什么作好修改好的主題,主要是在現(xiàn)有數(shù)據(jù)上面并且實(shí)現(xiàn)各種算法的計(jì)算,進(jìn)而發(fā)揮作用預(yù)測(cè)(Predict)的效果,使基于一些高級(jí)別數(shù)據(jù)分析的需求。比較比較典型算法有作用于聚類(lèi)的Kmeans、主要是用于統(tǒng)計(jì)計(jì)算自學(xué)的SVM和作用于分類(lèi)的NaiveBayes,主要使用的工具有Hadoop的Mahout等。該過(guò)程的特點(diǎn)和挑戰(zhàn)主要注意是主要是用于挖掘的算法很緊張,并且算出牽涉的數(shù)據(jù)量和計(jì)算量都比較大,具體用法數(shù)據(jù)挖掘算法都以單線程為主。