<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ![](https://box.kancloud.cn/2015-07-23_55b03fb502b74.png) 1.客戶端將文件寫入本地磁盤的N#x4E34;時文件中 2.當臨時文件大小達到一個block大小時,HDFS client通知NameNode,申請寫入文件 3.NameNode在HDFS的文件系統中創建一個文件,并把該block id和要寫入的DataNode的列表返回給客戶端 4.客戶端收到這些信息后,將臨時文件寫入DataNodes - 4.1 客戶端將文件內容寫入第一個DataNode(一般以4kb為單位進行傳輸) - 4.2 第一個DataNode接收后,將數據寫入本地磁盤,同時也傳輸給第二個DataNode - 4.3 依此類推到最后一個DataNode,數據在DataNode之間是通過pipeline的方式進行復制的 - 4.4 后面的DataNode接收完數據后,都會發送一個確認給前一個DataNode,最終第一個DataNode返回確認給客戶端 - 4.5 當客戶端接收到整個block的確認后,會向NameNode發送一個最終的確認信息 - 4.6 如果寫入某個DataNode失敗,數據會繼續寫入其他的DataNode。然后NameNode會找另外一個好的DataNode繼續復制,以保證冗余性 - 4.7 每個block都會有一個校驗碼,并存放到獨立的文件中,以便讀的時候來驗證其完整性 5.文件寫完后(客戶端關閉),NameNode提交文件(這時文件才可見,?#x5982;果提交前,NameNode垮掉,那文件也就丟失了。fsync:只保證數據的信息寫到NameNode上,但并不保證數據已經被寫到DataNode中) **Rack aware(機架感知)** 通過配置文件指定機架名和DNS的對應關系 假設復制參數是3,在寫入文件時,會在本地的機架保存一份數據,然后在另外一個機架內保存兩份數據(同機架內的傳輸速度快,從而提高性能) 整個HDFS的集群,最好是負載平衡的,這樣才能盡量利用集群的優勢
                  <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>

                              哎呀哎呀视频在线观看