Spark架構(gòu)作為大數(shù)據(jù)當(dāng)中的兩大架構(gòu)之一,其優(yōu)秀的性能讓其成為大數(shù)據(jù)應(yīng)用架構(gòu)未來的主要選擇,代表著該領(lǐng)域未來發(fā)展的趨勢。在 Spark架構(gòu)應(yīng)用的過程中,了解其相關(guān)的術(shù)語很有必要。中培偉業(yè)《大數(shù)據(jù)平臺搭建與高性能計算最佳實戰(zhàn)》培訓(xùn)專家蔣老師在這里介紹了Spark架構(gòu)相關(guān)的專業(yè)術(shù)語:
1)RDD(Resilient distributed datasets )
彈性分布式數(shù)據(jù)集,Spark中最核心的模塊和類,也是設(shè)計精華所在。你將它理解為一個大的集合,將所有數(shù)據(jù)都加載到內(nèi)存中,方便進行多次重用。第一,它是分布式的,可以分布在多臺機器上,進行計算。第二,它是彈性的,在計算處理過程中,機器的內(nèi)存不夠時,它會和硬盤進行數(shù)據(jù)交換,某種程度上會減低性能,但是可以確保計算得以繼續(xù)進行。關(guān)于RDD的詳細闡述,后面會單獨再起一篇文章。
2)Local模式和Mesos模式
Spark支持Local調(diào)用和Mesos集群兩種模式,在Spark上開發(fā)算法程序,可以在本地模式調(diào)試成功后,直接改用Mesos集群運行,除了文件的保存位置需要考慮以外,算法理論上不需要做任何修改。
Spark的本地模式支持多線程,有一定的單機并發(fā)處理能力。但是不算很強勁。本地模式可以保存結(jié)果在本地或者分布式文件系統(tǒng),而Mesos模式一定需要保存在分布式或者共享文件系統(tǒng)。
3)Transformations和Actions
對于RDD,有兩種類型的動作,一種是Transformation,一種是Action。它們本質(zhì)區(qū)別是:
Transformation返回值還是一個RDD。它使用了鏈?zhǔn)秸{(diào)用的設(shè)計模式,對一個RDD進行計算后,變換成另外一個RDD,然后這個RDD又可以進行另外一次轉(zhuǎn)換。這個過程是分布式的
Action返回值不是一個RDD。它要么是一個Scala的普通集合,要么是一個值,要么是空,最終或返回到Driver程序,或把RDD寫入到文件系統(tǒng)中
關(guān)于這兩個動作,在Spark開發(fā)指南中會有就進一步的詳細介紹,它們是基于Spark開發(fā)的核心。
《Hadoop與Spark架構(gòu)應(yīng)用實戰(zhàn)》課程是中培偉業(yè)的精品課程之一,歡迎廣大想?yún)⒓釉撆嘤?xùn)的行業(yè)人才能抓緊時間報名,中培偉業(yè)將為您獻上受益終身的一課!