MongoDB 分片状态recovering详解

       mongodb集群分片的数据查询的时候变慢,db.collection.find()不设置条件的查询几乎查不出来,通过检查集群中各分片服务器的状态,发现一台机器状态为recoving。通...

Hadoop:相关概念详解

Hadoop:相关概念 一、Hadoop简介 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS. 1.特点 (1)HDFS有高容错性的特点,并且设计用来部署在低廉的(...

MapReduce运行原理详解

MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。MapReduce采用”分而治之”的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然后通过整合各个节点的中间结果,得到最终结果。简单地说...

基于Zookeeper的分布式锁详解

实现分布式锁目前有三种流行方案,分别为基于数据库、Redis、Zookeeper的方案,其中前两种方案网络上有很多资料可以参考,本文不做展开。我们来看下使用Zookeeper如何实现分布式锁。 什么是Zookeeper? Zookeep...

Hive权限介绍详解

阅读目录   一、开启权限  目前hive支持简单的权限管理,默认情况下是不开启,这样所有的用户都具有相同的权限,同时也是超级管理员,也就对hive中的所有表都...

使用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列出工资比公司平均工资要高的员工姓名及其工资详解

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