首页 > 其他分享 >24-暑假软件工程周报(6)

24-暑假软件工程周报(6)

时间:2024-08-10 22:49:28浏览次数:10  
标签:24 HDFS DN NN 文件 软件工程 暑假 block 客户端

HDFS主要包括NameNode、DataNode、SecondaryNameNode,在HDFS中主要进行的是数据的存取,而在MapReduce中进行的是数据的处理。总结一下它们的过程如下:

HDFS的读流程:当客户端发送读请求后,通过DistributedFileSystem API调用open函数,发送请求到NN节点获得block的位置信息,NN返回block的位置信息,客户端收到后开始读。通过新的FSDataInputStream API 并发的读各个block,读完之后关闭流,最后在客户端形成统一的文件。

HDFS的写流程:客户端通过DistributedFileSystem API 调用create方法创建一个文件,发送请求给NN,同时将文件名、文件大小、文件的拥有者信息发送给NN,NN根据文件大小确定需要切成多少个block块,这些block块分布在哪些DN上等信息返回给客户端。客户端根据FSDataOutputStream API 将一个block写到一个DN上,由DN创建线程按照副本放置原则将block复制到其他DN上,然后返回给客户端一个回馈信息,客户端上传完成后再汇报给NN,NN返回给客户端上传成功的信息。

MR的处理流程:将HDFS中的原始数据通过split切成数据片段(通常情况下一个split对应一个block块),每一个split由一个map task线程执行,map以key value的形式将结果输出给shuffer,在shuffer中进行合并和排序,key值相同的在一个数据块中,然后将数据传给reduce执行,reduce产生最终的结果。

在该过程中需要注意的问题主要有:在HDFS的读流程中由于每个block默认有三个副本,客户端在读的过程中是随机的读其中的一个副本,同时并发的读其他的block。在HDFS的写流程中需要特别注意的一点是block的复制是不需要客户端进行操作的,是DN自己进行复制。

分布式文件系统HDFS命令
HDFS操作命令帮助:
所有的hdfs命令都是以hadoop fs开头
HDFS的shell命令在线帮助
1.hadoop fs
使用此命令可以查看HDFS的所有常用命令语法
2.hadoop fs help
使用此命令可以查看HDFS的所有常用命令语法
3. hadoop fs –help 命令
查看某个命令的具体功能

HDFS的fs命令
-help [cmd] //显示命令的帮助信息
-ls( r) <path> //显示当前目录下所有文件
-du(s) <path> //显示目录中所有文件大小
-count[-q] <path> //显示目录中文件数量
-mv <src> <dst> //移动多个文件到目标目录
-cp <src> <dst> //复制多个文件到目标目录
-rm(r ) //删除文件(夹)
-put <localsrc> <dst> //本地文件复制到hdfs
-copyFromLocal //同put
-moveFromLocal //从本地文件移动到hdfs
-get [-ignoreCrc] <src> <localdst> //复制文件到本地,可以忽略crc校验
-getmerge <src> <localdst> //将源目录中的所有文件排序合并到一个文件中
-cat <src> //在终端显示文件内容
-text <src> //在终端显示文件内容
-copyToLocal [-ignoreCrc] <src> <localdst> //复制到本地
-moveToLocal <src> <localdst>
-mkdir <path> //创建文件夹
-touchz <path> //创建一个空文件

标签:24,HDFS,DN,NN,文件,软件工程,暑假,block,客户端
From: https://www.cnblogs.com/kuandong24/p/18352894

相关文章

  • Linux:@2024-08-10 最新的Openssl-3.3.1 Openssh-9.8p1 Centos7上的编译后二进制 一键
     附件:Portable_Openssl-Openssh9.8p1-bin-el7.v1.2.1.tgz.zip特点:适用于centos7.x 已经编译为二进制对老版本的关键二进制文件sshd、sftp、scp、openssl进行了备份升级前,自动打开一个端口为2222的老版本的sshd服务,你可以连接那个2222的服务,以防死翘翘。对sshd_config进......
  • 2024杭电多校第7场
    71007创作乐曲(hdu7511)妙妙dp题,赛时wyq一眼丁真、发现可以线段树优化dp,可惜我们没推出关键性质,最后TLE遗憾离场。在每个最优子乐曲中,音符\(i\)的后继音符只有两种可能:\(a[p]-a[i]\leqk\)中距离\(i\)最近的\(p\),或者\(a[i]-a[q]\leqk\)中距离\(i\)最近的\(q......
  • FL Studio水果编曲软件 24.1.1.4239中文版
    水果编曲软件FLStudio 24.1.1.4239中文版是一款官方推出的新版本的音乐编曲方面的软件工具,特别适合喜欢音乐的童鞋,大家可以制作属于自己的音乐作品,童鞋们还不快快来U大师下载使用啦!!FLStudio简称FL,全称FruityLoopsStudio,因此国人习惯叫它"水果"。目前新版本是FLStud......
  • 2024 Aug
    ABC366[ProblemA]Election2有\(N\)个人投票选举,两位候选人Takahashi与Aoki分别获得\(T\)票与\(A\)票,请问此时能否确定谁将赢得选举?\(0\leqT,A,T+A\leqN\leq99\),且\(N\)为奇数。设\(M=\dfrac{N+1}{2}\),则判断\(T,A\)是否有一个大于等于\(M\)即可。[......
  • [考试记录] 2024.8.10 csp-s 模拟赛18
    80+20+0+70=170第三题应该有10分暴力的,但我没打。T1星际旅行题面翻译总共有n个节点,m条路径,要求其中m-2条路径走两遍,剩下2条路径仅走一遍,问不同的路径总数有多少,如果仅走一遍的两条边不同则将这两条路径视为不同。样例#1样例输入#15412131415样例输......
  • [rCore学习笔记 024]多道程序与协作式调度
    写在前面本随笔是非常菜的菜鸡写的。如有问题请及时提出。可以联系:[email protected]:https://github.com/WindDevil(目前啥也没有本节重点主要是对 任务 的概念进行进一步扩展和延伸:形成任务运行状态:任务从开始到结束执行过程中所处的不同运行状态:未初始化、准备......
  • 暑假学习Java第六周
    这周我学习了cmd的基础语言,在Java编程语言中,"CMD"主要指的是命令行接口,它允许开发者通过命令行窗口执行各种操作系统级的任务。Java标准类库中提供了一些用于在命令行界面中执行命令的类和接口,最主要的是 Runtime 类和 ProcessBuilder 类。这些类使得从Java应用程序中启动其......
  • 2024护网必看!日薪一千!怎么才能搞定(附零基础学习资料)
    前言你听说过护网吗?就是那个日薪1000——20000,食宿全包,干一个月顶半年,公安部牵头,用来评估企事业单位网络安全的活动!是不是有很多小伙伴已经心动了?要不我展开说说什么是护网行动?护网行动是一项由公安部牵头的,以检测企事业单位的网络安全防护能力为目的,针对全国范围......
  • 矢量图形设计软件:Illustrator 2024(AI)中文激活版(附安装包)
    一、简介AdobeIllustrator是一款专业的矢量图形编辑软件,主要用于:图形设计:包括标志设计、图标设计、插画创作、海报设计等。排版印刷:用于制作宣传册、书籍排版、名片等需要高质量输出的印刷品。网页设计元素:创建适合网页使用的矢量图形元素和界面设计。艺术创作:许多艺术家利......
  • Adobe Illustrator 2024 (macOS, Windows) - 矢量绘图下载
    一、AI软件简介AI(AdobeIllustrator)是一款广泛应用于图形设计、插画制作、标志设计等领域的专业矢量图形编辑软件。它以其强大的功能和灵活性,成为设计师们的重要工具之一。AI软件可以创建高质量的矢量图形,这些图形可以无限放大而不会失真。它提供了丰富的绘图工具、字体处......