zoukankan      html  css  js  c++  java
  • Hadoop mapreduce 浑身都是芝士点

    一 使用mapreduce实现分布式计算

    1.什么事mapreduce?

    源于google 的mapreduce 论文发表 Hadoop mapreduce 是Google mapreduce 的克隆版。

    优点 易于编程

      内部负责的操作,都是由框架本身去完成的,留给我们开发的内容少之又少(逻辑)

    2.良好的扩展性:

     随着我们业务或者需求的增加,集群的存储能力或者计算能力,又可能下降,这样我们可以通过增加集群的节点来解决

    JobTracker:工作跟踪者

    管理所有的作业job,存储在master节点上

    将作业分解成一系列的任务

    将任务指派给TaskTracker

    作业/任务监控,错误处理等

    TaskTracker

    存在slave节点上

    运行Map TaskReduce Task

    JobTracker交互,执行命令,汇报任务状态(心跳)

    mapreduce 编程模型

    input就是我们需要计算的海量数据文件

    Splitting,就是把数据分割成一片一片的数据

    mapping:就是计算每片数据的文件

    Combiner:Combinder 对一个输出作用就是在map端做一次合并,减少本地磁盘10

    Final result: 把最终的结果输出到HDFS文件系统中

    Reducing:把Shuffing的数据进行汇总

    思想就是分而治之

    MapReduce的思想就是“分而治之

    ***********map 

    就是“分”将复杂的数据分解成若干个,“简单的任务去执行”

    可以并行计算,彼此之间没有依赖关系

    reducer 就是负责对“合”汇总

    reducer的数目是由mapred-site.xml配置文件中的mapred.reduce.tasks决定的)所以这些都是mapreduce机制帮我们做出来的 计算

    .WordCount案例解析

    Hadoop数据类型:

    IntWritable hadoop中的基本数据类型!整型数!

    LongWritable:长整型数

    FloatWritable:浮点数

    DoubleWritable:双字节数

    ByteWritable:单字节,对应byte类型

    BytesWritable:字节数组,对应byte[]

  • 相关阅读:
    新华字典有多少字
    lisp install
    OCaml Language Sucks
    Erlang, Haskell, OCaml: screw one, marry one, kill one. Which and why?
    Linux获取网页源码的几种方法
    什么是zhcon
    What is plowshare?
    neo4j简单学习
    neo4j 云端部署
    Clojure语言 vs Scala语言
  • 原文地址:https://www.cnblogs.com/hualishu/p/10147884.html
Copyright © 2011-2022 走看看