Hadoop計數器大小有限制。默認爲120。我嘗試使用配置「mapreduce.job.counters.limit」來改變它,但它不起作用。我見過源代碼。這就像在類「org.apache.hadoop.mapred.Counters」中的JobConf實例是私有的。 以前有人看過嗎?你的解決方案是什麼? THX :)hadoop中有120多個計數器
回答
您可以覆蓋mapred-site.xml
該財產在你的JT,TT,客戶端節點,但要確保這將是一個全系統的修改:
<configuration>
...
<property>
<name>mapreduce.job.counters.limit</name>
<value>500</value>
</property>
...
</configuration>
然後重新啓動映射精簡您的服務簇。
我試過你的解決方案。有用。謝謝 :)。我只是想知道是否有辦法動態地解決這個問題。 –
單一工作沒有辦法做到這一點嗎? – javamonkey79
我們可以將限制定製爲僅用於特定作業的命令行選項,而不是在mapred-site.xml
中進行更改。
-Dmapreduce.job.counters.limit=x
-Dmapreduce.job.counters.groups.max=y
注:x
和y
是基於您的環境/需求自定義值。
在Hadoop中2,此配置參數被稱爲
mapreduce.job.counters.max
在命令行或在您的配置對象設置是不夠的,雖然。您需要調用靜態方法
org.apache.hadoop.mapreduce.counters.Limits.init()
在您的映射或減速的設置()方法來獲得生效的設置。
使用2.6.0和2.7.1進行測試。
對位是通過配置文件設置,而低於第生效
mapreduce.job.counters.max=1000
mapreduce.job.counters.groups.max=500
mapreduce.job.counters.group.name.max=1000
mapreduce.job.counters.counter.name.max=500
萬一有人加入這個其他面臨我們做了同樣的問題:從MRJob增加計數器。
爲了提高計數器的數量,增加emr_configurations
您mrjob.conf
(或者將它傳遞給MRJob作爲一個配置參數):
runners:
emr:
emr_configurations:
- Classification: mapred-site
Properties:
mapreduce.job.counters.max: 1024
mapreduce.job.counters.counter.name.max: 256
mapreduce.job.counters.groups.max: 256
mapreduce.job.counters.group.name.max: 256
- 1. 使用Hadoop計數器 - 多個作業
- 2. Hadoop計數器文檔?
- 3. Hadoop計數器可視化
- 4. 有多個數字的計數器
- 5. 如何在Hadoop中獲取計數器
- 6. 具有多個計數器的C#遠程性能計數器
- 7. 有多個計數器的Linq查詢
- 8. gridView從120秒倒計時
- 9. 每個Hadoop服務器應該有多少個HBase服務器?
- 10. 插入120列120索引的數組
- 11. Python:具有多個參數的函數中的計數器
- 12. 在Hadoop Hive中計數
- 13. Hadoop中的計數命令
- 14. 一個查詢中有多個計數
- 15. 多個計數器循環
- 16. Hadoop色調:計數器結果灰顯
- 17. 瞭解Hadoop文件系統計數器
- 18. 有多個連接的多個計數
- 19. Smarty模板中的多個計數器
- 20. 在Angularjs中管理多個計數器
- 21. Hadoop。有統計數據的Wordcount
- 22. 如何在單個事務中更新計數器或多個計數器?
- 23. 點擊計數器在一個請求中計數多次(PHP)
- 24. hadoop中每個映射器的單個或多個文件?
- 25. 多個輸出HADOOP
- 26. 收集單個hadoop作業的計數器和度量
- 27. 如果在多個陣列中有多個條件,則計數
- 28. 由GridView中的多個(> 120)getView調用導致的OutOfMemoryError
- 29. BlockingQueue的設計有多個顯示器
- 30. Hadoop的字計數例
您運行的是什麼版本的Hadoop? – HypnoticSheep
這是0.20。你之前看到過嗎? –
我還沒有遇到同樣的問題(主要是因爲我沒有使用計數器),但我使用1.0.3和JobConf的東西是不同的。試試下面的Lorand解決方案,看起來好像會起作用。 – HypnoticSheep