W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
在高層中,每個 Spark 應(yīng)用程序都由一個驅(qū)動程序(driver programe)構(gòu)成,驅(qū)動程序在集群上運(yùn)行用戶的 ?main
?函數(shù)來執(zhí)行各種各樣的并行操作(parallel operations)。Spark 的主要抽象是提供一個彈性分布式數(shù)據(jù)集(RDD),RDD 是指能橫跨集群所有節(jié)點(diǎn)進(jìn)行并行計(jì)算的分區(qū)元素集合。RDDs 從 Hadoop 的文件系統(tǒng)中的一個文件中創(chuàng)建而來(或其他 Hadoop 支持的文件系統(tǒng)),或者從一個已有的
Scala 集合轉(zhuǎn)換得到。用戶可以要求 Spark 將 RDD 持久化(persist)到內(nèi)存中,來讓它在并行計(jì)算中高效地重用。最后,RDDs 能在節(jié)點(diǎn)失敗中自動地恢復(fù)過來。
Spark 的第二個抽象是共享變量(shared variables),共享變量能被運(yùn)行在并行計(jì)算中。默認(rèn)情況下,當(dāng) Spark 運(yùn)行一個并行函數(shù)時,這個并行函數(shù)會作為一個任務(wù)集在不同的節(jié)點(diǎn)上運(yùn)行,它會把函數(shù)里使用的每個變量都復(fù)制搬運(yùn)到每個任務(wù)中。有時,一個變量需要被共享到交叉任務(wù)中或驅(qū)動程序和任務(wù)之間。Spark 支持 2 種類型的共享變量:廣播變量(broadcast variables),用來在所有節(jié)點(diǎn)的內(nèi)存中緩存一個值;累加器(accumulators),僅僅只能執(zhí)行“添加(added)”操作,例如:記數(shù)器(counters)和求和(sums)。
這個指南會在 Spark 支持的所有語言中演示它的每一個特征。非常簡單地開始一個 Spark 交互式 shell - ?bin/spark-shell
?開始一個 Scala shell,或 ?bin/pyspark
? 開始一個 Python shell。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: