小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

分布式內(nèi)存文件系統(tǒng)Tachyon

 LZS2851 2016-03-19

UCBerkeley研發(fā)的Tachyon(超光子['t?ki???n],名字要不要這么太囂張啊:)是一款為各種集群并發(fā)計(jì)算框架提供內(nèi)存數(shù)據(jù)管理的平臺(tái),也可以說是一種內(nèi)存式的文件系統(tǒng)吧。如下圖,它就處于這樣一個(gè)層次:在現(xiàn)有存儲(chǔ)系統(tǒng)如HDFS之上,在SparkMapReduce,Impala等各種計(jì)算框架之下。


為什么要有這么一個(gè)框架呢?MapReduce就不說了,但像Spark這種內(nèi)存計(jì)算框架,為什么還需要再加一層內(nèi)存管理的文件系統(tǒng)?因?yàn)橄?span lang="EN-US">Spark這種,框架其實(shí)只提供了強(qiáng)大的內(nèi)存計(jì)算能力,但未提供存儲(chǔ)能力。那么默認(rèn)讓Spark自己直接在內(nèi)存管理數(shù)據(jù)還不夠嗎?下面就看一下現(xiàn)有的幾個(gè)問題。

問題1:不同任務(wù)或框架間交換數(shù)據(jù)慢

不同任務(wù)或不同計(jì)算框架間的數(shù)據(jù)共享情況在所難免,例如Spark的分屬不同Stage的兩個(gè)任務(wù),或SparkMapReduce框架的數(shù)據(jù)交互。在這種情況下,一般就需要通過磁盤來完成數(shù)據(jù)交換,而這通常是效率很低的。


而引入Tachyon中間層后,數(shù)據(jù)交換實(shí)際上也是在內(nèi)存中進(jìn)行的。


問題2:執(zhí)行引擎和存儲(chǔ)引擎是同一進(jìn)程

這就是前面提到過的,讓Spark自己來管理內(nèi)存會(huì)出現(xiàn)的問題。默認(rèn)情況下,Spark的任務(wù)執(zhí)行和數(shù)據(jù)本身都在一個(gè)進(jìn)程內(nèi)。當(dāng)執(zhí)行出現(xiàn)問題時(shí)就會(huì)導(dǎo)致整個(gè)進(jìn)程崩潰,并丟失進(jìn)程內(nèi)的所有數(shù)據(jù)。


Tachyon這一層的引入,就相當(dāng)于將存儲(chǔ)引擎從Spark中抽離出來,從而每個(gè)任務(wù)進(jìn)程只負(fù)責(zé)執(zhí)行。進(jìn)程的崩潰不會(huì)丟失數(shù)據(jù),因?yàn)閿?shù)據(jù)都在Tachyon里面了。


問題3:數(shù)據(jù)被重復(fù)加載和GC

不同的Spark任務(wù)可能會(huì)訪問同樣的數(shù)據(jù),例如兩個(gè)任務(wù)都要訪問HDFS中的某些Block,像下圖中的Block13。這樣就沒辦法了,每個(gè)任務(wù)都要自己去磁盤加載數(shù)據(jù)到內(nèi)存中。而Tachyon不僅只保存一份數(shù)據(jù),而且它還使用堆外內(nèi)存,避免GC開銷


Tachyon如何容錯(cuò)?

前面我們已經(jīng)看到了Tachyon如何進(jìn)一步提升Spark的性能的,包括避免數(shù)據(jù)落地到磁盤,共享數(shù)據(jù)以及堆外內(nèi)存避免GC等。但Tachyon本身又是如何容錯(cuò)的呢?不落地DFS中數(shù)據(jù)不是照樣會(huì)丟失嗎?而且Tachyon只在內(nèi)存中保存一份數(shù)據(jù)拷貝。有一種形象的說法是:TachyonlineageSpark中下移到了自己。既然手握lineage,就有辦法了。跟Spark類似,它利用lineage信息(lineage-based recovery)和異步記錄的checkpoint來恢復(fù)數(shù)據(jù) (Spark類似,都是基于RDD不可變性以及粗粒度操作才能完成的,不同點(diǎn)是Tachyon管理的可以是跨框架的lineage而不限于RDDSpark的轉(zhuǎn)換?),所以Tachyon放心大膽地積極(aggressively)使用內(nèi)存。


 

其次,Tachyon本身的master通過ZooKeeper集群管理,down機(jī)時(shí)會(huì)自動(dòng)選舉出新的leader,并且worker會(huì)自動(dòng)連接到新的leader上。


 

現(xiàn)在Tachyon版本還只是0.5,資料也比較少。關(guān)于其異步checkpointing的圖算法也找到什么資料,還沒有搞懂。但看起來還挺有意思的,持續(xù)關(guān)注吧。

參考資料

1 Tachyon-A Reliable Memory Centric Storage for Big Data Analytics

2 Tachyon-Reliable File Sharing at Memory-Speed Across Cluster Frameworks

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多