私は好奇心が強いです。私はそれのような流れを持っています:我々は、大きなデータを持つ大きなコレクション/テーブルを持っています。そして、長さが3秒かかる方向性クエリselect
をいくつか持っています。同時に長い時間の同時クエリを使用したクエリ結果
しかし、我々は非常に並行した環境と毎秒私たちのデータベースに100個の新しいレコードを取得します。
これはクエリがあるとしましょう。そのクエリが開始される前に、それらのクエリを満たす1000個のアイテムがあります。クエリには3秒かかり、1秒ごとにデータベースに追加されたクエリに一致する50の新しい項目があります。私の質問は - このクエリが私に返された結果です(それはまだ1000または1150かその間にあるのですか)、これが異なるデータベースエンジン(SQL、NoSQL)にどのように依存しているかです。 O
正確な数字については問題ではありませんが、それ以上の理由は何故でしょうか。
質問のように見えるのは少し広いです。 MySQL、Postgres、MongoDB、CassandraでDBを制限しましょう。
ありがとうございました。だから、それはすべての書き込み要求よりもテーブルロックがクエリの間に行われた失敗ですか? – Ph0en1x
@ ph0en1x not quite。書き込み要求は(ロックを取得するのを待っているため)ブロックされ、ロックを取得するのに時間がかかり過ぎるとタイムアウトで失敗する可能性があります。しかし、タイムアウト値は一般的に設定可能です。 –
はい、私はこれを理解しています。しかし、質問は少し一般的でした。 – Ph0en1x