ここに同様の投稿があったことは知っていますが、本当に確かな答えがあるものを見つけることができません.
バイナリ ファイルがロードされた Hadoop クラスターがあります。これらのファイルのサイズは、数百 k から数百 mb までさまざまです。
現在、ファイルの内容全体を各マップに読み込むカスタム レコード リーダーを使用して、これらのファイルを処理しています。そこから、必要な適切なメタデータを抽出して JSON にシリアル化します。
私たちが予見している問題は、最終的に名前ノードが処理できないサイズに達する可能性があることです。移動するメモリは非常に多く、数テラバイトのメモリを持つ名前ノードを持つことはばかげているように思えます。
このような大きなバイナリ ファイルを適切に処理する方法はありますか? 特に、リデューサーがそれらを元に戻す順序がわからないために分割できないものは?