Cascading:創(chuàng)建復(fù)雜和容錯數(shù)據(jù)處理工作流
架構(gòu)
Cascading 是一個架構(gòu)在Hadoop上的API,用來創(chuàng)建復(fù)雜和容錯數(shù)據(jù)處理工作流。它抽象了集群拓?fù)浣Y(jié)構(gòu)和配置來快速開發(fā)復(fù)雜分布式的應(yīng)用,而不用考慮背后的 MapReduce。Cascading目前依賴于Hadoop提供存儲和執(zhí)行架構(gòu),但是Cascading API為開發(fā)者隔離了Hadoop的技術(shù)細(xì)節(jié),提供了不需要改變初始流程工作流定義就可以在不同的計算框架內(nèi)運行的能力
Cascading目前依賴于Hadoop提供存儲和執(zhí)行架構(gòu),但是Cascading API為開發(fā)者隔離了Hadoop的技術(shù)細(xì)節(jié),提供了不需要改變初始流程工作流定義就可以在不同的計算框架內(nèi)運行的能力。
Cascading使用了“pipe and filters”(管道和過濾)來定義數(shù)據(jù)處理進(jìn)程。它支持分隔,合并,分組和排序操作,這是開發(fā)者唯一需要考慮的操作。Nathan Marz提供了一個范例:Goodbye MapReduce, Hello Cascading. Cascading對于使用Hadoop開發(fā)復(fù)雜應(yīng)用是一個不錯的解決方案。
發(fā)展
Hadoop是Apache開源組織的一個分布式計算開源框架,在很多大型網(wǎng)站上都已經(jīng)得到了應(yīng)用,如亞馬遜、Facebook和Yahoo等等。它主要由MapReduce的算法執(zhí)行和一個分布式的文件系統(tǒng)HDFS等兩部分組成。
HDFS:即Hadoop Distributed File System (Hadoop分布式文件系統(tǒng))
HDFS具有高容錯性,并且可以被部署在低價的硬件設(shè)備之上。HDFS很適合那些有大數(shù)據(jù)集的應(yīng)用,并且提供了對數(shù)據(jù)讀寫的高吞吐率。
延伸
MapReduce:MapReduce 是Google 的一項重要技術(shù),它是一個編程模型,用以進(jìn)行大數(shù)據(jù)量的計算。對于大數(shù)據(jù)量的計算,通常采用的處理手法就是并行計算。至少現(xiàn)階段而言,對許多開發(fā)人員來 說,并行計算還是一個比較遙遠(yuǎn)的東西。MapReduce就是一種簡化并行計算的編程模型,它讓那些沒有多少并行計算經(jīng)驗的開發(fā)人員也可以開發(fā)并行應(yīng)用。