1

サイズ:〜5mb

ディスク上のサイズ:〜3gb

私たちはC#を使用しており、変更に応じてデータを常に保存しています。すべてのファイルデータにいつでもアクセスできる必要があります。基本的に、何かが変更された場合、そのデータのファイルを保存する必要があります。これが、非常に多くのデータに対して非常に多くのファイルがある理由です。データも大幅に処理されるため、小さな変更を加えると理由もなく大量に保存されるため、すべてのデータをまとめることはできません。これらのファイルにはすでに十分な数が含まれているため、ファイルを保存すると、わずかな変更でほとんど冗長になります。

確かに、ファイルサイズのこのばかげた拡張を回避し、それでも私たちが達成したアクセシビリティと保存効率を維持する方法があります。これらのファイルを、Windowsが単一のファイルと見なすものにパッケージ化する方法が必要ですが、何かが変更されたときにファイル全体を書き直す必要がないようにする方法が必要です。

何千もの小さなファイルがあるのは非常に奇妙なことだと理解していますが、私たちの目的では、パフォーマンスが大幅に向上しています。回避できる可能性がある場合は、あるリソースを別のリソースのために犠牲にしたくはありません。

注:ファイルにはRLEバイナリデータがあり、テキストファイルではありません。

明瞭度の更新:5mb-> 3gb = 250mb(50xクラスター)-> 150gb =問題!

4

1 に答える 1

6

データベースは必要なことを正確に実行します。任意の量の小さな行/ブロブを格納でき、それらは効率的に格納されます。ファイルシステムは通常、ファイルごとに少なくとも1つのディスククラスターを必要とします。これが、サイズが大幅に拡大する理由である可能性があります。データベースはそれをしません。データベース自体を圧縮するようにデータベースに依頼することもできます。

利用可能な組み込みデータベースとスタンドアロンデータベースがあります。

于 2013-03-03T16:22:12.723 に答える