28 バイト レコードのデータファイルを参照する Delphi アプリがあります。ファイルは順次書き込まれますが、ランダムに読み取られます。データファイルは N 個の物理ファイルに分割され、ディスクの問題に対する保険を提供するために 10 MB 程度でロールオーバーされます。これは、最新のファイルにのみ書き込みを行うためです。大きくなることを許されました。起動時に、ファイル セット全体を読み取り、インデックスを作成して、与えられた仮想レコード番号からどのファイルを探すべきかをすばやく知ることができます。
N 個のファイルへの分割の一環として、読み取りキャッシュを実装しました。Windows が独自にかなりの量のキャッシュを実行していることに気付きました。自分とディスク ファイルの間に別のキャッシュを追加することで、何か得られるのではないかと思います。
どんな考えでも大歓迎です。