hadoop上传文件命令 hadoop菜鸟教程

HDFS是一个文件系统,通过一个统一命名的空房间来存储文件–定位文件的目录;其次,它是分布式的,很多服务器组合起来实现它的功能。集群中的服务器有自己的角色。HDFS设计思路:分而治之:将大文件和批量文件以分布式的方式存储在大量的服务器中,以方便对海量数据进行分...

HDFS是一个文件系统,通过一个统一命名的空房间来存储文件–定位文件的目录;其次,它是分布式的,很多服务器组合起来实现它的功能。集群中的服务器有自己的角色。

HDFS设计思路:分而治之:将大文件和批量文件以分布式的方式存储在大量的服务器中,以方便对海量数据进行分而治之的操作和分析。?

在大数据系统中的作用:对于各种分布式计算框架(如***preduce、spark、tez、…。)提供数据存储服务。

关键概念:文件剪切、副本存储、元数据。

HDFS的重要特色:

HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数(dfs.blocksize)来规定,默认大小在hadoop2.x版本中是128M,老版本中是***M;HDFS文件系统会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/file.data;目录结构及文件分块信息(元数据)的管理由namenode节点承担——-namenode是HDFS集群主节点,负责维护整个hdfs文件系统的目录树,以及每一个路径(文件)所对应的block块信息(block的id。及所在的datanode服务器);文件的各个block的存储管理由datanode节点承担———–namenode是HDFS集群从节点,每一个block都可以在多个dataname上存储多个副本(副本数量也可以通过参数设置dfs.replication);

HDFS是为了适应一次写入一次读出的场景而设计的,不支持文件修改(注:适用于数据分析,不适用于网盘应用,因为修改不方便,延迟大,网络开销大,成本高)。

原版HDFS

工作机制:

工作机制的学习主要是加深对分布式系统的理解,增强分析和解决各种问题的能力,从而形成一定的集群运维能力。注:很多不是真正了解hadoop技术体系的人,往往认为HDFS可以用于网盘应用,其实不然。想要在正确的地方准确的使用技术,就必须对技术有深刻的理解。

1概述

HDFS集群分为两大角色:NameNode、DataNodeNameNode负责管理整个文件系统的元数据DataNode负责管理用户的文件数据块文件会按照固定的大小(blocksize)切成若干块后分布式存储在若干台datanode上每一个文件块可以有多个副本,并存放在不同的datanode上DataNode会==定期==向NameNode汇报自身所保存的文件block信息,而namenode则会负责保持文件的副本数量HDFS的内部工作机制对客户端保持透明,客户端请求访问HDFS都是通过向namenode申请来进行

2 HDFS写数据流

要向HDFS写入数据,客户端首先要与namenode进行通信,确认可以写入文件,并获取接收文件块的datanode,然后客户端将文件按顺序逐个传输到对应的datanode,接收块的datanode负责将块的副本***到其他datanode。

这里,文件剪切是在客户端实现的,而不是NameNode。客户端也将文件传输到指定的datanode,datanode将副本传输到其他datanode。?

详细步骤(重要):

跟namenode通信请求上传文件,==namenode检查目前文件是否已存在,父目录是否存在==namenode返回是否可以上传client请求第一个block该传输到哪些datanode服务器上(副本)namenode返回3个datanode服务器ABC(假如副 本数为3。优先找同机架的,其次不同机架,再其次是同机架的再一台机器。还会根据服务器的容量,)client请求3台datanode中的一台A上传数据==(本质上是一个RPC调用,建立pipeline)==,A收到请求会继续调用B,然后B调用C,将整个pipeline建立完成,逐级返回客户端client开始往A上传第一个block(先从磁盘读取数据放到一个本地内存缓存),以packet为单位,A收到一个packet就会传给B,B传给C;A每传一个packet会放入一个应答队列等待应答。当一个block传输完成之后,client再次请求namenode上传第二个block的服务器。

3.HDFS数据读取过程

概述:

客户端将待读取文件的路径发送给namenode,namenode获取文件的元信息(主要是块的存储位置信息)并返回给客户端。客户端根据返回的信息,找到对应的datanode,逐个获取文件块,在客户端对数据进行添加和合并,得到整个文件。

详细的步骤分析:

与namenode通信查询元数据,找到文件块所在的datanode服务器,选择一个datanode(邻近原则,然后随机)服务器,请求建立套接字流。DataNode开始发送数据(从磁盘读取数据并将其放入流中,并以包为单位进行检查)。客户端以包为单位接收它,在本地缓存它,然后将其写入目标文件。?

NAMENODE工作机制

学习目标:了解namenode的工作机制,尤其是元数据管理机制,从而增强对HDFS工作原理的理解,培养hadoop集群操作”性能调整”、”namenode & # 8221分析和解决问题的能力。

职责:

NAMENODE职责:负责客户端请求的响应元数据的管理(查询、修改)元数据管理:namenode对数据的管理采用了三种存储形式:内存元数据(NameSystem)磁盘元数据镜像文件(fsi***ge)数据操作日志文件(edits.xml)可通过日志运算出元数据

元数据存储机制(重要):

a、内存中有一个完整的元数据(memory metadata)

b、磁盘有一个”准完全”的元数据fsi***ge文件(在namenode的工作目录中)

c,操作日志(编辑文件)用于连接内存元数据和持久元数据镜像fsi***ge。

注意:当客户端在hdfs中添加或修改文件时,首先会在edits日志文件中记录操作记录,在客户端操作完成后,相应的元数据会更新到memory meta.data。

元数据的手动视图

可以通过hdfs的一个工具查看HDFS OEV-编辑-oedits . xmlhdfsoiv-I fs i***ge _ 00000087-pXML-o fs i***ge . XML的信息。

输入文件:要查看的fsi***ge文件

outputfile:

用来保存格式化文件的进程:解码用什么进程,XML | Web | & # 8230

Datanode工作职责:

存储管理用户的文件块数据定期向namenode汇报自身所持有的block信息(通过心跳信息上报)(这点很重要,因为当集**生某些block副本失效时,集群如何恢复block初始副本数量的

本文来自青灯黄卷伴你久投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/591594.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 06-14
下一篇 06-14

相关推荐

  • 微信摇一摇传图功能 微信朋友圈上传原图的步骤

    详细解释一下拥有超级震撼大屏效果的微信的首发仪式是如何被撼动的。启动仪式是许多活动的重要组成部分。一些传统的启动仪式可能主要由参与启动仪式的嘉宾来完成,对于现场的普通大众来说没有太大的参与感。但是云交互平台的微信可以通过摇一摇启动仪式完美解决这个问题。微信

    2023-07-24 18:52:01
    846 0
  • 山姆亲友卡要上传照片吗

    1.山姆会员是一个受欢迎的会员超市。只有会员自己可以去购物。一般来说,不能去购物的Sam会员卡分为主卡和副卡。子卡和主卡一样,是Sam子卡,需要注册姓名,上传照片。需要登记姓名和照片吗?山姆会员卡的子卡;可以,但是只有会员卡才能买东西。穿着它到处逛逛也是可以的。可

    2023-07-20 00:26:01
    421 0
  • 135编辑器可上传多大图片详情

    可以用小蚂蚁编辑器,最多可以上传8M高清大图。你好,这个你肯定是要把这图片自己调整下尺寸 或者是把这个图片压缩下,把这个尽量的压缩文件到5M以下的 否则你这个是上传不上去的啦也不能用的,可以使用美图秀秀或者是魔术师这样的软件 来把这个压缩或者是像素调低一点。图片

    2023-07-13 03:23:01
    346 0
  • spring文件上传怎么实现 springmvc文件上传教程

    SpringMVC实现文件上传文件上传知识复习文件上传的必要先决条件导入通过文件上传的jar包以传统方式上传文件跨服务器上传文件可能的问题文件上传知识复习文件上传的必要先决条件1.表单form的enctype值必须为:multipart/form-data(默认值为:application/x-***-form-urlencoded)

    2023-07-10 13:35:01
    1039 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信