Hadoop中的HelloWorld程序怎么实现
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇内容介绍了"Hadoop中的HelloWorld程序怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够
千家信息网最后更新 2025年12月03日Hadoop中的HelloWorld程序怎么实现
本篇内容介绍了"Hadoop中的HelloWorld程序怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
在linux平台上执行wordcount,有官方示例,相应的jar包放在hadoop-2.0.0-cdh5.5.0\share\hadoop\mapreduce1下的hadoop-examples-2.0.0-mr1-cdh5.5.0.jar(注:本人用的是CDH4.5.0版本),我们首先需要准备好数据:
echo "Hello World Hello Hadoop" > 1.txtecho "Hello Hadoop Bye " >2.txt
然后把数据put到HDFS里:
hadoop fs -mkdir /inputhadoop fs -put /root/1.txt /inputhadoop fs -put /root/2.txt /input
再然后进入到jar所在的目录里"
cd hadoop-2.0.0-cdh5.5.0\share\hadoop\mapreduce1
执行命令:
hadoop jar hadoop-mapreduce-examples-2.0.0-cdh5.5.0.jar WordCount /input /output
其中,/output是执行结果输出目录。
到此,HelloWorld就顺利执行了,你可以用hadoop fs -cat /output/part 命令来查看结果.
接下来,我们在看看在window上的eclipse如何执行。
首先贴出代码:
public class WordCount { // mapper public static class Map extends Mapper { private static IntWritable one = new IntWritable(1); private Text word = new Text(); @Override public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { String line = value.toString(); StringTokenizer token = new StringTokenizer(line); while (token.hasMoreElements()) { word.set(token.nextToken()); context.write(word, one); } }; } // reduce public static class Reduce extends Reducer { protected void reduce(Text key, Iterable values, Context context) throws IOException, InterruptedException { int sum = 0; for (IntWritable value : values) { sum += value.get(); } context.write(key, new IntWritable(sum)); }; } public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); System.setProperty("HADOOP_USER_NAME", "root");//这句话很重要,要不然会告你没有权限执行 Job job = new Job(conf); String[] ioArgs = new String[] { "hdfs://192.168.1.101:7001/input", "hdfs://192.168.1.101:7001/output" }; String[] otherArgs = new GenericOptionsParser(conf, ioArgs).getRemainingArgs(); job.setJarByClass(WordCount.class); FileInputFormat.addInputPath(job, new Path(otherArgs[0])); FileOutputFormat.setOutputPath(job, new Path(otherArgs[1])); job.setMapperClass(Map.class); job.setReducerClass(Reduce.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class); System.exit(job.waitForCompletion(true) ? 0 : 1); }} 然后在eclipse上点执行即可,在执行时可能发现jvm内存不够,添加-Xmx1024M参数执行即可。
"Hadoop中的HelloWorld程序怎么实现"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
程序
接下来
内容
命令
数据
更多
目录
知识
结果
输出
实用
重要
学有所成
不够
代码
内存
参数
困境
官方
实际
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全新边疆
网络安全演习汇报片
网络安全渗透技术学习方法
网络安全作文英语作文100
如何防止服务器被攻击
asp链接数据库
王牌战争中的创建服务器
免备案和云服务器的区别
软件开发未来好不好
知识视界数据库的研究报告
ec服务器怎么用4d皮肤
数据库工程师2018答案
南京 c软件开发工程师
陕西尚居苑网络技术有限公司
网络安全有五个基本要素
云服务器安全组规则在哪里看
幼儿园网络安全系列课堂
3c认证 服务器
12伏服务器风扇最高工作电压
当前企业发展数据库
centos7服务器安全配置书
汽车车载网络技术课程总结
178数据库技术支持
三级数据库技术 软考
深圳电脑软件开发在哪
网络安全员考试内容
免备案和云服务器的区别
安装不上数据库连接
新华互联网科技学校好不好
服务器日常安全维护