メッセージの種類ごとに約 6,000 個のファイルに解析したい小さなメッセージの大きなファイル (4 ~ 5 GB 圧縮) があります。メッセージは小さいです。タイプに応じて、5 ~ 50 バイトの範囲です。
各メッセージは、固定サイズのタイプ フィールド (6 バイトのキー) で始まります。タイプ「000001」のメッセージを読み取った場合、そのペイロードを 000001.dat などに追加して書き込みます。入力ファイルにはメッセージが混在しています。各出力ファイルに特定のタイプのメッセージのみが含まれる N 個の同種の出力ファイルが必要です。
これらのメッセージを非常に多くの個々のファイルに書き込む効率的で高速な方法は何ですか? できるだけ多くのメモリと処理能力を使用して、できるだけ速く処理したいと考えています。圧縮ファイルまたは非圧縮ファイルをディスクに書き込むことができます。
メッセージタイプのキーと出力ストリームの値を持つハッシュマップを使用することを考えていますが、もっと良い方法があると確信しています。
ありがとう!