Hbase优化
一:高可用
1):关闭集群
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。stop-hbase.sh
2):在conf目录下创建 backup-masters 文件
touch backup-masters
3):backup-masters文件中配置高可用 HMaster 节点
echo k200 > backup-masters
4):将整个 conf 目录 scp 到其他节点
scp -r /soft/hive/conf/ k200:/soft/hive/
5):打开页面测试
二:Hadoop 的通用性
1):NameNode 元数据备份使用 SSD
2):定时备份NameNode 上的元数据
通过定时任务复制元数据目录即可
3):为 NameNode 指定多个元数据目录
使用 dfs.name.dir 或者 dfs.namenode.name.dir 指定。这样可以提供元数据的冗余和健壮性,以免发生故障。
4):NameNode的dir自恢复
设置 dfs.namenode.name.dir.restore 为 true,允许尝试恢复之前失败的dfs.namenode.name.dir目录,在创建 checkpoint时做此尝试,如果设置了多个磁盘,建议允许。
5):HDFS保证 RPC 调用会有较多的线程数
hdfs-site.xml:
属性:dfs.namenode.handler.count
解释:该属性是 NameNode 服务默认线程数,默认值为10,根据机器的可用内存可以调整为 50~100
属性:dfs.datanode.handler.count
解释:该属性是 DataNode 的处理线程数,默认值为10,如果 HDFS客户端程序读写请求比较多,可以调高到 15~20,设置的值越大,内存消耗越多。一般业务中5~10即可。
6):HDFS副本数的调整
hdfs.site.xml
属性:dfs.replication
解释:如果数据量巨大,且不是非常之重要,可以调整为 2~3,如果数据非常重要,可以调整为3~5.
7):HDFS文件快大小的调整
hdfs-site.xml
属性:dfs.blocksize
解释:块大小定义,该属性应该根据存储的大量的单个文件大小来设置,如果大量的单个文件都小于 100M,建议设置成 64M 块大小,对于大于 100M 或者达到 GB 的这种情况,建议
设置成 256M,一般设置范围波动在 64M~256M 之间。
8):MapReduce Job 任务服务线程数调整
mapred-site.xml
属性:mapreduce.jobtracker.handler.count
解释:该属性是Job任务线程数,默认值为10,根据机器的可用内存可以调整为50~100
9):Http 服务工作线程数
mapred-site.xml
属性:mapreduce.tasktracker.http.threads
解释:定义HTTP 服务器工作线程数,默认值为40,对于大集群可以调整到80~100
