2012-05-06 5 views
-1

私は数年前から現在、データをデータベースに保存しているシステムに取り組んでいます。それは、何百万というトランザクションでかなり高い需要があります。データベースライクな機能のためにコードを書くかCライブラリを見つける?

あり、これを行うには必要はありませんが、純粋に楽しみのために、私は今、私はCで全部を書いた場合、私はそれを作ることができるどのくらいの速思っ長い間されている、書き込み/ディスクから直接読み込みます。私はこれが少し狂っていることを知っています。

すべてのデータがメモリに収まるため、システムがクラッシュした場合に再生できるトランザクションログが何らかの形で保存される可能性があります。

私はこれについて考えているよりも、Cでのより多くの経験を持つ人々が何であるか疑問に思っています。

+0

Cで書いても自動的にはそれほど高速化されません。 – Mat

+0

私はCを使って自動的に物事をより速くすることを示唆していたとは思わない。 (: – Jacob

+0

あなたの "質問"が読んでいる方法です。私はこれを閉じるために投票しました。ここに具体的/実践的なプログラミングに関する質問はありません。 – Mat

答えて

1

私は彼が正しく質問を理解している場合、私は2つのオプションを見ることができます:あなたはハンドリングに加えて、「Cで記述された」と高速実行の部分の両方を与えるSQLiteのようなものを見て可能性があり

  1. をディスクへのストレージ。これはファイルベースのデータベースであり、システム/プログラムのクラッシュに対して非常に高速で復元力があります。

  2. ライブコピーを保存している間にすべてのデータをディスクに記録できますが、SQLトランザクションとして保存すると、それは同等の生データよりも大きくなります。この場合、SQLiteのようなものは手作業でコード化されたRAMの記憶方法よりも処理オーバーヘッドが多くなりますが、生の(SQL以外の)記憶域のためにディスクへの書き込みが少なくなるという点でトレードオフがあります。

関連する問題