hadoop 調優1
Hadoop調優
mapred.tasktracker.map.tasks.maximum
官方解釋:The maximum number of map tasks that will be run simultaneously by a task tracker.
我的理解:一個tasktracker最多可以同時執行的map任務數量
預設值:2
優化值:mapred.tasktracker.map.tasks.maximum = cpu數量
伺服器CPU總核數 = more /proc/cpuinfo | grep 'processor' | wc -l
每個CPU的核數 = more /proc/cpuinfo | grep 'cpu cores'
mapred.map.tasks
官方的解釋:The default number of map tasks per job
我的解釋:一個Job會使用task tracker的map任務槽數量,這個值 ≤ mapred.tasktracker.map.tasks.maximum
預設值:2
優化值:
- CPU數量 (我們目前的實踐值)
- (CPU數量 > 2) ? (CPU數量 * 0.75) : 1 (mapr的官方建議)
注意:map任務的數量是由input spilit決定的,和上面兩個引數無關
mapred.tasktracker.reduce.tasks.maximum
官方解釋:The maximum number of reduce tasks that will be run simultaneously by a task tracker.
我的理解:一個task tracker最多可以同時執行的reduce任務數量
預設值:2
優化值: (CPU數量 > 2) ? (CPU數量 * 0.50): 1 (mapr的官方建議)
mapred.reduce.tasks
官方解釋:The default number of reduce tasks per job. Typically set to 99% of the cluster's reduce capacity, so that if a node fails the reduces can still be executed in a single wave.
我的理解:一個Job會使用task tracker的reduce任務槽數量
預設值:1
優化值:
- 0.95 * mapred.tasktracker.tasks.maximum
理由:啟用95%的reduce任務槽執行task, recude task執行一輪就可以完成。剩餘5%的任務槽永遠失敗任務,重新執行
- 1.75 * mapred.tasktracker.tasks.maximum
理由:因為reduce task數量超過reduce槽數,所以需要兩輪才能完成所有reduce task。具體快的原理我沒有完全理解,上原文:
hadoop官方wiki: 寫道
環境變數
disable ipv6配置,修改bin/hadoop,新增下行:
Hive調優:
mapred.reduce.tasks
to a prime close to the number of available hosts. Ignored when
mapred.job.tracker is "local". Hadoop set this to 1 by default, whereas hive uses -1 as its default value.
By setting this property to -1, Hive will automatically figure out what should be the number of reducers.
1. hive.exec.reducers.bytes.per.reducer(預設為1GB)
2. hive.exec.reducers.max(預設為999)
mapred.reduce.tasks = min ( 引數2,總輸入資料量/引數1 )
預設值:-1
優化值:顯式設定為Hadoop配置中mapred.reduce.tasks值,參考上文。
相關文章
- hadoop 配置項的調優(R1)Hadoop
- 關於Hadoop調優Hadoop
- Hadoop引數調優Hadoop
- Hadoop-調優剖析Hadoop
- hadoop之 引數調優Hadoop
- Hadoop作業調優引數Hadoop
- sql調優1SQL
- 1,Spark引數調優Spark
- Mysql 效能調優 一 1MySql
- Mysql 效能調優 二 1MySql
- 史上最深入解析hadoop調優,沒有之一!Hadoop
- 分析從管理員角度對Hadoop進行調優Hadoop
- FreeBSD下安裝配置Hadoop叢集(效能調優)Hadoop
- Hadoop2.7實戰v1.0之JVM引數調優HadoopJVM
- Elasticsearch搜尋調優權威指南 (1/3)Elasticsearch
- JVM調優總結-典型配置舉例1JVM
- Spark 效能調優--資源調優Spark
- JVM調優總結-調優方法JVM
- Spark 效能調優--Shuffle調優 SortShuffleManagerSpark
- Hadoop2.7實戰v1.0之Linux引數調優HadoopLinux
- 【Spark篇】---Spark調優之程式碼調優,資料本地化調優,記憶體調優,SparkShuffle調優,Executor的堆外記憶體調優Spark記憶體
- Openssh-7.9p1升級+系統調優
- (1)Linux效能調優之Linux程式管理Linux
- MySQL調優篇 | 邏輯架構解讀(1)MySql架構
- JVM調優總結(七)-典型配置舉例1JVM
- JVM調優工具之VisualVM介紹1JVMLVM
- 調優 | Apache Hudi應用調優指南Apache
- JVM調優總結(十)-調優方法JVM
- MySQL調優篇 | SQL調優實戰(5)MySql
- 效能調優學習之硬體調優
- JVM調優總結-分代垃圾回收詳述1JVM
- SparkSQL 調優SparkSQL
- php調優PHP
- 模型調優模型
- JVM調優JVM
- MySQL調優MySql
- SQL調優SQL
- Hadoop企業開發場景案例,虛擬機器伺服器調優Hadoop虛擬機伺服器