大数据学习笔记3--HDFS扩展和mapreduce工作过程

HDFS配置:

  • 客户端中的配置参数可以覆盖服务端的参数。
  • 例如:副本数,切块大小

HDFS文件存储:

  • 服务端存储block的实际大小,但是不适合存储小文件,小文件会占用namenode的元数据空间。
  • 对于小文件数据的优化,可以在上传之前先合并再上传。
  • 例如:压缩、文本文件合并

HDFS扩展:

  • hdfs支持rest API,与平台无关
  • jetty 容器
  • hdfs支持rest command

分布式任务传统方式:

  1. 任务资源分发 jar配置文件。。。硬件资源的分配
  2. 任务在各个任务节点上设置运行环境,启动执行
  3. 监视各个阶段任务执行状态
  4. 任务失败,重试
  5. 中间结果调度,汇总

hadoop对分布式抽象

  • yarn:资源调度器,负责硬件资源调度、任务分配、环境配置、启动任务。
  • mapredce:分布式运算框架,监视任务执行、失败重试、中间结果调度。
  • spark、storm:实时计算

mapreduce

  • mapper:

    一次读取一行数据

    输出一组keyValue

    mapper个数等于block块数

  • shuffle:

    合并数据

  • reduce:

    业务逻辑处理

hadoop序列化机制:

  • hadoop中目前的序列化机制是writable,后续版本中会替换为avro

mapreduce任务提交方式

  1. jar包,hadoop jar wordcount.jar Count

    mr会被提交到集群,属于集群的运行方式

  2. local模式

    在eclipse里直接运行main方法

  3. eclipse hadoop 插件

mapreduce任务执行流程

  • RunJar:客户端
  • ResourceManager:资源管理器,老大
  • NodeManager:执行任务管理器
  • MrAppMaste:任务启动、监控、失败重试
  • yarnchild:mapper和reducer

  1. RunJar向ResourceManager申请提交一个job
  2. ResourceManager返回jobid和一个job的提交的路径(hdfs://)
  3. RunJar提交job任务的相关文件(jar,配置job.xml,split.xml)到hdfs
  4. RunJar上报给ResourceManager任务已经提交完成
  5. ResourceManager分配资源,并将任务任务写入到任务队列中
  6. NodeManager主动向ResourceManager领取任务
  7. NodeManager在一个容器中启动MrAppMaster
  8. MrAppMaster向ResourceManager注册
  9. ResourceManager向MrAppMaster返回资源信息
  10. MrAppMaster启动mapper(mapper reducer详细流程。。。)
  11. MrAppMaster启动reducer
  12. 任务执行完成,向ResourceManager注销资源
时间: 2024-12-28 12:49:43

大数据学习笔记3--HDFS扩展和mapreduce工作过程的相关文章

大数据学习笔记6·社会计算中的大数据(4)

上一篇介绍了LifeSpec项目,这个项目是关于用户理解和用户画像的.这篇是社会计算部分的最后一篇,关于用户连接和图隐私. 用户连接与隐私保护 用户连接与隐私保护有很强的相关性. 上图中,左边有两个网络.对于用户连接,我们的目标是映射这两个网络和连接这些网络中的用户节点.然后,我们就能产生一个更大的网络.这样,用户就能够被连接在一起,我们就可以知道跨网络的用户信息. 但是,如果从隐私的角度来看这个问题,把第一个图看成一个匿名化处理后的图,称其为目标图:把第二张图看成辅助图或者攻击者可获得的信息.

大数据学习笔记1--hadoop简介和入门

Hadoop简介: 分布式.可扩展.可靠的.分布式计算框架. 组件: common:公共组件 hdfs:分布式文件系统 yarn:运行环境 mapreduce:mr计算模型 生态系统: Ambari:操作界面 avro:通用的序列化机制.与语言无关 cassandra:数据库 chukwa:数据收集系统 hbase:分布式大表数据库 hive:基于sql的分析系统 matout:机器学习算法库 pig:脚本语言 spark:快速通用的计算引擎,主要用于迭代计算 tez:数据流框架 zookeep

电商大数据学习笔记:实战

1.YARN:将资源管理和作业调度/监控分成两个独立的进程. 包含两个组件:ResourceManager和ApplicationMaster 2.YARN的特性: 1)可扩展性:2)高可用性(HA):3)兼容性(1.0版本的作业也可以执行):4)提高集群利用率: 5)支持MapReduce编程范式. 3.Hadoop的进程: 1)NameNode HDFS的守护进程: 2)Secondary NameNode 监控HDFS状态的辅助后台程序,备用NameNode: 3)DataNode 负责把

大数据学习笔记

转自: http://www.csdn.net/article/2013-12-04/2817707-Impala-Big-Data-Engine 大数据处理是云计算中非常重要的领域,自Google公司提出MapReduce分布式处理框架以来,以Hadoop为代表的开源软件受到越来越多公司的重视和青睐.本文将讲述Hadoop系统中的一个新成员:Impala. Impala架构分析 Impala是Cloudera公司主导开发的新型查询系统,它提供SQL 语义,能查询存储在Hadoop的HDFS和H

大数据学习笔记7·城市计算(1)

前言 众所周知,快速的城市化使得很多人的生活变得现代化,同时也产生了很多挑战,如交通拥挤.能源消耗和空气污染. 城市的复杂性使得应对这些挑战看起来几乎是不可能的.近来,传感技术和大规模计算基础设施的进步产生了各种各样的大数据,从社会化媒体数据到交通数据,从地理数据到气象数据.如果使用得当,我们可以使用这些数据去应对城市中面临的各种挑战. 受到这个机会的激励,我们提出了城市计算的解决方案.它把城市传感.城市数据管理.城市数据分析和服务提供变成一个对人的生活.城市运行系统和环境进行不断重复但不显眼的

大数据学习笔记2--hdfs工作原理及源码分析

windows下配置hadoop hadoop 安装包解压,路径不要有特殊字符 lib和bin直接解压出来的不可用,需要自己重新编译 配置环境变量:HADOOP_HOME,path中添加:bin目录 namenode 整个文件系统的管理节点.它维护着整个文件系统的文件目录树,文件/目录的元信息和每个文件对应的数据块列表.接收用户的操作请求. 响应客户端的请求,上传文件: client申请上传文件,namenode查看元数据信息,查看客户端申请的路径是否已存在 namenode返回可用的datan

电商大数据学习笔记:理论

1.大数据部门:数据中心.数据平台.数据部…… 2.每个部门都有:架构人员.数据分析人员.开发人员.运营人员…… 3.团队:数据仓库组.BI组.架构组.数据专家组…… 4.团队分的更细:需求组.推荐组.情报组.挖掘组.数据组.营销组…… 5.大数据有哪些重要的项目: 1)数据仓库建设: 2)经营分析报表: 3)客户精准营销: 4)推荐系统: 5)移动端数据分析. 6.大数据有哪些重点方向: 1)流量数据: 2)交易数据: 3)会员与活动数据: 4)物流与配送数据: 5)内部财务数据. 7.代表产

好程序员大数据学习路线分享HDFS读流程

1.客户端或者用户通过调用FileSystem对象的Open()方法打开需要读取的文件,这时就是HDSF分布式系统所获取的一个对象 2.FileSystem通过远程协议调用NameNode确定文件的前几个Block的位置,对于每一个block,NameNode返回一个含有Block的元数据信息,接下来DataNode按照上面定义的距离(offSet偏移量)进行排序,如果Client本身即是一个DataNode,那么就会优先从本地DataNode节点读取数据. HDFS完成上面的工作之后返回一个F

大数据学习笔记4·社会计算中的大数据(2)

本篇继续讨论对用户移动规律的理解:结合地理建模和矩阵分解来做兴趣点推荐. 位置推荐是一类非常受欢迎的应用.在位置推荐中,我们需要理解用户的潜在兴趣并熟悉用户所处的环境.然后,我们就可以根据用户的兴趣和位置的属性发现用户可能感兴趣的地点.与普通推荐任务相比,地理位置在位置推荐中是改进推荐性能的一个重要因素. 在前面一篇中,我们讨论了如何恢复用户行为数据用于移动规律的理解.我们发现,用户移动行为通常集中在像家庭.工作场所和最喜欢的餐馆这样的重要地点.而且,两个地点之间的距离通常很短.所以,我们想要利