您的位置:首页 > 运维架构

Hadoop测试TeraSort

2015-10-09 16:53 405 查看
http://www.opstool.com/article/249



使用teragen产生数据
使用Teragen来产生数据,示例如下:
hadoop jar hadoop-*-examples.jar teragen 参数1 参数2

teragen的参数解释:

参数1:表示要产生的数据的行数。Teragen每行数据的大小是100B。

要产生1T的数据,需要的行数=102410241024*1024/100=10995116277行
参数2 : 产生的数据放置的文件夹地址

默认的teragen的启动的map数比较少,只有2个,如果要指定map数可以加-Dmapred.map.tasks=map数的方式。比如我们来产生1T的数据
hadoop jar hadoop-*-examples.jar teragen -Dmapred.map.tasks=100 10995116277 terasort/1T-input

ls一下目录是否产出
hadoop@myhost $ hadoop fs -ls /user/hadoop/terasort/
Found 1 items
drwxr-xr-x   - hadoop cug-admin          0 2013-07-13 12:49 /user/hadoop/terasort/1T-input

使用Terasort排序
使用terasort对刚才使用teragen产生的数据进行排序,排序结果输出到/user/hadoop/terasort/1T-output。

默认的reduce数目是1,会导致任务跑得非常慢。通过-Dmapred.reduce.tasks指定reduce数目,这里我们设置50个
hadoop jar hadoop-*-examples.jar terasort -Dmapred.reduce.tasks=50 \
/user/hadoop/terasort/1T-input /user/hadoop/terasort/1T-output

启动Teragen之后,会提交mapre reduce任务来,产生TeraSort需要的数据
使用Teravalidate 进行验证
使用TeraValidate 对Terasort的结果进行验证:
hadoop jar hadoop-*-examples.jar teravalidate /user/hadoop/terasort/1T-output /user/hadoop/terasort/1T-validate


相关文档:

常用hadoop命令
hadoop样例程序
理解hadoop fsck、fs -dus、-count -q的大小输出
Hadoop查看本地Sequencefile文件
Hadoop如何Kill指定用户的所有Job

最新最早最热

0条评论
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: