夜雨聆风学习资料网

ARTICLE · 1077634

Hadoop 源码学习手册 03 · Common 基础设施

Hadoop 源码学习手册 03 · Common 基础设施

刚啃完 Hadoop Common 源码,这层就是整个生态的水电煤。配置、通信、安全全在这打底。

配置系统用两层 Map 存参数,代码里 set() 的值优先级最高。要是参数被标了 final,连代码都盖不住它。进程间通信靠 RPC,服务端把连接、处理和回写拆成三段,互不拖累。客户端还会复用 TCP 连接,不用每次重建。

文件访问有个统一插座 FileSystem,不管底层是 HDFS 还是本地盘,接口都一样。同一个 URI 和用户会复用实例,省掉反复建连的开销。安全认证这块,UGI 负责确认你是谁。Kerberos 自动登录的最小间隔其实是 60 秒,源码注释错写成 600 秒,别被带偏。

序列化用的 Writable 比 Java 原生更紧凑。小数字能用变长编码省空间,冷数据还能上纠删码,开销直接砍半。压缩格式得看能不能分割——gzip 压完没法并行读,大文件最好换 bzip2 或 SequenceFile。

分布式调用难免失败,重试交给动态代理透明处理。非幂等操作不会乱重试,服务端还用 RetryCache 按请求 ID 去重,避免重复执行。至于服务生命周期、机架拓扑和监控指标,全都有统一出口。上层组件只管专注业务,不用再重复造轮子。

原文Hadoop 源码学习手册 03 · Common 基础设施|口袋通识馆
山西,1小时前,

相关学习资料