2013-11-26 67 views
2

嗨即時通訊使用Hadoop mapreduce和即時通訊使用多輸出。下面是我的代碼在MultipleOutputs - 避免我的密鑰被寫入文件

mos = new MultipleOutputs(context); 
mos.write(key, value, propertyName.trim()); 

但它生成後綴爲-m-0000我怎樣才能消除它的多個文件?

而且我也不想在文件中打印我的密鑰。那麼如何避免將我的密鑰寫入文件?

+0

1.你想比-m-00000等什麼呢? 2.您不想同時寫入關鍵字和值?那麼,你想基本寫什麼? –

+0

@SSaikia_JtheRocker - 現在檢查我的問題。我不想只寫入我的文件中的關鍵值,並且我想(-m-00000)刪除此 – Backtrack

+0

但是,映射器將同時運行。你不覺得沒有-m-0000x類型的數字,會有覆蓋嗎? –

回答

0

考慮使用LazyOutputFormat - 如果沒有通過context.write寫它不會創建默認的輸出文件:

job.setOutputFormat(LazyOutputFormat.class); 

// This can be any file based output format 
LazyOutputFormat.setOutputFormatClass(TextOutputFormat.class); 
相關問題