DB に入った時間に基づいてデータを取得する最善の方法は何ですか?
たとえば、DBに保存された次の
data 1 saved now
data 2 saved now+1
data 3 saved now+2
data 4 saved now+3
data 5 saved now+4
次に、FIFO のように、データ 1、データ 2、3 を取得する最良の方法は何ですか?
もう 1 つの質問は、データ data 3 の処理に失敗した場合、新しい時間値で再度保存して 4 の後と 5 の前に処理されるようにするための最良の方法は何か、ということです。
data 4 saved
data 3 saved
data 5 saved
日付を並べ替えて行を取得し、それらを1つずつ処理してから別の行のセットを取得するという簡単な解決策を考えていましたが、テーブル全体を選択して並べ替える必要があるため、それだけでは十分ではないと思いますそれを処理します。何百万もの行があるとしたら、それは本当に悪いことです。
また、DB 以外のものを使用して上記のことを行うことは可能ですか? サーバーが再起動した場合に備えて、データをディスクに保存する必要があることに注意してください。
私が取り組んでいる環境は、複数のスレッド/プロセスを持つ Linux と C です