Hadoop3:HDFS存储优化之小文件归档

一、情景说明

我们知道,NameNode存储一个文件元数据,默认是150byte大小的内存空间。

那么,如果出现很多的小文件,就会导致NameNode的内存占用。

但注意,存储小文件所需要的磁盘容量和数据块的大小无关。

例如,一个1MB的文件设置为128MB的块存储,实际使用的是1MB的磁盘空间,而不是128MB

二、解决方案

HDFS存档文件或HAR文件来优化这个问题

具体说来,HDFS存档文件对内还是一个一个独立文件,对NameNode而言却是一个整体,减少了NameNode的内存。

它的底层,其实是一个MR程序。

你可以简单理解为,它就是一个压缩程序。

三、案例

将/input目录下的文件归档成input.har文件,并存于根目录。

归档文件

bash 复制代码
hadoop archive -archiveName input.har -p /input /output

查看归档文件内容

bash 复制代码
hadoop fs -ls /output/input.har
hadoop fs -ls har:///output/input.har

解压归档文件中所有文件

bash 复制代码
hadoop fs -cp har:///output/input.har/*    /

解压归档文件中一个文件

bash 复制代码
hadoop fs -cp har:///output/input.har/hello.txt /

相关推荐
lifallen1 小时前
Flink checkpoint
java·大数据·算法·flink
Leo.yuan3 小时前
API是什么意思?如何实现开放API?
大数据·运维·数据仓库·人工智能·信息可视化
禺垣3 小时前
知识图谱技术概述
大数据·人工智能·深度学习·知识图谱
后端码匠3 小时前
Spark 单机模式部署与启动
大数据·分布式·spark
疯狂的沙粒5 小时前
如何通过git命令查看项目连接的仓库地址?
大数据·git·elasticsearch
随缘而动,随遇而安5 小时前
第七十四篇 高并发场景下的Java并发容器:用生活案例讲透技术原理
java·大数据·后端
凯禾瑞华实训室建设5 小时前
老年生活照护实训室建设规划:照护质量评估与持续改进实训体系
大数据·人工智能·物联网·ar·vr
静听山水5 小时前
DTS 数据迁移
大数据
科技资讯快报6 小时前
告别Prompt依赖,容联云让智能体嵌入金融业务流
大数据·人工智能·prompt
weixin_贾6 小时前
不确定性分析在LEAP能源-环境系统建模中的整合与应用
大数据·新能源·储能·碳中和·温室气体·leap模型