<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] # 排序 排序是MapReduce框架中最重要的操作之一.MapTask和Reduce Task均會對數據(按照key)進行排序.該操作屬于hadoop的默認行為.任何應用程序的數據都會被排序,不管邏輯上是否需要. 對應Map task,它會將處理的結果暫時放到一個緩沖區,當緩沖區使用率達到一定閾值后,再對緩沖區的數據進行一次排序,并將這些有序數據寫到磁盤上,而當數據處理完畢后,它會對磁盤上所有文件進行一次合并,以將這些文件合并成一個大的有序文件 對于Reduce Task,他從每個Map Task上遠程拷貝相應的數據文件,如果文件大小超過一定閾值,則放到磁盤上,否則放到內存中.如果磁盤上文件數目達到一定閾值,則進行一次合并以生成一個更大文件.如果內存中文件大小或數目超過一定閾值,則進行一次合并將數據寫到磁盤上.當所有數據拷貝完畢后,Reduce Task統一對內存和磁盤上的所有數據進行一次合并 ## 排序的分類 **部分排序** MapReduce根據輸入記錄的鍵對數據集排序.保證輸出的每個文件內部排序 **全排序** 如何用hadoop產生一個全局排序的文件?最簡單的方法是使用一個分區.但該方法在處理大型文件時效率極低,因為一臺機器必須處理所有輸出文件,從而完全喪失了MapReduce所提供的并行架構 替代方案 首先創建一系列排好序的文件.其次,串聯這些文件.最后生成一個全局排序的文件. 主要思路是使用一個分區來描述輸出的全局排序. 例如:可以為上述文件創建3個分區,在第一個分區中,記錄的單詞首字母a-g,第二分區記錄單詞首字母h-n,第三分區記錄單詞首字母o-z **輔助排序(GroupingComparator分組)** MapReduce框架在記錄到達reduce之前按鍵對記錄排序,但鍵所對應的值并沒有排序,甚至在不同的執行輪次中.這些值的排序也不固定,因為它們來自不同的map任務且這些map任務而且這些map任務在不同輪次中完成時間各不相同 一般來說,大多數MapReduce程序會避免讓reduce函數依賴于值的排序.但是,有時也需要通過特定的方法對鍵進行排序和分組等以實現對值的排序 **二次排序** 在自定義排序過程中,如果compareTo中的判斷條件為兩個即為二次排序
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看