Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2468727
  • 博文数量: 392
  • 博客积分: 7040
  • 博客等级: 少将
  • 技术积分: 4138
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-17 13:03
个人简介

范德萨发而为

文章分类

全部博文(392)

文章存档

2017年(5)

2016年(19)

2015年(34)

2014年(14)

2013年(47)

2012年(40)

2011年(51)

2010年(137)

2009年(45)

分类: 服务器与存储

2010-05-12 09:41:06

尝试用c++和Hadoop streaming编写了一些程序,记录一下个人的使用体验

性能?

据网上某人做的测试,Hadoop streaming比用Java写的程序慢30%左右(具体连接忘了),当然这个数字不是绝对的,我也没有做过相关测试,但是还是能局部的反应出其性能状况

使用?

请看这里、
相关blog和文章还是比较多的,但是文章内容都差不多,下面写下个人使用后的观点,关于其中提到的问题,很可能是由于没有找到合理的解决方法,希望看过文章的朋友能提出

优势:

简单快速:使用Linux的标准输入输出,因此可以使用c/c++/python及各种Linux自带的命令。只需要了解基本的MapReduce过程即可使用(Map数据拆分、Reduce归并)

缺点:

无法控制数据类型:由于使用stdin和stdout,无法向后台MapReduce框架提供数据类型(个人推断所有的数据都作为字符串来处理的,这样在需要处理int等数据时会出现一些问题,比如排序)。
可选功能:streaming使用参数来配置各种选项,这样如果有的功能没有提供的话,该如何实现呢?比如我遇到需要对Int数据排序的问题,排序函数如何指定。目前尚没有找到答案

hadoop streaming适用于简单的MapReduce计算,当涉及到较复杂的需求时,个人认为还是使用Java会更加灵活。并且streaming方面的资料比较少。

阅读(2212) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~