在 Linux 环境下,HDFS(Hadoop Distributed File System)读写慢是一个常见问题,通常不是单一原因,而是网络、磁盘、配置、集群规模、数据本地性等多方面因素叠加的结果。下面从常见原因 → 排查思路 → 优化建议系统说明。
HDFS 是分布式系统,读写高度依赖网络。
表现
iperf 测试带宽远低于理论值HDFS DataNode 默认写 3 副本。
表现
iostat -x 1 中 %util 接近 100%dfs.replication=3
表现
hdfs fsck 显示 rack 分布异常HDFS 不适合小文件:
表现
Full GC常见问题:
iperf -c datanode-ip
ping datanode-ip
iostat -x 1
df -h
hdfs dfsadmin -report
hdfs fsck / -files -blocks
hdfs dfs -put bigfile /test/
hdfs dfs -get /test/bigfile ./
net.core.rmem_max
net.ipv4.tcp_window_scaling
dfs.replication=2 # 非核心数据
dfs.block.size=256M # 大块
dfs.datanode.max.transfer.threads=4096
ulimit -n 65536
vm.swappiness=1
HDFS 读写慢,90% 的情况不是 HDFS 本身慢,而是网络、磁盘或配置没跟上。
如果你愿意,可以告诉我:
我可以给你针对性调优方案。