Hadoop中的HelloWorld程序怎么实现
发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,本篇内容介绍了"Hadoop中的HelloWorld程序怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够
千家信息网最后更新 2025年02月06日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安全错误
数据库的锁怎样保障安全
软件开发企业的经营性质
数据库安全测试类型名称
网络安全专业考研评级
互联网科技公司核心业务
ncbi查询数据库
如何给服务器换ip
服务器主机能装苹果吗
苏州安卓应用软件开发要多少钱
网络安全博士生导师清华大学
四川云控制无纸化会议系统服务器
信息网络安全应急处置制度
党政机关工作期间网络安全
盘古网络安全海报
网络安全的特征及其意义
金蝶服务器远程访问
我的世界1.18服务器刷物品
高成长互联网科技股
网络安全公司盖章
佛山社交软件开发外包
长宁区无线网络技术口碑推荐
连接星火数据库失败
山阴县网络安全工作会议
星之辰服务器更新版本
武汉网络安全部长
浙江正规软件开发维修价格
acess动态数据库vb
厦门软件园三期 软件开发
2021网络技术新增题库
长宁区无线网络技术口碑推荐
工作室服务器主机