乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      云計(jì)算背后的秘密(1)-MapReduce - 51CTO.COM

       墨香居BOOK 2011-05-24

      【引言】之前我寫(xiě)過(guò)一些關(guān)于云計(jì)算誤區(qū)的文章,雖然這些文章并不是非常技術(shù),但是也非常希望它們能幫助大家理解云計(jì)算這一新浪潮。最近,我將云計(jì)算背后的一些核心技術(shù)介紹給讀者,由于云計(jì)算的核心技術(shù)是我最熟悉和最擅長(zhǎng),而且宣傳這些技術(shù)也是我寫(xiě)《剖析云計(jì)算》一書(shū)和建立PeopleYun.com站點(diǎn)的初衷,這就是“云計(jì)算背后的秘密”這個(gè)系列的由來(lái)。

      在這個(gè)新系列中將介紹多種云計(jì)算所涉及到的核心技術(shù),包括分布式處理、分布式數(shù)據(jù)庫(kù)、分布式鎖、分布式文件系統(tǒng)、多租戶架構(gòu)和虛擬化等,而且將會(huì)介紹這些技術(shù)相關(guān)的產(chǎn)品和用例,以幫助大家進(jìn)一步理解這些技術(shù)。預(yù)計(jì)每周會(huì)更新一篇,總長(zhǎng)度會(huì)在10篇左右,希望大家能喜歡,而本文則是這個(gè)系列的第一篇。


      在Google數(shù)據(jù)中心會(huì)有大規(guī)模數(shù)據(jù)需要處理,比如被網(wǎng)絡(luò)爬蟲(chóng)(Web Crawler)抓取的大量網(wǎng)頁(yè)等。由于這些數(shù)據(jù)很多都是PB級(jí)別,導(dǎo)致處理工作不得不盡可能的并行化,而Google為了解決這個(gè)問(wèn)題,引入了MapReduce這個(gè)分布式處理框架。

      技術(shù)概覽

      MapReduce本身源自于函數(shù)式語(yǔ)言,主要通過(guò)"Map(映射)"和"Reduce(化簡(jiǎn))"這兩個(gè)步驟來(lái)并行處理大規(guī)模的數(shù)據(jù)集。首先,Map會(huì)先對(duì)由很多獨(dú)立元素組成的邏輯列表中的每一個(gè)元素進(jìn)行指定的操作,且原始列表不會(huì)被更改,會(huì)創(chuàng)建多個(gè)新的列表來(lái)保存Map的處理結(jié)果。也就意味著,Map操作是高度并行的。當(dāng)Map工作完成之后,系統(tǒng)會(huì)接著對(duì)新生成的多個(gè)列表進(jìn)行清理(Shuffle)和排序,之后,會(huì)這些新創(chuàng)建的列表進(jìn)行Reduce操作,也就是對(duì)一個(gè)列表中的元素根據(jù)Key值進(jìn)行適當(dāng)?shù)暮喜?。下圖為MapReduce的運(yùn)行機(jī)制:
       

       

      圖1. MapReduce的運(yùn)行機(jī)制

      接下來(lái),將根據(jù)上圖來(lái)舉一個(gè)MapReduce的例子來(lái)幫助大家理解:比如,通過(guò)搜索引擎的爬蟲(chóng)(Spider)將海量的Web頁(yè)面從互聯(lián)網(wǎng)中抓取到本地的分布式文件系統(tǒng)中,然后索引系統(tǒng)將會(huì)對(duì)存儲(chǔ)在這個(gè)分布式文件系統(tǒng)中海量的Web頁(yè)面進(jìn)行平行的Map處理,生成多個(gè)Key為URL,Value為html頁(yè)面的鍵值對(duì)(Key-Value Map),接著,系統(tǒng)會(huì)對(duì)這些剛生成的鍵值對(duì)進(jìn)行Shuffle(清理),之后,系統(tǒng)會(huì)通過(guò)Reduce操作來(lái)根據(jù)相同的key值(也就是URL)合并這些鍵值對(duì)。

      優(yōu)劣點(diǎn)

      談到MapReduce的優(yōu)點(diǎn),主要有兩個(gè)方面:其一,通過(guò)MapReduce這個(gè)分布式處理框架,不僅能用于處理大規(guī)模數(shù)據(jù),而且能將很多繁瑣的細(xì)節(jié)隱藏起來(lái),比如,自動(dòng)并行化、負(fù)載均衡和災(zāi)備管理等,這樣將極大地簡(jiǎn)化程序員的開(kāi)發(fā)工作;其二,MapReduce的伸縮性非常好,也就是說(shuō),每增加一臺(tái)服務(wù)器,其就能將差不多的計(jì)算能力接入到集群中,而過(guò)去的大多數(shù)分布式處理框架,在伸縮性方面都與MapReduce相差甚遠(yuǎn)。而 MapReduce最大的不足則在于,其不適應(yīng)實(shí)時(shí)應(yīng)用的需求,所以在Google最新的實(shí)時(shí)性很強(qiáng)的Caffeine搜索引擎中,MapReduce的主導(dǎo)地位已經(jīng)被可用于實(shí)時(shí)處理Percolator系統(tǒng)所代替,其具體細(xì)節(jié),將在本系列接下來(lái)的文章中進(jìn)行介紹。

      相關(guān)產(chǎn)品

      除了Google內(nèi)部使用的MapReduce之外,還有,由Lucene之父Doug Cutting領(lǐng)銜的Yahoo團(tuán)隊(duì)開(kāi)發(fā),Apache管理的MapReduce的開(kāi)源版本Hadoop,而且一經(jīng)推出,就受到業(yè)界極大的歡迎,并且衍生出HDFS、ZooKeeper、Hbase、Hive和Pig等系列產(chǎn)品。

      實(shí)際用例

      在實(shí)際的工作環(huán)境中,MapReduce這套分布式處理框架常用于分布式grep、分布式排序、Web訪問(wèn)日志分析、反向索引構(gòu)建、文檔聚類、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、基于統(tǒng)計(jì)的機(jī)器翻譯和生成整個(gè)搜索引擎的索引等大規(guī)模數(shù)據(jù)處理工作,并且已經(jīng)在很多國(guó)內(nèi)知名的互聯(lián)網(wǎng)公司內(nèi)部得到極大地應(yīng)用,比如百度和淘寶。

      最后,如果大家對(duì)MapReduce感興趣的話,可以到Hadoop的官方站點(diǎn)上下載并試用。

      【編輯推薦】

      1. 從Qualcomm公司實(shí)施云計(jì)算說(shuō)起
      2. 咖啡館里的云 打印機(jī)的新模樣
      3. 了解云的多租戶是云采用的關(guān)鍵一步

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(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)論公約

        類似文章 更多