日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Hadoop中Block和Split区别

發布時間:2025/3/21 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hadoop中Block和Split区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

兩者是從不同的角度來定義的:

HDFS以固定大小的block為基本單位存儲數據(分布式文件系統,實際存儲角度,物理存儲單位);

MapReduce以split作為處理單位(編程模型角度,邏輯單位);

Block塊

第一部分就是數據的劃分(即把File劃分成Block),這個是物理上真真實實的進行了劃分,數據文件上傳到HDFS里的時候,需要劃分成一塊一塊,每塊的大小由hadoop-default.xml里配置選項進行劃分。

這個就是默認的每個塊64MB:

<name>dfs.block.size</name>

數據劃分的時候有冗余,個數是由:

<name>dfs.replication</name>

Split分片

在hadoop中第二種劃分是由InputFormat這個接口來定義的,其中有個getSplits方法。在Hadoop0.1中,split劃分是在JobTracker端完成的,發生在JobInitThread對JobInProgress調用inittasks()的時候;而在0.18.3中是由JobClient完成的,JobClient劃分好后,把split.file寫入hdfs里,到時候jobtracker端只需要讀這個文件,就知道Split是怎么劃分的。

幾個簡單的結論:

1. 一個split不會包含零點幾或者幾點幾個Block,一定是包含大于等于1個整數個Block;

2. 一個split不會包含兩個File的Block,不會跨越File邊界;

3. split和Block的關系是一對多的關系;

4. map tasks的個數是由splits的長度決定的;

?

總結

以上是生活随笔為你收集整理的Hadoop中Block和Split区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。