高可用Hdfs&HBase配置实践

本文详述了在hdfs 2.7.1和hbase 1.3.0环境下,实现高可用配置的具体步骤,包括dfs.datanode.synconclose设置以避免数据丢失,调整dfs.client.read.shortcircuit提升读取效率,以及hbase的compaction策略和replication设置。同时,还探讨了zookeeper.session.timeout的优化,以增强系统的稳定性和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先介绍版本背景,hdfs为2.7.1,hbase为1.3.0,其它版本的配置可能存在变化。

HDFS相关配置:

dfs.datanode.synconclose 设为true,当为false时,系统重启或断电时有可能数据丢失,默认值是false。

当写操作完成之后,缓存中的block不会立即被写入磁盘,如果要同步将缓存的block写入磁盘,用户需要将“hdfs-site.xml”中的dfs.datanode.synconclose设置为true。更改此设置后,对性能可能存在影响。

dfs.datanode.sync.behind.writes=FALSE 如果是true,写之后,DN将指示操作系统把队列中的数据全部立即写磁盘。和常用的OS策略不同,它们可能在触发写磁盘之前等待30s

dfs.namenode.avoid.write.stale.datanode —— default: true
dfs.namenode.avoid.read.stale.datanode —— default: true
dfs.namenode.stale.datanode.interval —— default: 30 seconds

默认是true,超过30s未收到heartbeat的datanode,namenode会将之判为最低优先级的读写

关于stale的理解可以参看下面的链接:

https://community.hortonworks.com/questions/2474/how-to-identify-stale-datanode.html


dfs.qjourn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值