HDFS核心参数

楼高1年前技术文章619

1.NameNode内存生产配置

(1)NameNode内存计算,每个文件块大概占用150byte,一台服务器128G内存为例,能存储9.1亿个文件

128 * 1024 * 1024 * 1024  / 150Byte ≈  9.1亿

(2)Hadoop2.x系列,NameNode内存默认2000m,如果服务器内存4G,NameNode内存可以配置3g。在hadoop-env.sh文件中配置HADOOP_NAMENODE_OPTS=-Xmx3072m

(3)Hadoop3.x系列,hadoop-env.sh中描述Hadoop的内存是动态分配的

hadoop-env.sh中描述Hadoop的内存是动态分配的

image.png

2.NameNode心跳并发配置

NameNode有一个工作线程池,用来处理不同DataNode的并发心跳以及客户端并发的元数据操作,对于大集群或者有大量客户端的集群来说,通常需要增大该参数。默认值是10

<property>

    <name>dfs.namenode.handler.count</name>

    <value>21</value>

</property>

企业经验计算:

比如集群规模(DataNode台数)为3台时,此参数设置为21。计算公示如下:

image.png

3. 开启回收站配置

(1)开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。

(2)回收站工作机制如右图所示

(3)开启回收站功能参数说明

        默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。

        默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

       要求fs.trash.checkpoint.interval <= fs.trash.interval。

(4)启用回收站

修改core-site.xml,配置垃圾回收时间为1分钟。

<property>

    <name>fs.trash.interval</name>

    <value>1</value>

</property>

(5)查看回收站

回收站目录在HDFS集群中的路径:/user/hdfs/.Trash

  (6) 通过网页上直接删除的文件也不会走回收站

  (7) 通过程序删除的文件不会经过回收站,需要调用moveToTrash()才进入回收站

Trash trash = New Trash(conf);

trash.moveToTrash(path);

  (8) 只有在命令行利用hadoop fs -rm命令删除的文件才会走回收站

  (9) 回收站回复,通过hadoop fs mv命令将回收站数据移动到制定目录

相关文章

Hive优化之Spark执行引擎的参数优化(二)

Hive优化之Spark执行引擎的参数优化(二)

        Hive是大数据领域常用的组件之一,主要是大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中...

oracle gi安装报错PRCR-1079 : Failed to start resource ora.cvu

安装gi执行root.sh报错:PRCR-1079 : Failed to start resource ora.cvu安装gi执行root.sh报错:PRCC-1014 : LISTENER_SCA...

Flume使用案例之监控端口数据

监控端口数据目标:Flume监控一端Console,另一端Console发送消息,使被监控端实时显示。分步实现:1. 安装telnet工具yum -y install telnet2. 创建Flume...

Redis Sentinel与Cluster安装部署(二)

3.2cluster部署1、在对应的机器,下载、解压redis #详见sentinel部署内相关命令 2、创建对应的文件目录   mkdir -p /usr/lcoal/redis5/clust...

MySQL 小版本升级

MySQL 小版本升级

MySQL 版本一般不需要经常升级,如果需要使用某个新特性或者修改 BUG 就不得不升级小版本。1. 环境调研1. 当前数据库版本和需要升级到某个版本,如果升级需求 5.6.22+ 那么我们直接下载...

CDH实操--hive高可用

CDH实操--hive高可用

前言在CDH中,hive metastore、hiveserver2若角色单实例部署,或者部署多个实例但是连接配置任选其一的话,均存在单点问题,一旦实例故障就会影响业务稳定;这时我们就好考虑高可用部署...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。