使用MapReduce求任何两名员工信息传递所需要经过的中间节点数详解

问题分析该公司所有员工可以形成入下图的树形结构,求两个员工的沟通的中间节点数,可转换在员工树中求两个节点连通所经过的节点数,即从其中一节点到汇合节点经过节点数加上另一节点到汇合节点经过节点数。例如求M到Q所需节点数,可以先找出M到A经过的节...

使用MapReduce将全体员工按照总收入(工资+提成)从高到低排列详解

问题分析求全体员工总收入降序排列,获得所有员工总收入并降序排列即可。在Mapper阶段输出所有员工总工资数据,其中key为员工总工资、value为员工姓名,在Mapper阶段的最后会先调用job.setPartitionerClass对数据...

使用MapReduce列出工资最高的头三名员工姓名及其工资详解

问题分析求工资最高的头三名员工姓名及工资,可以通过冒泡法得到。在Mapper阶段输出经理数据和员工对应经理表数据,其中经理数据key为0值、value为”员工姓名,员工工资”;最后在Reduce中通过冒泡法遍历所有员工,比较员工工资多少,求...

使用MapReduce列出名字以J开头的员工姓名及其所属部门名称详解

问题分析求名字以J开头的员工姓名机器所属部门名称,只需判断员工姓名是否以J开头。首先和问题1类似在Mapper的Setup阶段缓存部门数据,然后在Mapper阶段判断员工姓名是否以J开头,如果是抽取出员工姓名和员工所在部门编号,利用缓存部门...

使用MapReduce列出工资比公司平均工资要高的员工姓名及其工资详解

问题分析求工资比公司平均工资要高的员工姓名及工资,需要得到公司的平均工资和所有员工工资,通过比较得出工资比平均工资高的员工姓名及工资。这个问题可以分两个作业进行解决,先求出公司的平均工资,然后与所有员工进行比较得到结果;也可以在一个作业进行...

使用MapReduce列出工资比上司高的员工姓名及其工资详解

问题分析求工资比上司高的员工姓名及工资,需要得到上司工资及上司所有下属员工,通过比较他们工资高低得到比上司工资高的员工。在Mapper阶段输出经理数据和员工对应经理表数据,其中经理数据key为员工编号、value为”M,该员工工资”,员工对...

使用MapReduce求各个城市的员工的总工资详解

问题分析求各个城市员工的总工资,需要得到各个城市所有员工的工资,通过对各个城市所有员工工资求和得到总工资。首先和测试例子1类似在Mapper的Setup阶段缓存部门对应所在城市数据,然后在Mapper阶段抽取出key为城市名称(利用缓存数据...

使用MapReduce求每个部门最早进入公司的员工姓名详解

问题分析求每个部门最早进入公司员工姓名,需要得到各部门所有员工的进入公司日期,通过比较获取最早进入公司员工姓名。首先和问题1类似在Mapper的Setup阶段缓存部门数据,然后Mapper阶段抽取出key为部门名称(利用缓存部门数据把部门编...

基于MapReduce的员工和部门应用案例详解

准备测试数据 测试数据包括两个文件dept(部门)和emp(员工),其中各字段用逗号分隔: dept文件内容: 10,ACCOUNTING,NEW YORK 20,RESEARCH,DALLAS 30,SALES,C...

使用MapReduce求各个部门的人数和平均工资详解

问题分析求各个部门的人数和平均工资,需要得到各部门工资总数和部门人数,通过两者相除获取各部门平均工资。首先和问题1类似在Mapper的Setup阶段缓存部门数据,然后在Mapper阶段抽取出部门编号和员工工资,利用缓存部门数据把部门编号对应...