爲什麼io.sort.record.percent
屬性已從Hadoop 1.x中移除?爲什麼io.sort.record.percent被刪除?
-3
A
回答
3
它的存在,在2.x的,但唯一不同的是,它的名稱已更改:
mapreduce.task.io.sort.mb:緩衝存儲器的總金額,同時將文件分類使用,以兆字節爲單位。默認情況下,給每個合併流1MB,這應該儘量減少搜索。
默認值仍爲100 mb。請在this link找到更多信息。
1
io.sort.record.percent是適用於io.sort.mb(舊名)的百分比。
映射輸出數據被放置在內存緩衝區中。當緩衝區填滿時,框架對它進行排序然後溢出到磁盤。一個單獨的線程將排序後的磁盤文件合併到一個較大的排序文件中。緩衝區由兩部分組成:一部分具有連續的原始輸出數據和一個元數據部分,用於將每個記錄的指針保存到原始數據部分。在MR1中,這些部分的大小是固定的,由io.sort.record.percent控制,其說明io.sort.mb空間用於元數據部分的百分比。這意味着,如果沒有對此參數進行適當調整,如果作業有很多小記錄,元數據部分可能比原始數據部分快得多。緩衝區在完全滿之前會溢出到磁盤中。這會影響性能。
MAPREDUCE-64通過允許兩個部分共享相同的空間並且大小不同,解決了MR2中的這個問題。因此不再需要io.sort.record.percent來最小化MR2中的溢出數量。這就是爲什麼這個屬性已被刪除
相關問題
- 1. 爲什麼StringBuilder被刪除?
- 2. 什麼被刪除?
- 3. 爲什麼我的cookie已被刪除
- 4. 爲什麼我的日誌被刪除?
- 5. 爲什麼我的cookies不被刪除?
- 6. 爲什麼條目不被刪除?
- 7. PHP爲什麼$符號被刪除
- 8. 爲什麼映射對會被刪除?
- 9. 爲什麼NpgsqlException.ConstraintName屬性被刪除?
- 10. 爲什麼cookie不被刪除?
- 11. 日誌什麼被刪除
- 12. 爲什麼org.apache.commons.math3。*被刪除,可以選擇什麼
- 13. 爲什麼當對象被刪除時NSFetchedResultsChangeDelete不會被觸發?
- 14. 爲什麼T4輸出被創建然後被刪除?
- 15. 爲什麼要刪除這麼多文件?警告:112681文件將被刪除
- 16. 什麼時候getTempDirectory文件被刪除?
- 17. 什麼時候流對象被刪除?
- 18. IIS刪除System.Web.Extensions.dll,爲什麼?
- 19. 爲什麼STUFF刪除XML?
- 20. 爲什麼不刪除Cookie?
- 21. 什麼是已刪除的函數,爲什麼只有我傳遞文件的函數被視爲已刪除?
- 22. 爲什麼在這種情況下,Treenode I嘗試刪除不會被刪除?
- 23. 爲什麼從我的eclipse R文件被刪除?
- 24. 爲什麼$ form_state ['values']在drupal_process_form()中被刪除?
- 25. 爲什麼這個MSDN示例中的指針未被刪除?
- 26. 爲什麼函數調用後我的鏈表被刪除?
- 27. 爲什麼cookies沒有被刪除,用戶仍然登錄
- 28. 爲什麼數據庫在重新安裝apk後被刪除?
- 29. 爲什麼動態生成的控制組不會被刪除?
- 30. 爲什麼BCD指令在AMD64中被刪除?
這是不正確的。你提供的鏈接是r0.23。 'mapreduce.task.io.sort.mb'的「舊」等價物是'io.sort.mb'請參閱:[Hadoop Deprecated Properties](http://hadoop.apache.org/docs/current/hadoop-project -dist/Hadoop的公共/ DeprecatedProperties.html)。至於有問題的('io.sort.record.mb'),它在新的Hadoop中沒有等價物,但仍可以使用相同的名稱設置,並且非常有效(進行了深入調查:似乎通過它的值來限制'mapreduce.task.io.sort.mb'),所以如果你指定了100MB,而另一個是0.17,它基本上使用83MB進行排序。 – msciwoj 2015-01-23 11:28:49