首页 > 其他分享 >hadoop 简介

hadoop 简介

时间:2023-08-13 17:00:49浏览次数:47  
标签:HDFS Map 简介 Reduce hadoop MapReduce 集群

目录

hadoop 的三大组件和关系

1. HDFS:分布式文件系统

hdfs 的特点和不适用使用场景

1.1 HDFS文件系统可存储超大文件(不适用有大量小文件场景和小量场景,默认块大小是MB,资源浪费)
1.2 一次写入,多次读取(不适用多用户更新,hadoop 不支持记录级别的插入更新)
1.3 运行在普通廉价的机器上
1.4 DFS适合存储半结构化和非结构化数据,HDFS延时较高 (不适用低延时场景和严格结构化数据场景,推荐使用Hbase)

2. MapReduce:计算模型(分布式并行计算框架)

2.1 概念浅析

MapReduce 可以将一个大型的数据处理任务分解成很多单个的可以在服务器集群中并行执行的任务,这些任务的计算结果可以合并在一起来计算最终结果。
MapReduce核心思想:分而治之

2.2 模型原理

MapReduce计算模型主要由三个阶段构成:Map、shuffle、Reduce

Map :将文件按设置的block大小切片,映射,负责数据的过滤分法,将原始数据转化为键值对记录,然后输出到环形缓冲区或磁盘;

Shuffle:对MapTask 输出的处理结果进行一定的排序与分割,进一步整理并交给Reduce的过程(Shuffle过程包含在Map和Reduce两端,即Map shuffle和Reduce shuffle)

Reduce: 并行处理Map的结果从缓存或者磁盘copy,合并,将具有相同key值的value进行处理后再输出新的键值对作为最终结果。

MapRduce过程详解

img

img

2.3 MadReduce的特点

  • 易于编程:程序员仅需描述做什么,具体怎么做由系统的执行框架处理。
  • 良好的扩展性:可通过添加结点以扩展集群能力。(硬件/价格/扩展性:普通PC机,便宜,扩展性好)
  • 高容错性:通过计算迁移或数据迁移等策略提高集群的可用性与容错性
  • 批处理、非实时、数据密集型

3. Yarn:

1.客户端:提交MapReduce作业

2.YARN的资源管理器(Resource Manager),协调集群中资源的分配

YARN的引入,使得多个计算框架(Spark,MapReduce,storm等)可运行在一个集群中

3.YARN的节点管理器(Node Manager)启动并监控集群中的计算容器。

4.ApplicationMaster:每个应用程序对应一个ApplicationMaster负责应用程序相关的事务、比如任务调度、任务监控和容错等。(Spark,MapReduce,storm等)

MapReduce的Application Master,协调MapReduce作业中任务的运行。Application Master和MapReduce任务运行于容器中。这些容器由resourcemanager调度,由namenode管理。

5.分布式文件系统(HDFS),在组建之间共享作业数据

参考资料:
MapReduce技术原理
MapReduce原理浅显解析1
MapReduce原理浅显解析2

标签:HDFS,Map,简介,Reduce,hadoop,MapReduce,集群
From: https://www.cnblogs.com/Spring-Rain/p/17626788.html

相关文章

  • python简介
    python简介1.python的产生与应用python于1989年圣诞节期间由吉多·范罗苏姆(GuidovanRossum)(中文名字:龟叔)为打发时间开发的一个新脚本解释程序,作为ABC语言的一种继承。(龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,被称为仁慈的独裁者)。......
  • 第一章 简介
    R语言简介1.1R是什么R语言是一种开源的脚本语言,也是一种为统计计算和绘图而生的语言和环境,在数据分析与预测以及数据可视化等方面享有良好的声誉。1993年,R的最初版本发布给研究人员使用,解决复杂数据统计分析任务,并用多样化的图形来展示结果。R的名字来源于它当时的两名开发......
  • 无标度网络简介
    一个无标度网络是指其度分布至少在渐近意义下遵循幂律。这意味着,网络中节点的比例P(k)随着度k的增加而呈幂律分布。这种分布在数学上被称为幂律分布,其形式为P(k)∝k^(-γ),其中γ是某个指数。这种分布形式在度k增加时缓慢下降,增加了发现具有非常大度的节点的可能性。这些节点被称为......
  • 幂律分布简介
    幂律分布与其他类型的分布的不同之处在于:1.分布形式:幂律分布的形式为P(x)∝x^(-α),其中α是指数。与幂律分布不同,其他类型的分布可能具有不同的形式,如正态分布、泊松分布、指数分布等。2.尾部特征:幂律分布的尾部非常重,即存在极端值。相比之下,其他类型的分布的尾部可能较轻,即极......
  • servlet系列:简介和基本使用以及工作流程
    目录一、简介二、Servlet实现三、基本使用1.引入pom依赖2.实现Servlet规范,重写service方法3.配置web.xml4.配置Tomcat6.运行四、Servlet的工作流程一、简介Servlet是Server与Applet的缩写,是服务端小程序的意思。使用Java语言编写的服务器端程序,可以生成动态的WEB页,Serv......
  • Mybatis简介
    1.1、Mybatis简介●MyBatis是一款优秀的持久层框架●它支持定制化SQL、存储过程以及高级映射。●MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。●MyBatis可以使用简单的XML或注解来配置和映射原生类型、接口和Java的POjO(PlainOldJavaObjects,普通老式Java......
  • Traffic Control (TC) 简介和使用指南
    TrafficControl(TC)简介和使用指南TrafficControl(TC)是一个在Linux操作系统中用于控制网络流量的工具,允许对网络流量进行限速、排队、分流以及其他管理操作。TC用于实现QoS(QualityofService)和流量整形,能够更好地控制网络资源和提供更好的用户体验。我们主要用于网损控制......
  • LTE和5G无线技术对比简介
    LTE和5G是两种不同的无线通信技术,它们在速度、延迟、容量、覆盖范围和设备兼容性等方面存在差异。LTE,即长期演进技术,是一种基于OFDMA的4G蜂窝网络标准,由3GPP组织制定并发布。它的主要目的是改进3G的空中接入技术,提供更高的数据速率和更低的延迟。LTE支持最高100Mbps的下行速率和50M......
  • Json 基于类 Newtonsoft.Json.Linq.JToken 的应用简介【C# 基础】
    〇、前言在日常开发中,对于Json的使用还是比较频繁的,特别是Json对象和字符串或者实体对象之间的转换。虽然几乎天天用,但是总是感觉没那么明了,今天结合微软的Newtonsoft.Json.Linq类,试着详解一下,把相关的内容列一下。一、Newtonsoft.Json.Linq的层级结构简单画个图,肯定比......
  • LTE和5G无线技术对比简介
    LTE和5G是两种不同的无线通信技术,它们在速度、延迟、容量、覆盖范围和设备兼容性等方面存在差异。LTE,即长期演进技术,是一种基于OFDMA的4G蜂窝网络标准,由3GPP组织制定并发布。它的主要目的是改进3G的空中接入技术,提供更高的数据速率和更低的延迟。LTE支持最高100Mbps的下行速率和50......