map:
-D stream.map.output.field.separator=. 定义mapoutput字段的分隔符为. 用户可以自定义分隔符(除了默认的tab)
-D stream.num.map.output.key.fields=4 第四个.前面的是key,后面的是value。如果该行.的个数少于四个,则整行数据就是key,value是空。
总结:就是划分map输出的key与value的。因为输出的都是文本行。都有个划分标志。
对应context.write(key, value) reduce:(同上)
-D stream.reduce.output.field.separator=SEP
-D stream.num.reduce.output.fields=NUM partitioner
-partitioner org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner
-D stream.map.output.field.separator=.
-D stream.num.map.output.key.fields=4
-D map.output.key.field.separator=. 字面的解释:map的输出key的field的separator=. (对key再进行切分==二面)
#-D num.key.fields.for.partition=2 指定将key分割后的前两部分用做partition
-D mapred.text.key.partitioner.options=-k1,2 附注:-k1,2 指定对key进行划分后第1 2个域进行划分(上述解释没有找到相关文档,也不属于原文) example1
Output输出(keys) 因为 -D stream.num.map.output.key.fields=4 指定map的输出行前4个作为key,后面为value
11.12.1.2
11.14.2.3
11.11.4.1
11.12.1.1
11.14.2.2
划分到3个reducer(前面2个字段作为partition的keys)
11.11.4.1
-----------
11.12.1.2
11.12.1.1
-----------
11.14.2.3
11.14.2.2 Reducer的每个划分内排序(4个字段同时用于排序) 实现了partitioner不是用map的输出key做partition而是用key的某一部分,对应了java中的自定义partitioner
11.11.4.1
-----------
11.12.1.1
11.12.1.2
-----------
11.14.2.2
11.14.2.3 example2
-D mapred.output.key.comparator.class=org.apache.hadoop.mapred.lib.KeyFieldBasedComparator
-D stream.map.output.field.separator=.
-D stream.num.map.output.key.fields=4
-D map.output.key.field.separator=.
-D mapred.text.key.comparator.options=-k2,2nr
-k2,2nr 中-k2,2指定key分割后的第2个域进行排序,n 指定使用数字排序,r指定排序结果最后要进行反转
Map输出(keys)
11.12.1.2
11.14.2.3
11.11.4.1
11.12.1.1
11.14.2.2
Reducer的输出(使用第二个字段进行排序)
11.14.2.3
11.14.2.2
11.12.1.2
11.12.1.1
11.11.4.1

最新文章

  1. jquery版固定边栏滚动特效
  2. Android -- 常见控件的小效果
  3. CDATA为何物?
  4. 使用Google产品以来遇到的最糟糕、最霸道、最让人抓狂的设计
  5. 代码规范之争——[个人Week2作业]
  6. 利用mybatis_generator自动生成Dao、Model、Mapping相关文件
  7. 【python】浅谈包
  8. uva401 - Palindromes结题报告
  9. 系统监控的一些工具w , vmstat
  10. Codeforces Round #291 (Div. 2) C - Watto and Mechanism 字符串
  11. css3教程:弹性盒模型
  12. Linux释放内存脚本
  13. Hibternate框架笔记
  14. MongoDB 桌面管理器MongoVUE
  15. 四、docker-compose的编程模版
  16. MongoDB 组合多个条件查询($and、$in、$gte、$lte)
  17. Java Date类的使用总结
  18. Vue-cli添加全局js
  19. About me?
  20. 【附】Python安装

热门文章

  1. mysql:通用查询日志general_log
  2. PHP生成HTML页面顶部出现空白部分(&#65279字符?)
  3. SharePoint2013 SharePoint-Hosted 模式 分页方法
  4. DEDECMS 获取当前栏目及所有子栏目的文章数量
  5. 启用Win8(中文版/核心版)中被阉割的远程桌面服务端
  6. asp:手机扫描二维码跳转手机版
  7. 关于Ionic的安装
  8. Eclipse查看历史代码
  9. Codevs 1218 疫情控制 2012年NOIP全国联赛提高组
  10. HDOJ1005 数列