专栏首页最新最全的大数据技术体系CDH性能优化(参数配置)

CDH性能优化(参数配置)

1.dfs.block.size HDFS中的数据block大小,默认是64M,对于较大集群,可以设置为128或264M

2.dfs.datanode.socket.write.timeout 增加dfs.datanode.socket.write.timeout和dfs.socket.timeout两个属性的时间,避免出现IO超时

3.dfs.datanode.max.transfer.threads 增加datanode在进行文件传输过程中的最大线程数。默认值4096,可修改为8192

4.dfs.namenode.handler.count NameNode中用于处理RPC调用的线程数,即指定NameNode 的服务器线程的数量。NameNode有一个工作线程池用来处理客户端的远程过程调用及集群守护进程的调用,处理程序数量越多意味着要更大的池来处理来自不同DataNode的并发心跳以及客户端并发的元数据操作)。 对于大集群或者有大量客户端的集群来说,通常需要增大参数dfs.namenode.handler.count的默认值10。设置该值的一般原则是将其设置为集群大小的自然对数乘以20,即20logN,N为集群大小。  果该值设的太小,明显的状况就是DataNode在连接NameNode的时候总是超时或者连接被拒绝,但NameNode的远程过程调用队列很大时,远程过程调用延时就会加大。症状之间是相互影响的,很难说修改dfs.namenode.handler.count就能解决问题,但是在查找故障时,检查一下该值的设置是必要的。如果前面的描述你仍然觉得很不清楚,可以看下面的python程序,假设我们大数据集群的大小为500台,那么我们可以直接看怎么计算应该设置合理值。

5.dfs.datanode.handler.count 数据节点的服务器线程数,默认为10。可适当增加这个数值来提升DataNode RPC服务的并发度。 在DataNode上设定,取决于系统的繁忙程度,设置太小会导致性能下降甚至报错。线程数的提高将增加DataNode的内存需求,因此,不宜过度调整这个数值。

6.dfs.namenode.avoid.read.stale.datanode 指示是否避免读取“过时”的数据节点(DataNode),这些数据节点(DataNode)的心跳消息在指定的时间间隔内未被名称节点(NameNode)接收。过时的数据节点(DataNode)将移动到返回供读取的节点列表的末尾。有关写入的类似设置,请参阅df.namenode.avoint.write.stale.datanode。默认值是flase,推荐设置为true。

7.dfs.namenode.avoid.write.stale.datanode 指示超过失效 DataNode 时间间隔 NameNode 未收到检测信号信息时是否避免写入失效 DataNode。写入应避免使用失效 DataNode,除非多个已配置比率 (dfs.namenode.write.stale.datanode.ratio) 的 DataNode 标记为失效。有关读取的类似设置,请参阅 dfs.namenode.avoid.read.stale.datanode。 默认值是flase,推荐设置为true。

8.fs.trash.interval 注:该配置底层文件在core-default.xml 垃圾桶检查点之间的分钟数。还可控制删除垃圾桶检查点目录后的分钟数。要禁用垃圾桶功能,请输入 0。 默认为禁用垃圾桶功能。为防止重要文件误删,可启用该特性。

用户经常会意外删除文件。HDFS支持回收站功能,这类似于大多数操作系统的回收站,当这个功能被启用,文件被移到用户的HDFS主目录中一个名为.Trash目录中,来保留被删除的文件,而不是立即彻底删除。fs.trash.interval定义.Trash目录下文件被永久删除前保留的时间。在文件被从HDFS永久删除前,用户可以自由地把文件从该目录下移出来并立即还原。默认值是0说明垃圾回收站功能是关闭的。

要清楚,回收站功能不是万能的,推迟删除意味着要文件所占据的空间仍不可用,除非它被永久删除。用户可以通过运行hadoop fs -expunge命令。或者干脆等待指定的时间来明确回收站清空。可以在hadoop fs -rm命令通过指定-skipTrash参数来跳过回收站从而立即删除文件。

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客:https://blog.csdn.net/xianyu120复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • MySQL性能优化之参数配置

    通过根据服务器目前状况,修改Mysql的系统参数,达到合理利用服务器现有资源,最大合理的提高MySQL性能。

    跟着阿笨一起玩NET
  • 性能优化-MySQL性能优化参数

    对配置参数的说明: 配置参数的格式如下:(shell > mysqladmin -uroot -ppassword variables extended-st...

    cwl_java
  • Apache 性能配置优化

    最近在进行apache性能优化设置。在修改apache配置文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯。本文讲述的apache配置调优均是在r...

    刘远飞
  • Nginx配置性能优化

    大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个...

    流柯
  • 性能优化-jvm的运行参数

    在jvm中有很多的参数可以进行设置,这样可以让jvm在各种环境中都能够高效的运行。绝大部分的参数保持默认即可。

    cwl_java
  • MySQL性能参数配置总结

    星哥玩云
  • MYSQL数据优化常用配置参数

    #指定MySQL可能的连接数量。当MySQL主线程在很短的时间内得到非常多的连接请求,该参数就起作用,之后主线程花些时间(尽管很短)检查连接并且启动一个新线程。...

    TrueDei
  • Storm参数配置及代码优化

    gaofc
  • 性能测试 Apache参数配置与性能调优

    1、选择合适的MPM(Multi -Processing Modules, 多处理模块)

    授客
  • Tomcat 安全配置与性能优化

    Tomcat 安全配置与性能优化 目录 1. JVM 1.1. 使用 Server JRE 替代JDK。 1.2. JAVA_OPTS 2. Tomcat 优化...

    netkiller old
  • Nginx配置性能优化之worker配置 转

    下一个要查看的配置是worker_connections,默认值为512.该指令设置worker进程最大打开的连接数:

    双面人
  • Tomcat 安全配置与性能优化

    Tomcat 安全配置与性能优化 摘要 我的系列文档 Netkiller Architect 手札Netkiller Developer 手札Netkiller...

    netkiller old
  • Tomcat 安全配置与性能优化

    Tomcat 安全配置与性能优化 摘要 我的系列文档 Netkiller Architect 手札Netkiller Developer 手札Netkiller...

    netkiller old
  • MySQL 优化配置参数(my.cnf)

    max_connections:允许客户端并发连接的最大数量,默认值是151,一般将该参数设置为500-2000 max_connect_errors:如果客户...

    星哥玩云
  • greenplum 优化系统配置参数

    在以上可以看出segment使用了系统默认的内存配置8192MB,改参数按照机器的内存大小可以适当的调大,详见计算如下:

    小徐
  • greenplum 优化系统配置参数

    5.5.7 查看gp_workfile_limit_files_per_query的值 5

    小徐
  • 大数据组件:Hive优化之配置参数的优化

    Hive是大数据领域常用的组件之一,主要用于大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的一个点,因此掌握一些Hive调优是必不可少...

    数栈DTinsight
  • MySQL(一)|性能分析方法、SQL性能优化和MySQL内部配置优化

    黄小怪

扫码关注腾讯云开发者

领取腾讯云代金券