前言
大家好,我是林哥!
在上一篇《HDFS 底层交换原理,看这篇就够了!》文章中,已经聊了 HDFS 高可用架构、 HDFS 源码
级读写流程及可用性问题。今天接着上篇,继续跟大家聊聊 HDFS 读写失败场景下的容错机制和 HDFS
调优的一些技巧,希望给大家带来一点点启发!本篇文章概览如下:
1.HDFS 读写异常的容错机制
Hadoop 的设计理念就是部署在廉价的机器上,因此在容错方面做了周全的考虑,主要故障包括
DataNode 宕机,网络故障和数据损坏。本文介绍的容错机制只考虑 HDFS 读写异常场景。
1.1 读数据异常场景处理
我们通过上图,简单回顾下 HDFS 的读数据流程,先打开文件,再调用 read() 方法读取数据。
在 read() 方法中,调用了 readWithStrategy() 方法读取 DataNode 存储的数据。
readWithStrategy( )方法