Java プログラム内の SSD 上のファイルシステム (ext4) に同期する必要がある小さなトランザクションがあります。
各トランザクションの後にファイルシステムと同期する必要がある場合、これらのトランザクションを順次ファイルに書き込む最速の方法は何ですか? トランザクションあたりのデータは非常に小さいですが、トランザクション/秒が増加する場合は、(たとえばページを埋めるために) もっと書き込んでも問題ありません。
データが一度書き込まれた後は、読み取りのみです。
また、パフォーマンスを向上させるファイルシステムへの微調整はありますか? そのタスクにより適した安定したファイルシステムはありますか?
更新:これはファイル システムの問題のようです。同期を使用する場合、Ext4 は Ext3 よりもはるかに遅いですか? 提案? 更新問題の解決策は、ファイルを事前に割り当てることです ( java _file.setLength(size) で)。これにより、ext4 でスペースが事前に割り当てられ、すべてのメタデータが 1 回書き込まれます。この後、ファイルへの書き込みはユーザー データのみを編集し、メタデータは変更されません。これにより、私の場合は 10 倍高速化されました。