map端:
io.sort.mb 型別int預設100=》map的記憶體緩衝區
io.sort.record.precent 型別:float預設0.05=》io.sort.mb的快取區記錄索引kvindices和快取區記錄索引排序工作陣列kvoffsets占用空間比例
io.sort.spill.percent 型別:float預設0.8=》io.sort.mb的緩衝資料邊界闕值
io.sort.factor 型別int預設10=》每次合併檔案數
min.mum.spills.for.combine型別int預設3=》執行combiner需要的最少溢位檔案數
mapred.compress.map.output型別boolean預設false=》是否壓縮map輸出
mapred.map.output.compression.coderc型別classname預設defaultcodec=》map輸出的壓縮編碼器
tasktracker.http.threads型別int預設40=》每個tasktracker的工作執行緒數,將map輸出到reduce#只能全域性設定
reduce端:
mapred.reduce.parallel.copies型別int預設5=》複製map輸出資料的執行緒數
mapred.reduce.copy.backoff型別int預設300=》獲取乙個map資料的最大時間
io.sort.factor
mapred.job.shuffer.input.buffer.percent型別float預設0.70=>shuffer的複製階段,分配給map輸出的緩衝區的比例
mapred.job.shuffer.merge.percent型別float預設0.66=》mapred.job.shuffer.input.buffer.percent的闕值
mapred.inmem.merge.threshold型別int預設1000=》mapred.job.shuffer.input.buffer.percent的檔案數闕值
mapred.job.reduce.input.buffer.percent型別float預設0.0=》reduce過程中在記憶體中儲存map輸出的比例
Hadoop map調優引數
引數 io.sort.mb default 100 當map task開始運算,並產生中間資料時,其產生的中間結果並非直接就簡單的寫入磁碟。而是會利用到了記憶體buffer來進行已經產生的部分結果的快取,並在記憶體buffer中進行一些預排序來優化整個map的效能。每乙個map都會對應存在乙個記憶體...
Hadoop如何計算map數和reduce數
hadoop在執行乙個mapreduce job之前,需要估算這個job的maptask數和reducetask數。首先分析一下job的maptask數,當乙個job提交時,jobclient首先分析job被拆分的split數量,然後吧job.split檔案放置在hdfs中,乙個job的maptas...
Python高階函式之map與reduce
python為我們提供了多種高階函式,map fun,x 的作用是將fun函式依次作用到x這種iterable型別上,並且返回乙個iterator型別。那麼什麼是iterable和iterator呢?簡單的說,反是可用於for迴圈的物件 諸如list,tuple,dict,str 被稱為iterab...