私はアプリケーションのsqliteをキャッシュの一種として使用しようとしています。私はアイテムが私のキャッシュから期限切れにならず、何も保管していないので並べ替えと言っています。前に処理したすべてのIDをキャッシュに格納するだけで済みます。私は何かを何度も処理したくない。SQLite .Netパフォーマンス
私は10,000個のメッセージ/秒でキャッシュにアイテムを入力しており、合計1億5,000万メッセージになります。私のテーブルはかなりシンプルです。それはidを格納するテキスト列を1つしか持たない。私は辞書を使ってメモリ上でこれをすべて実行していましたが、私は何百万というメッセージを処理していますが、そのように高速ですが、しばらくしてメモリが不足しました。
私はsqliteとパフォーマンスについて研究しましたが、設定が重要だと私は理解していますが、私はまだインサートでは恐ろしいパフォーマンスを得ています(まだ選択しませんでした)。私は5000インサート/秒で追いつくことができません。たぶんこれはそれが得られるほど良いです。
私の接続文字列は以下の通りである:あなたが提供することができます任意の助け
Data Source=filename;Version=3;Count Changes=off;Journal Mode=off;
Pooling=true;Cache Size=10000;Page Size=4096;Synchronous=off
ありがとう!
ありがとうございます...はい私はトランザクションを使用していますが、毎回新しいものを作成しています。私はまた、パラメータ化されたステートメントを使用しています。 –