大数据存储Rack Awareness
机架感知 是什么?
副本尽量分散到不同机架,整个机架断电也不丢数据
类比:备份不放同一个保险柜,也不放同一个房间
解决什么问题
一台机器坏是常态,但一个机架(通常共享交换机和电源)整体挂掉也不罕见。如果三个副本恰好都在同一机架,机架断电就等于数据全丢。
机架感知让 NameNode 知道每台机器属于哪个机架,从而把副本按“跨机架优先”摆放。
读取时的就近原则
读数据时客户端优先读同机器的副本,其次同机架,最后才跨机架。这样大部分流量留在机架内,不挤占骨干带宽。
怎么配置
需要提供一个脚本或拓扑文件,把 IP 映射到 `/dc1/rack1` 这样的路径。不配也能跑,但所有节点会被当成同一个机架,容错能力打了折扣。