<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    放翁(文初)的一畝三分地

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      210 隨筆 :: 1 文章 :: 320 評論 :: 0 Trackbacks

        中午左右收到一個看我blog的朋友的郵件,最近他在研究mapreduce,然后想用hadoop來做一些工作,不過遇到了一些問題,我這邊也貼一下他的幾個問題,同時覺得自己把自己的一些看法分享一下,當然只是自己的一些想法,也許對新學習的同學有幫助。

       問題:

    1. 從Map(K,V)的方式來看,難道mapreduce只能做統計?
    2. 目前我想除了日志分析之類的功能外,還想做一個全文檢索的功能,類似windows查詢一下,通過關鍵字查詢文件的位置即可(可能還要根據匹配度做排序),這個我很迷茫不知道怎么下手,痛苦ing
    3. 你的實踐是一個單機模式,如果用戶把一個1G的log已經上傳到hdfs了,此時分割工作已經完成,只需要從client那里得到文件基本信息和塊的location就可以了,那mapreduce怎么進行下去呢?

       我給回復的郵件內容:

       首先,MapReduce的思想和Hadoop的MapReduce的架構不是一個概念,說的具體一點也就是Hadoop的架構設計只是MapReduce的一個子集思想的實現。每個人都可以根據自己對MapReduce的理解去實現業務處理,簡單來說多線程處理就是MapReduce的一種最簡單的實現,復雜來說多機協調工作就是一種復雜的實現。

       MapReduce的思想里面最值得借鑒的:

       a.問題分而治之。(找到流程的關鍵路徑,優化可以并行處理的工作)

       b.計算靠近數據。(這也是hdfs存在的最重要的特點,計算的轉移往往要比數據轉移廉價,特別是對海量數據的處理)

       c.數據規?;S著并行處理成數量級遞減。

       剩下的內容就是各個框架對于非業務性需求的處理,例如容災,如何盡量少穿數據協調處理等等。

       針對他提出的三個問題:

        1. Hadoop的mapreduce從架構上來說最適合的就是統計分析計算。做其他方面的工作需要考慮是否適合,而不是為了技術而技術,先有需求再有技術選型。
        2.  對于你這個需求直接用搜索技術實現就可以了,不一定要硬套在mapreduce上。
        3. 對于海量數據是否一定要到hdsf上,或者就簡單得數據物理或者邏輯切割來直接處理,根據自己業務場景選擇。hdfs的特點就是對文件切割,容災,數據邏輯存儲和物理存儲無關性(便于擴容管理,同時也是計算靠近數據的技術保證)。

        是否使用MapReduce框架,HDFS存儲關鍵還是看你是否真的需要,當現有框架對自己來說并不合適的時候可以對小規模問題定制MapReduce的處理,最簡化就是你去多線程或者多進程處理問題,需求決定技術選型。

      

    posted on 2009-12-09 13:09 岑文初 閱讀(2590) 評論(1)  編輯  收藏

    評論

    # re: 寫在MapReduce問題的回復后[未登錄] 2009-12-09 13:55 wz
    以下是我自己的一點見解,

    MapReduce的思想是最重要的,基于這個思想會有很多的實現,大問題有大問題的實現,小問題有小問題的實現。前段時間碰到一個很小的問題,非常復雜的轉化(兩類object之間的轉化),如果用普通的方法N多循環,但是如果用MapReduce思想的話就會變的更容易 (不會用到多線程,也不會有大task的split,就是一個純粹的小實現而已)。

    對于一般的應用log肯定是不變的道理,可以非常好的應用(一般的系統多線程實現就應該夠了);除此之外,利用MapReduce的思想,如果一件事情可以分為4步來做,step by step是一種方案(COR),但是我們如果MapReduce,就可以在第一步做一個split,后面分為多個線程(大的應用可以多臺server)去做,最后Master節點(或者server)再去做一個規約(Reduce)就好了。

    基于以上思想,如果多臺server能共享內存,這樣的話,我們能夠在沒有過多copy(IO)的情況下去做一些business的事情。 JVM level cluster(terracotta是其中一種解決方案)的master/worker其實在某種意義上也算是一個MapReduce了。

    寫的比較亂,不好意思。  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲AV日韩AV一区二区三曲| 涩涩色中文综合亚洲| 亚洲一级毛片免费观看| 亚洲色大成网站www尤物| 亚洲日韩涩涩成人午夜私人影院| 成人性生交大片免费看好| 亚洲制服在线观看| 国产一区二区三区无码免费| 免费无码黄网站在线看| 亚洲精品国产高清在线观看| 亚洲伊人色欲综合网| 在线观看免费毛片| 免费无码又爽又刺激网站直播| 亚洲熟女综合色一区二区三区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 精品熟女少妇AV免费观看| eeuss免费天堂影院| 亚洲av永久无码精品天堂久久| 中文字幕无码精品亚洲资源网| 国产v精品成人免费视频400条| 9久久免费国产精品特黄| 2020年亚洲天天爽天天噜| 亚洲人成网亚洲欧洲无码久久| 无码日韩人妻av一区免费| 任你躁在线精品免费| 牛牛在线精品免费视频观看| 亚洲国产精品久久久久秋霞影院| 四虎影永久在线高清免费 | 国产成人亚洲综合色影视| 国产成人无码免费视频97 | 国内精品99亚洲免费高清| 亚洲精品无码专区久久| 亚洲尹人九九大色香蕉网站| 亚洲综合日韩久久成人AV| 国产成人精品免费直播| 女人18毛片水真多免费播放 | 国产亚洲婷婷香蕉久久精品| 国产免费av片在线无码免费看| 国产成人精品免费午夜app| 国产一级淫片a免费播放口| 中美日韩在线网免费毛片视频|