1. 程式人生 > >Hadoop Streaming的一些基本知識

Hadoop Streaming的一些基本知識

Hadoop streaming框架預設情況下會以'\t'作為分隔符,將每行第一個'\t'之前的部分作為key,其餘內容作為value,如果沒有'\t'分隔 符,則整行作為key;這個key\tvalue對又作為reduce的輸入。hadoop 提供配置供使用者自主設定分隔符。
      -D stream.map.output.field.separator \#設定map輸出中key和value的分隔符
      -D stream.num.map.output.key.fields \#設定map程式分隔符的位置,該位置之前的部分作為key,之後的部分作為value
      -D map.output.key.field.separator \#設定map輸出中key內部的分割符
     -D num.key.fields.for.partition
\#指定分桶時,key按照分隔符切割後,其中用於分桶key所佔的列數(配合-partitioner org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner 使用)
      -D stream.reduce.output.field.separator \#設定reduce輸出中key和value的分隔符
      -D stream.num.reduce.output.key.fields #設定reduce程式分隔符的位置