当前位置: 首页 > news >正文

江苏省住房建设厅网站首页京东网站开发技术

江苏省住房建设厅网站首页,京东网站开发技术,品质好物推荐怎么上,软件定制开发项目网csv文件求某个平均数据 查询每个部门的平均工资,最后输出 数据处理过程 employee_noheader.csv(没做关于首行的处理,运行时请自行删除) EmployeeID,EmployeeName,DepartmentID,Salary 1,ZhangSan,101,5000 2,LiSi,102,6000…

csv文件求某个平均数据

查询每个部门的平均工资,最后输出

数据处理过程
在这里插入图片描述

employee_noheader.csv(没做关于首行的处理,运行时请自行删除)

EmployeeID,EmployeeName,DepartmentID,Salary  
1,ZhangSan,101,5000
2,LiSi,102,6000
3,WangWu,101,5500
4,ZhaoLiu,103,7000
5,SunQi,102,6500
  1. pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.hadoop</groupId><artifactId>Mapreduce_csv_average</artifactId><version>1.0-SNAPSHOT</version><name>Mapreduce_csv_average</name><description>wunaiieq</description><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--版本控制--><hadoop.version>2.7.3</hadoop.version></properties><dependencies><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>${hadoop.version}</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-hdfs</artifactId><version>${hadoop.version}</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-mapreduce-client-core</artifactId><version>${hadoop.version}</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-client</artifactId><version>${hadoop.version}</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-yarn-api</artifactId><version>${hadoop.version}</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-streaming</artifactId><version>${hadoop.version}</version></dependency></dependencies><!--构建配置--><build><plugins><plugin><!--声明--><groupId>org.apache.maven.plugins</groupId><artifactId>maven-assembly-plugin</artifactId><version>3.3.0</version><!--具体配置--><configuration><archive><manifest><!--jar包的执行入口--><mainClass>com.hadoop.Main</mainClass></manifest></archive><descriptorRefs><!--描述符,此处为预定义的,表示创建一个包含项目所有依赖的可执行 JAR 文件;允许自定义生成jar文件内容--><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs></configuration><!--执行配置--><executions><execution><!--执行配置ID,可修改--><id>make-assembly</id><!--执行的生命周期--><phase>package</phase><goals><!--执行的目标,single表示创建一个分发包--><goal>single</goal></goals></execution></executions></plugin></plugins></build></project>
  1. Map_1
package com.hadoop;import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
import java.io.IOException;public class Map_1 extends Mapper<LongWritable, Text,IntWritable,IntWritable> {@Overrideprotected void map(LongWritable k1, Text v1, Context context)throws IOException, InterruptedException {//处理输入数据,类型转换//以     1,ZhangSan,101,5000  为例String data =v1.toString();//分词操作,csv用","进行分割//一般而言,分词操作大多使用String进行获取,后面可以附跟类型转换String[] words =data.split(",");//下文输出context.write(//K2:部门号输出new IntWritable(Integer.parseInt(words[2])),//K3:工资输出new IntWritable(Integer.parseInt(words[3])));}
}
  1. Reduce_1
package com.hadoop;import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.io.IntWritable;
import java.io.IOException;
public class Reduce_1 extends Reducer<IntWritable,IntWritable,IntWritable,IntWritable>{@Overrideprotected void reduce(IntWritable k3, Iterable<IntWritable> v3, Context context)throws IOException, InterruptedException {//对v3进行求和,计算总额int total=0;int i=0;for (IntWritable v:v3){total+= v.get();i++;}int average=total/i;context.write(k3,new IntWritable(average));}
}
  1. Main
package com.hadoop;import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.mapreduce.Job;
import java.io.IOException;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;public class Main {public static void main(String[] args) throws IOException, InterruptedException, ClassNotFoundException {Job job =  Job.getInstance(new Configuration());job.setJarByClass(Main.class);//mapjob.setMapperClass(Map_1.class);job.setMapOutputKeyClass(IntWritable.class);//k2job.setMapOutputValueClass(IntWritable.class);//v2//reducejob.setReducerClass(Reduce_1.class);job.setOutputKeyClass(IntWritable.class);job.setOutputValueClass(IntWritable.class);//输入和输出FileInputFormat.setInputPaths(job,new Path(args[0]));FileOutputFormat.setOutputPath(job,new Path(args[1]));//执行job.waitForCompletion(true);}
}
  1. 运行
    请自行上传至hdfs中
hadoop jar Mapreduce_average.jar /input/employee_noheader.csv /output/csv_average
  1. 效果
hdfs dfs -cat /output/csv_average/part-r-00000

在这里插入图片描述

http://www.yayakq.cn/news/496986/

相关文章:

  • 电子商务网站建设题库引流黑科技app
  • 做展会怎么引流到自己的网站济南网站建设 选搜点o
  • 地方门户网站推广方案国内专业建站平台
  • 高校健康驿站建设指引wordpress禁用插件
  • 相关网站查询网站建设的基本条件
  • 建站模板下载后表单怎么修改做网站平台的营业执照
  • 360全景图制作杭州网站推广优化公司
  • 网上书城网站开发方案外贸网站的特色
  • 做网站 橙色怎么搭配南昌网站建设机构
  • php怎么做网站宁波公司名称大全
  • 咸宁网站建设报价手机网站无响应
  • 淘宝的网站建设费用专做特产的网站
  • 网站知识介绍网站开发公司徐州
  • 手机网站作用海口企业网站建设
  • 北京网站设计有名 乐云践新做商城网站需要的功能
  • 做游戏网站用什么系统做建站公司的服务器
  • 注册网站会有哪些风险wordpress d8电影主题
  • 云建站网址经营网站需要什么费用
  • 多人在线协作网站开发项目网app
  • 淘宝联盟怎么自己做网站推广口碑营销的主要手段有哪些
  • 沈阳营销型网站制作技术快速seo优化
  • 加强网站队伍建设展厅设计费收费标准
  • 网站建设前端工具国外 网站 欣赏
  • 响应式外贸网站价格北京行业网站建设
  • 手机网站费用郑州网络推广哪家口碑好
  • 嘉兴公司网站模板建站小红书seo排名规则
  • 查数据的权威网站做电商没几个能赚钱的
  • 百度网站建设是什么意思wap网站建设兴田德润实惠
  • 深圳建设交易网站网站建设的步骤教程视频
  • 怎么查询网站是否被降权茶叶网站建设的优势