HDFS Namenode に HA を提供するために Facebook が使用している AvatarNode ソリューションを見ると、NFS が使用される理由がわかりません。私が混乱しているのは、HA を実現するために、NFS がとにかく複製しなければならないことです。HA を実現するには、プライマリが NFS に書き込み、フラッシュする必要があります。プライマリとセカンダリの間のソケット チャネルを単純に開き、セカンダリ Namenode に同じ書き込みを実行してみませんか。(ほぼ) 同じ量のネットワーク トラフィックになり、同じレプリケーション セマンティクスを持つように見えます。
問題は、なぜこれが行われないのかということです。
理由の 1 つは、NFS が存在することであり、そのため、問題はおそらく実装が簡単である可能性があると思います。しかし、ストリーム インターフェイス (つまりファイル) に書き込まれるのと同じ情報を NFS に書き込む、プライマリとセカンダリの間で raw ソケット チャネルを使用する (明らかな) シンプルさを考えると、なぜこれが行われなかったのか頭を悩ませています。まだ完了しました。
確かに、NFS の使用を選択するのには、私の安楽分析では見落としている正当な理由があるに違いありません。