当前位置:首页 > 实用技巧 >

hdfs小文件的处理(hdfs的文件写入步骤)

来源:原点资讯(www.yd166.com)时间:2023-11-28 11:25:24作者:YD166手机阅读>>

一、背景

每个文件均按块存储,每个块的元数据存储在NameNode的内存中,因此hdfs存储小文件会非常低效。因为大量的小文件会耗尽namenode中的大部分内存。但注意,存储小文件所需要的磁盘容量和数据块的大小无关。每个块的大小可以通过配置参数(dfs.blocksize)来规定,默认的大小128M。例如,一个1MB的文件设置为128MB的块存储,实际使用的是1MB的磁盘空间,而不是128MB。

hdfs小文件的处理,hdfs的文件写入步骤(1)


hadoop 高可用环境部署,可参考我之前的文章:

1)小文件是如何产生的?
  • 动态分区插入数据,产生大量的小文件,从而导致 map 数量剧增;
  • reduce 数量越多,小文件也越多,reduce 的个数和输出文件个数一致;
  • 数据源本身就是大量的小文件;
2)文件块大小设置

同样对于如何设置每个文件块的大小,官方给出了这样的建议:

hdfs小文件的处理,hdfs的文件写入步骤(2)

所以对于块大小的设置既不能太大,也不能太小,太大会使得传输时间加长,程序在处理这块数据时会变得非常慢,如果文件块的大小太小的话会增加每一个块的寻址时间。所以文件块的大小设置取决于磁盘的传输速率。

3)HDFS分块目的

HDFS中分块可以减少后续中MapReduce程序执行时等待文件的读取时间,HDFS支持大文件存储,如果文件过大10G不分块在读取时处理数据时就会大量的将时间耗费在读取文件中,分块可以配合MapReduce程序的切片操作,减少程序的等待时间。

二、HDFS小文件问题处理方案

hdfs小文件的处理,hdfs的文件写入步骤(3)


HDFS中文件上传会经常有小文件的问题,每个块大小会有150字节的大小的元数据存储namenode中,如果过多的小文件每个小文件都没有到达设定的块大小,都会有对应的150字节的元数据,这对namenode资源浪费很严重,同时对数据处理也会增加读取时间。对于小文件问题,Hadoop本身也提供了几个解决方案,分别为:Hadoop ArcHive,Sequence File和CombineFileInputFormat,除了hadoop本身提供的方案,当然还有其它的方案,下面会详细讲解。

1)Hadoop Archive(HAR)

Hadoop Archive(HAR) 是一个高效地将小文件放入HDFS块中的文件存档工具,它能够将多个小文件打包成一个HAR文件,这样在减少namenode内存使用的同时,仍然允许对文件进行透明的访问。

hdfs小文件的处理,hdfs的文件写入步骤(4)

首页 1234下一页

栏目热文

hdfs 文件分割不完整(hdfs小文件处理方法)

hdfs 文件分割不完整(hdfs小文件处理方法)

阅读此文前,麻烦您点击一下“关注”,既方便您进行讨论与分享,又给您带来不一样的参与感,感谢您的支持。求关注一、HDFS读...

2023-11-28 11:51:52查看全文 >>

hdfs小文件合并的方式(hdfs小文件处理方法)

hdfs小文件合并的方式(hdfs小文件处理方法)

在HDFS中,任何block,文件或者目录在内存中均以对象的形式存储,每个对象约占150byte,小文件过多会极大占用n...

2023-11-28 11:31:04查看全文 >>

vfs合并失败处理方法(vfs global登录显示错误)

vfs合并失败处理方法(vfs global登录显示错误)

智通财经APP注意到,越南电动汽车制造商VinFast(VFS.US)上市首日股价拉升255%,一举超过通用和奔驰等传统...

2023-11-28 11:37:20查看全文 >>

顾一心为什么没演第二季(顾一心为什么换演员)

顾一心为什么没演第二季(顾一心为什么换演员)

砸了。肉叔盼了5年的国产第一青春剧,算是砸了。没错,《一起同过窗3》。7月初上线,最近豆瓣开分,1w多人打出3.3。短评...

2023-11-28 11:24:00查看全文 >>

一起同过窗2顾一心为什么没参演了(一起同过窗第三季顾一心回国了吗)

一起同过窗2顾一心为什么没参演了(一起同过窗第三季顾一心回国了吗)

《一起同过窗》这个IP今年再度被提及,在豆瓣上享有9.1高分的它,光是短评数就突破了2万。纵看演员表,真是连个小点的流量...

2023-11-28 11:17:22查看全文 >>

vfs文件不存在(vfs文件是什么 求答案)

vfs文件不存在(vfs文件是什么 求答案)

前言为什么 Linux 内核的文件系统类型那么多,都能挂载上呢?为什么系统里可以直接 mount 其他文件系统呢?甚至能...

2023-11-28 11:19:23查看全文 >>

过大的vfs文件会导致无法使用吗(vfs文件删除影响软件使用吗)

过大的vfs文件会导致无法使用吗(vfs文件删除影响软件使用吗)

一.VFS(虚拟文件系统)和Ext2关系:VFS是Linux中的一个虚拟文件文件系统,它为应用程序员提供一层抽象,屏蔽底...

2023-11-28 11:22:37查看全文 >>

hdfs如何在文件中添加内容(hdfs创建文件并写入内容)

hdfs如何在文件中添加内容(hdfs创建文件并写入内容)

HDFS是基于Java的文件系统,可在Hadoop生态系统中提供可扩展且可靠的数据存储。因此,我们需要了解基本的HDFS...

2023-11-28 11:27:18查看全文 >>

vfs文件(vfs文件怎么打开)

vfs文件(vfs文件怎么打开)

概述本文将介绍一下Linux的VFS虚拟机文件系统,主要介绍该文件系统在Linux中的作用及概要实现。我们知道在Linu...

2023-11-28 11:48:44查看全文 >>

hdfs 文件合并(hdfs小文件处理方法)

hdfs 文件合并(hdfs小文件处理方法)

HDFS作为Hadoop大数据处理框架下的分布式文件系统,深受开发人员的喜爱,为此许多人想在自己的linux单机上搭建出...

2023-11-28 11:18:45查看全文 >>

文档排行