2011-01-15 10 views

答えて

8

データベースが高速です。重要なのは、同時アクセスを扱うことです。

0

これまでのデータベース。

データベースは、あなたの場合のように常に更新され、変更されるデータストレージ用に最適化されています。ファイルストレージは、変更の少ない長期間のストレージ用です。

(それが開発し、維持するために簡単ですので、ファイルが高速であったとしても、私はまだデータベースとなるだろう)

0

私はあなたのシステムが書きます/(人々が彼らのメッセージを入力として)連続してデータを読み推定するので、それらを書きますファイルには、理由の手順を扱うファイルの保存

  • 書き込み&を
  • ロックファイルを作成するための、すなわち

    1. ファイルを開いて、より長い時間がかかるだろう
    2. ロック解除ファイル

    私はdbに行きます。

  • 2

    誰かがタイプするたびにメカニカルディスクアクションを実際にしたいですか?ディスクへの書き込みは恐ろしい考えです。メッセージをメモリにキャッシュする。メッセージがルーム内のすべてのユーザーに送信されると、そのメッセージを消去します。キャッシュは小さくなくても大丈夫です。履歴ログが必要ない場合は、これが最適です。

    しかし、あなたはログが必要な場合....

    あなたは1回のパスで大量のデータを記述する場合、私は、ファイルがデータベースの挿入のパフォーマンスを吸うことを保証します。データベースの一括挿入機能がファイルと一致する可能性がありますが、ファイルデータソースが必要です。メモリに大量のメッセージをキューイングし、定期的にファイルにフラッシュする必要があります。

    多くの小さな書き込みでは、ギャップが閉じてデータベースが先に進みます。インデックスは挿入速度に影響します。何千人ものユーザーが重度の索引付けされた表に挿入すると、問題が発生する可能性があります。

    より速いことを証明する独自のテストを行います。 1ユーザーのテストではなく、現実的な負荷をシミュレートします。

    関連する問題