Hadoop技术

大数据技术之Hadoop介绍 1.大数据概述 大数据是指无法利用传统计算技术进行处理的大规模数据集合。大数据概念不再只是数据,大数据已经成为一个全面的主题概念,包含各类工具、技术以及框架。 大数据包括各类信息设备以及应用程序所产生的数据。大数据所涵盖的一些数据领域如下: 黑盒子数据:是指直升机、普通飞机及喷气式飞机等的组成部分。该数据采集了飞行机组人员的声音、麦克风和耳机的录音以及飞机的性能信息。 社... 阅读详情

Hadoop简介

Hadoop 的思想之源:Google 第一遇到大数据计算问题的公司
Openstack :NASA

面对的数据和计算难题
- 大量的网页怎么存储
- 搜索算法
带给我们的关键技术和思想(Google三大理论)
- GFS 文件存储
- Map-Reduce 计算
- Bigtable

创始人:Doug cutting

 

Hadoop简介:http://hadoop.apache.org
分布式存储系统HDFS (Hadoop Distributed File System )POSIX
     分布式存储系统
     提供了 高可靠性、高扩展性和高吞吐率的数据存储服务
分布式计算框架MapReduce
    分布式计算框架(计算向数据移动)
    具有 易于编程、高容错性和高扩展性等优点。
分布式资源管理框架YARN(Yet Another Resource Management)
    负责集群资源的管理和调度
    
版本:1.x,2.x,3.x
 

Hadoop 分布式文件系统HDFS

存储模型:字节
文件线性切割成块(Block):偏移量 offset (byte, 中文)
block分散存储存储在集群节点中
单一文件Block大小一致,文件与文件可以不一致
Block可以设置副本数,副本无序分散在不同节点中(默认是3个)
副本数不要超过节点数量
文件上传可以设置Block大小和副本数(资源不够开辟的进程)
已上传的文件Block副本数可以调整,大小不变
2.x 128MB Block 默认Block为128M,可以人为设置,最小1M,
只支持一次写入多次读取,同一时刻只有一个写入者
可以append追加数据

架构模型 主从模型

文件元数据MetaData, 文件数据
元数据:metedata size offset
主节点负责管理元数据
从节点负责处理具体的文件数据,即块文件
NameNode 主节点保存文件元数据:单节点posix
DataNode 从节点保存文件Block数,多数据
DataNode 与NameNode1报错心跳, DataNode向NameNode提交Block列表
HdfsClient与NameNode交互元数据信息
HdfsClient与DataNode交互文件Block数据(cs架构)
DataNode利用服务器本地文件系统存储数据块

Hadoop架构
在这里插入图片描述

在这里插入图片描述

内存存储持久化

NameNode(NN)

基于内存存储:不会和磁盘发生交换(双向)
- 值存在内存中
- 持久化 单向 => 写入磁盘

NameNode主要功能:
- 接受客户端的读写服务
- 收集DataNode汇报的Block列表信息

NameNode保存metadata信息包括
- 文件owership和 permissions
- 文件大小,时间
- (Block列表:Block偏移量), 位置信息(持久化不存)
- Block每个副本位置(有DataNode上报)

NameNode持久化的两种方式 fsimage 和 edits

fsimage 写入磁盘时慢,从磁盘恢复到内存中快
- NameNode的metadata信息在启动后会加载到内存中
- 磁盘镜像快照 内存—》序列化 — 》 二进制文件
- metadata 存储到磁盘文件名 “fsimage”(时点备份 )
- 从二进制文件反序列化成对象恢复到内存中
- Block的位置信息不回保存到fsimage

edits 写入磁盘时快,从磁盘恢复时慢
- edits记录对metadata的操作日志 .存储所有操作记录
- 按照操作记录重新执行一遍从而变成内存中数据

所以二者需要结合使用
在系统第一次搭建完成后此时还没有跑起来时会格式化, 就会产生第一 fsimage 文件, 空的fsimage文件,启动hadoop时读取空的fsimage文件时会产生一个空的edits_log文件,此时edits和fsimage会进行合并生成一个新的fsimage文件,以后不管重启多少次fsimage文件将不会再改变,只是对edits文件增长,但是不能任由edits文件增长,此时需要在达到一定条件后再对edits和fsimage文件做合并,生成新的fsimage,充分发挥两者优势

此时需要SecondaryNameNode(SNN) Hadoop1.0
它不是NN的备份(但可以做备份), 它的主要工作就是帮助NN合并editslog,减少NN启动时间
SNN执行合并时机:
- 根据配置文件设置的时间间隔fs.checkpoint.period 默认是3600s
- 根据配置文件设置editslog的大小,fs.checkpoint.size 规定edits文件的最大值, 默认是64MB

在这里插入图片描述

DataNode(DN)
- 本地磁盘目录存储数据(Block),文件形式
- 同时存储Block的元数据信息文件(此处的元数据是指存储数据Block的md5值,确保文件的正确性完整性,如果不正确,则去另外的DN去寻找这个文件的备份)
- 启动DN时回想NN汇报block信息
- 通过向NN发送心跳保持与其联系(3s一次),如果NN10分钟没有收到DN的心跳,则认为其已经lost, 并copy其上的block到其他DN上,恢复到默认的副本数
为啥是10分钟?
DN数据较大,给10分钟有可能进行恢复工作,避免进行频繁的拷贝

HDFS优点

 

HDFS缺点

    • 高容错性
      • 数据自动保存
      • 副本丢失后,自动恢复
    • 适合批处理
      • 移动计算而非数据
      • 数据位置暴露给计算框架(Block偏移量)
    • 适合大数据处理
      • GB,TB,甚至PB级数据
      • 百万规模以上的文件数量
      • 10K+节点
    • 可构建在廉价机器上
      • 通过多副本提高可靠性
      • 提供了容错和恢复机制

     

    Block的副本放置策略

    在这里插入图片描述

    第一个副本:放置在上传文件的DN;如果是集群外提交,则随机挑选一台磁盘不太满,CPU不太忙的节点。
    第二个副本:放置在于第一个副本不同的 机架的节点上。
    第三个副本:与第二个副本相同机架的其他节点。
    更多副本:随机节点

    HDFS写流程
    在这里插入图片描述

    HDFS写流程

    读流程
    在这里插入图片描述

    HDFS读流程

    HDFS文件权限 POSIX标准(可移植操作系统接口)

    安全模式
    namenode启动的时候,首先将映像文件(fsimage)载入内存,并执行编辑日志(edits)中的各项操作。
    一旦在内存中成功建立文件系统元数据的映射,则创建一个新的fsimage文件(这个操作不需要SecondaryNameNode)和一个空的编辑日志。
    此刻namenode运行在安全模式。即namenode的文件系统对于客服端来说是只读的。(显示目录,显示文件内容等。写、删除、重命名都会失败,尚未获取动态信息)。
    在此阶段Namenode收集各个datanode的报告,当数据块达到最小副本数以上时,会被认为是“安全”的, 在一定比例(可设置)的数据块被确定为“安全”后,再过若干时间,安全模式结束
    当检测到副本数不足的数据块时,该块会被复制直到达到最小副本数,系统中数据块的位置并不是由namenode维护的,而是以块列表形式存储在datanode中。

    集群
    角色==进程

     

      • 低延迟数据访问
        • 比如毫秒级
        • 低延迟与高吞吐率
      • 小文件存取
        • 占用NameNode大量内存
        • 寻道时间超过读取时间
      • 并发写入,文件随机修改
        • 一个文件只能有一个写者
        • 仅支持append
      • Client:
        • 切分文件Block
        • 按Block线性和NN获取DN列表(副本数)
        • 验证DN列表后以更小的单位流式传输数据
          - 各节点,两两通信确定可用
        • Block传输结束后:
          - DN向NN汇报Block信息
          - DN向Client汇报完成
          - Client向NN汇报完成
        • 获取下一个Block存放的DN列表
          。。。。。。
        • 最终Client汇报完成
        • NN会在写流程更新文件状态
      • Client:
        • 和NN获取一部分Block副本位置列表
          线性和DN获取Block,最终合并为一个文件
          在Block副本列表中按距离择优选取
          MD5验证数据完整性
      • 与Linux文件权限类似
        • r:read w:write x:execute
        • 权限x对于文件忽略,对于文件夹表示是否允许访问其内容
      • 如果linux系统用户zhangsan使用hadoop命令也创建一个文件,那么这文件在HDFS中的owner就是zhangsan
      • HDFS的权限目的:阻止误操作,但不绝对,HDFS相信,你告诉我你是谁,我就认为你是谁
      • namenode
        • 数据元数据
          内存存储,不会有磁盘交换
          持久化(fsimage,edits log)
          不会持久化block的位置信息
          block:偏移量,因为block不可以调整大小,hdfs,不支持修改文件
          偏移量不会改变
      • datanode
        • block块,md5
          磁盘
          面向文件,大小一样,不能调整
          副本数,调整,(备份,高可用,容错/可以调整很多个,为了计算向数据移动)
      • SN 只在hadoop1.x版本中有
      • NN&DN
        • 心跳机制
          DN向NN汇报block信息
          安全模式
      • client
        Client:
        写
        线性上传block
        先和NN通信,元数据,获取第一个block的节点信息(3副本,选择机制)
        和DN通信:pipeline:C和1stDN有socket,1stDN和2edDN有socket。。。。
        小片传输:4K,C给1stDN,1stDN同时本机缓存,瞬间放入下游socket中
        当block传输完毕:block自身的网络I/O时间,时间线重叠的艺术
        DN会向NN汇报自己新增的block
        C向NN汇报blockX传输完成给我下一个block节点信息
        全部传输完成,NN更新元数据状态可用
        读
        线性读取block,不会有并发,只有一个网卡
        距离:择优选取同机架,同节点
        NN每次只给一部分block信息
Hadoop技术详解 Hadoop是一个开源的分布式系统框架,主要用于大规模数据的存储和处理。其核心组件包括HDFS分布式文件系统、MapReduce计算框架和YARN资源管理器。HDFS采用主从架构设计,包含NameNode管理元数据、DataNode存储实际数据块,支持大文件分割存储和副本机制。MapReduce提供并行处理能力,通过Map、Shuffle和Reduce阶段处理数据。YARN负责集群资源调度和管理。此外,Hadoop生态系统还包括HBase、Hive等组件,分别提供实时数据存储和SQL查询功能。本文详细剖析了 阅读详情

相关推荐

Hadoop技术优缺点详解

给大家介绍一下关于Hadoop技术的优缺点,目前我们正被数据包围,全球43亿部电话、20亿位互联网用户每秒都在不断地产生大量数据,人们发送短信给朋友、上传视频、用手机拍照、更新社交网站的信息、转发微博、点击广告等,使得机器产生和保留了越来越多的数据。数据的指数级增长对处于市场领导地位的互联网公司,如Facebook、谷歌、雅虎、亚马逊、腾讯等提出了挑战。它们需要对TB级别和PB级别的数据进行分析处...

大数据开发 2070

HDFS.

基本概念 Block 1.Block是HDFS中数据存储的基本形式,即在HDFS中,所有数据都是以Block形式来存储 2.从Hadoop2.x开始,如果不指定,那么Block的默认大小是134217728B(128M)。可以通过dfs.blocksize来修改,单位是字节 3.如果一个文件不足一个Block的默认大小,那么这个文件是多大,所对应的Block就是多大。例如一个文件是50M,上传到HDFS上之后对应的Block就是50M 4.HDFS会为每一个Block分配一个递增的编号,称之为BlockId

孤鸿的博客 2016

Hadoop技术原理

MapReduce思想在生活中处处可见。或多或少都曾接触过这种思想。MapReduce的思想核心是“分而治之”,适用于大量复杂的任务处理场景(大规模数据处理场景)。即使是发布过论文实现分布式计算的谷歌也只是实现了这种思想,而不是自己原创。Map负责“分”,即把复杂的任务分解为若干个“简单的任务”来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系。Reduce负责“合”,即对map阶段的结果进行全局汇总。MapReduce运行在yarn集群。

qq_45972323的博客 1100

大数据技术之Hadoop

大数据技术之Hadoop

我从不打没有准备的仗! 1万+

PythonWeb开发框架—Django之工程创建和models的定义和增删改查

文章介绍了Django工程的创建、models的定义和增删改查

weixin_42476668的博客 990

技术美术个人笔记(十六)——Houdini到UE的大地形

文章目录关于地形白模制作关于PDG流程 关于地形白模制作 用heightfield noise和笔刷刷出合适的mask做山形叠加: 用remap可快捷反转mask ,用来做平原地区的小型丘陵: 接着用clip切平最低处,用distort制造侵蚀等,对部分地区用笔刷进行微调拓宽峡谷: 用经过sweep打平的曲线以及裁切的各种多面体用heightfield_project投影制作河道和水池,用blur mask并remap的方法拓宽河道 用distort、erode制造合适的弯曲和侵蚀,同理可挖出月牙形

小谁的博客 3178

大数据技术---Hadoop

一、Hadoop简介 Hadoop是apache软件基金会下的开源软件。支持多种编程语言(c,c++,python,java等)。 Hadoop两大核心:HDFS+MapReduce,海量数据的存储和海量数据的处理。 谷歌大数据的发展:2003年,发布了分布式文件系统GFS(google file system);2004年,发布了分布式并行编程框架MapReduce。 Hadoop特性: 1、高可靠性:多台机器构成集群,部分机器发生故障,剩余机器可以继续对外提供服务。 2、高效性:成百上千的机器并行计算。

qq_43752469的博客 3674

信息奥赛课课通(C++)p154-1近似排序

试题描述 读入一对正整数,将这两个数之间(包括这两个数本身)的所有数按下述特别规则排序后输出,该特别规则是按两数倒过来的值进行比较决定其大小,如30倒过来为3,29倒过来为92,则29大于30. 输入要求 1行,包含两个用空格隔开的自然数,这两个自然数给出了待排序数的范围,其中1≤第一个数≤第二个数≤999999999,两个数之差不超过100. 输出要求 输出排序后的数据,每行输出...

mengdicfm的博客 7280

Hadoop 技术详解:架构、应用与未来发展

随着互联网的快速发展,数据量呈现爆炸式增长,传统的集中式计算和存储方式无法有效应对这些大规模数据的处理需求。为了解决这一问题,Google 在 2003 年发布了三篇具有革命性的论文:《Google File System》(GFS)、《MapReduce: Simplified Data Processing on Large Clusters》和《Bigtable: A Distributed Storage System for Structured Data》。

hello.reader 5501

告别专业软件!用QGIS+GDAL免费搞定S-57电子海图,附全套符号库和样式文件

本文详细介绍了如何利用免费开源工具QGIS和GDAL处理S-57电子海图,包括数据转换、符号库配置和专业可视化方案。通过实战指南,用户无需依赖昂贵的商业软件,即可实现从S-57到SHP的转换及专业级海图制作,特别适合预算有限的个人和小型机构。

weixin_33701294的博客 391

云安全技术——搭建VPN

VPN(Virtual Private Network)是一种可以在公共网络上建立安全连接的技术。VPN是实现保密通信的基本手段,在windows系统上,可以直接进行VPN服务的搭建。1.VPN的工作原理:通过使用加密协议和认证机制,将本地计算机和远程服务器之间的通信加密和保护。2.VPN的分类:根据不同的方式和用途,VPN可以分为不同类型,例如远程访问VPN、站点到站点VPN等。3.VPN的优势:VPN可以带来许多好处,如提高数据安全性、隐藏真实IP地址、突破地理限制等。4.

qq_53142796的博客 3万+

hadoop的技术概述

HDFS是以分布式进行存储的文件系统,主要负责集群数据的存储与读取。分布式系统可以划分成多个子系统或模块,各自运行在不同的机器上,子系统或模块之间通过网络通信进行协作,以实现最终的整体功能。利用多个节点共同协作完成一项或多项具体业务功能的系统即为分布式系统。HDFS作为一个分布式文件系统,其分布式主要体现在如下3个方面。

fuhffn的博客 1957

MacBook用户必看:用Homebrew一键搞定frp内网穿透(含阿里云配置模板)

本文为MacBook用户提供基于Homebrew的frp内网穿透实战指南,详细介绍了从环境准备到阿里云服务器配置的全过程。通过Homebrew一键安装frp客户端,结合阿里云配置模板,实现高效稳定的内网穿透,适用于远程开发、IoT设备调试等多种场景。

weixin_28692817的博客 321

Hadoop生态圈:Hadoop技术入门书单

在大数据开源系统框架当中,Hadoop始终是一个值得关注的重点,经过这么多年的发展,Hadoop依然占据着重要的市场地位。学大数据,必学Hadoop,也说明了Hadoop在大数据当中的重要性。今天给大家带来一份Hadoop技术入门书单推荐。 Hadoop作为最早一代的大数据处理技术框架,很多企业最初开始搭建大数据系统框架,都是基于Hadoop来实现的,并且因为Hadoop技术生态圈体系成熟,更加巩固了Hadoop的地位。 Hadoop技术入门书单: 《Hadoop权威指南》 这本书可以说Hado

shuimuzh123的博客 994

使用 PLS 回归进行近红外光谱的异常值检测

在光谱数据中,并非每个数据点都是有效的,因此,在构建模型时找到与大部分数据不符合的数据点是一种必要的操作。这些数据我们称之为。在这篇文章中,我们将使用PLS回归进行红外光谱数据的异常值检测。

qq_44204759的博客 1422

【ODX介绍】-5-用于Flash刷写的ODX-F文件概述

用于Flash刷写的ODX-F文件概述

「汽车电子助手」的博客 2531

Hadoop核心技术知识总结

Hadoop核心技术的课程总结主要涵盖了Hadoop的基本概念、核心技术模块以及其在大数据处理领域的优势和应用。首先,Hadoop是一个由Apache基金会开发的分布式系统基础架构,主要用于解决大数据集的存储和计算分析问题。它使用Java语言开发,具有跨平台性,并且是开源的。Hadoop运行在廉价机器上,并考虑到机器故障是常态,因此具有高可靠性和容错性。它利用集群的CPU的并发和计算能力,提供了高性能的处理能力。

m0_74198026的博客 2380

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

hadoop技术内幕_Hadoop生态圈:Hadoop技术入门书单

在大数据开源系统框架当中,Hadoop始终是一个值得关注的重点,经过这么多年的发展,Hadoop依然占据着重要的市场地位。学大数据,必学Hadoop,也说明了Hadoop在大数据当中的重要性。今天给大家带来一份Hadoop技术入门书单推荐。Hadoop作为最早一代的大数据处理技术框架,很多企业最初开始搭建大数据系统框架,都是基于Hadoop来实现的,并且因为Hadoop技术生态圈体系成熟,更加巩固...

weixin_39980809的博客 128

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Hadoop生态圈技术概述

装完hadoop2.6.0-cdh5.5.2后put命令不好使,并且装完hive后导入本地数据也报错,put命令一直报这个错: hadoop@debian:~$ hadoop fs -put he.tt /aaa 17/01/02 23:37:52 WARN hdfs.DFSClient: DataStreamer Exception org.apache.hadoop.ipc.RemoteE

小强签名设计 的博客 4315

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

hadoop的同类技术_除Hadoop大数据技术外,还需了解的九大技术

除Hadoop外的9个大数据技术:1.Apache Flink2.Apache Samza3.Google Cloud Data Flow4.StreamSets5.Tensor Flow6.Apache NiFi7.Druid8.LinkedIn WhereHows9.Microsoft Cognitive ServicesHadoop是大数据领域最流行的技术,但并非唯一。还有很多其他技术可用于...

weixin_39626369的博客 527

深入探索 Hadoop 核心技术

Hadoop 是一个开源的分布式计算平台,由 Apache 软件基金会开发和维护。它的设计初衷是为了能够在大规模廉价硬件集群上可靠地存储和处理海量数据,具有高可扩展性、容错性和高效性等特点。Hadoop 生态系统包含了多个组件,其中最核心的是 Hadoop 分布式文件系统(HDFS)和 MapReduce 计算模型。​​​​​​​Hadoop 的核心技术 HDFS 和 MapReduce 为处理海量数据提供了强大的支持。

2302_81070375的博客 849

大数据处理技术之hadoop概览

上两个图,可以对热到极致的大数据处理技术有一个基本的认识 大数据处理技术之演进 大数据处理技术之软件族: hadoop 1 hadoop2 相关软件下面简介: 1 Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。     官网:http://hadoop.apache.org/ 2 HDFS: Hadoop

深入理解PostgreSQL 8413

Hadoop精华问答 | 关于Hadoop核心技术的精华问答

戳蓝字“优快云云计算”关注我们哦!随着科技时代的发展,大数据与云计算已势不可挡的架势席卷未来,不可否认,大数据时代已经来临,并将深刻地改变着我们的工作和生活。学习大数据...

优快云云计算 361

hadoop的同类技术_除了Hadoop你还知道哪些大数据技术?

原标题: 除了Hadoop你还知道哪些大数据技术?【黑客联盟2016年09月28日讯】众所周知,大数据正在以惊人的速度增长,几乎触及各行各业,许多组织都被迫寻找新的创造性方法来管理和控制如此庞大的数据,当然这么做的目的不只是管理和控制数据,而是要分析和挖掘其中的价值,来促进业务的发展。 想要深入发展大数据,闭门造车是不可能的,共通共融是现在趋势,因此,开源让越来越多的项目可以直接采用大数据技术。如...

weixin_39720510的博客 991
上一篇: Hadoop哲学
下一篇: Kafka0.8.2.1删除topic逻辑
wrr-cat
博客等级 码龄9年 128粉丝 302原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值