package cn.sky.hadoop;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.conf.Configured;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
import org.apache.hadoop.util.Tool;
import org.apache.hadoop.util.ToolRunner;
import org.junit.Test;
public class JobMain extends Configured implements Tool {
@Override
public int run(String[] strings) throws Exception {
// 创建一个任务对象
Job job = Job.getInstance(super.getConf(), "mapreduce_temperature");
// 打包放在集群运行时,需要做一个配置
job.setJarByClass(JobMain.class);
// 第一步:设置读取文件的类:K1和V1
job.setInputFormatClass(TextInputFormat.class);
TextInputFormat.addInputPath(job, new Path("hdfs://node01:8020/usr/hadoop/in"));
// 第二步:设置Mapper类
job.setMapperClass(TemperatureMapper.class);
// 设置Map阶段的输出类型:k2和v2的类型
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(LongWritable.class);
// 第三、四、五、六步采用默认方式(分区,排序,规约,分组)
// 第七步:设置Reducer类
job.setReducerClass(TemperatureReducer.class);
// 设置Reduce阶段的输出类型
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(Temperature.class);
// 第八步:设置输出类
job.setOutputFormatClass(TextOutputFormat.class);
// 设置输出路径
TextOutputFormat.setOutputPath(job, new Path("hdfs://node01:8020/usr/hadoop/temperature"));
boolean b = job.waitForCompletion(true);
return b?0:1;
}
public static void main(String[] args) throws Exception {
Configuration configuration = new Configuration();
// 启动一个任务
ToolRunner.run(configuration, new JobMain(), args);
}
}
"Hadoop实训实验报告代码.rar"揭示了一个关于Hadoop的实际操作训练,其中包含了对天气数据分析的具体项目。这个压缩包中不仅有详细的实验报告,还有完整的源代码,为学习者提供了深入理解和实践Hadoop技术的机会。 中的“hadoop实验主题天气分析”表明,这次实训的目标是利用Hadoop平台处理和分析与天气相关的数据。Hadoop是一个开源的分布式计算框架,常用于处理大规模数据集。在这个实验中,可能涉及了数据收集、数据预处理、数据分析和结果可视化等多个步骤,帮助学生掌握如何在Hadoop生态系统中处理大数据。 “包括ppt演示”意味着实验教程以PPT的形式呈现,可能包含概念讲解、流程图、关键步骤的截图等,以辅助理解Hadoop在天气分析中的应用。PPT通常会概述实验目标、使用的工具和技术、数据来源、处理过程以及实验结果的解释。 “全部代码”则意味着包含了实现天气数据分析的所有源代码,可能是用Java、Python或者其他支持Hadoop的语言编写的。这些代码可能包括MapReduce作业,用于执行数据的并行处理;HDFS(Hadoop Distributed File System)操作,用于数据的存储和检索;以及可能的Hive或Pig脚本,用于数据查询和转换。 “实验报告”可能包含了实验的设计、实施过程、遇到的问题、解决方案以及最终的结论。这是一份重要的学习资源,因为它提供了对整个实验过程的深度洞察,有助于学习者反思和总结经验。 在压缩包中的“所有工程文件”可能包含了项目的配置文件、依赖库、数据文件等,使得学习者可以直接运行和调试代码,体验实际的Hadoop项目开发流程。 通过这个压缩包,学习者可以全面地了解Hadoop在天气数据分析中的应用,从理论到实践,从代码编写到结果解读,提升自己的大数据处理能力。同时,这也是一个理想的案例研究,对于想要进入大数据领域的初学者或是希望深化Hadoop技能的专业人士来说,都是极具价值的学习资料。





































































































- 1
- 2
- 3
- 4



















- 粉丝: 101
- 资源: 36
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- awesome-deepseek-integration_README_cn.pdf
- ollama+deepseek搭建
- Python算法视频教程.zip
- Windows+MacOS双重引导工具:OpenCore-1.0.4-RELEASE.zip
- Python全栈开发工程师视频教程.zip
- 工业缺陷检测数据集(DAGM2007),10个独立类别
- OpenManus复刻版 Manus
- VLOOKUP函数17个重要和常见用法
- Python爬chong高级开发工程师视频.zip
- 基于python实现的CNN网络入侵检测(准确率达百分之93以上)+源码+项目文档+训练模型(毕业设计&课程设计&项目开发)
- JRebel离线本地激活
- 基于AT89C51单片机全自动洗衣机-19.zip
- 云计算学习-OpenStack之Neutron
- python实现基于贝叶斯、神经网络、KNN进行入侵检测+源码+项目文档+实验流程(毕业设计&课程设计&项目开发)
- 基于matlab实现的牙齿stl网格模型分割算法+源码+项目文档(毕业设计&课程设计&项目开发)
- 热门短剧搜索网站+内置1.2万条短视频数据+无授权开心版



评论5