HDFS的小文件问题
2021-04-21 14:53
811 查看
- HDFS 中任何一个文件,目录或者数据块在 NameNode 节点内存中均以一个对象形式表示(元数据),而这受到 NameNode 物理内存容量的限制。每个元数据对象约占 150 byte,所以如果有1千万个小文件,每个文件占用一个block,则 NameNode 大约需要2G空间。如果存储1亿个文件,则 NameNode 需要20G空间,这毫无疑问1亿个小文件是不可取的。
- 处理小文件并非 Hadoop 的设计目标,HDFS 的设计目标是流式访问大数据集(TB级别)。因而,在 HDFS 中存储大量小文件是很低效的。访问大量小文件经常会导致大量的 seek,以及不断的在 DatanNde 间跳跃去检索小文件。这不是一个很有效的访问模式,严重影响性能。
- 处理大量小文件速度远远小于处理同等大小的大文件的速度。每一个小文件要占用一个slot,而任务启动将耗费大量时间甚至大部分时间都耗费在启动任务和释放任务上。
- MapReduce上的小文件问题:Map任务一般一次只处理一个块的输入(input。如果文件非常小,并且有很多,那么每一个 Map 任务都仅仅处理非常小的输入数据,并会产生大量的 Map 任务,每一个 Map 任务都会额外增加bookkeeping 开销。+map任务是jvm进程级别的,也会有启动销毁的开销
相关文章推荐
- HDFS小文件问题及解决方案
- 【转载】HDFS小文件问题及解决方案
- 读hdfs上的文件时出现Unable to write to output stream问题的解决方案
- 解决从本地文件系统上传到HDFS时的权限问题
- HDFS小文件问题解决方案
- HDFS小文件问题及解决方案
- hdfs文件乱码问题
- windows环境下通过Eclipse下载hdfs中的文件中遇到的问题
- 关于hadoop hdfs里文件为啥上一级大小是0,进去又有大小问题解释?
- 如何从根源上解决 HDFS 小文件问题
- 直接在eclipse上运行hdfs上文件会出现的问题及解决方法
- Hadoop HDFS 文件访问权限问题导致Java Web 上传文件到Hadoop失败的原因分析及解决方法
- HDFS 上传文件不均衡和Balancer太慢的问题
- [bigdata] 使用Flume hdfs sink, hdfs文件未关闭的问题
- Sqoop 将hdfs上的文件导入到oracle中,关于date类型的问题
- 解决从linux本地文件系统上传文件到HDFS时的权限问题
- FTP压缩文件上传到HDFS大小不一致的问题说明(FTP传输模式)
- java访问hdfs文件时碰到的一些问题
- hdfs小文件问题
- HDFS Explorer无法上传文件的问题