スライディングウィンドウに問題があります。具体的には、ウィンドウをどこから開始し、どこで終了するかわかりません。インターバル/ウィンドウのサイズを知っています。
最良の(または、見方によっては最悪の)ケースシナリオを提供するウィンドウの開始/終了を見つける必要があります。
データセットの例を次に示します。
value | tstamp
100 | 2013-02-20 00:01:00
200 | 2013-02-20 00:02:00
300 | 2013-02-20 00:03:00
400 | 2013-02-20 00:04:00
500 | 2013-02-20 00:05:00
600 | 2013-02-20 00:06:00
500 | 2013-02-20 00:07:00
400 | 2013-02-20 00:08:00
300 | 2013-02-20 00:09:00
200 | 2013-02-20 00:10:00
100 | 2013-02-20 00:11:00
間隔を5分にする必要があることを知っているとしましょう。したがって、「値」の合計が最も高い5分間隔に含まれる値とタイムスタンプを知る必要があります。上記の例では、「2013-02-2000:04:00」から「2013-02-2000:08:00」までの行は、400 + 500 + 600 + 500 + 400=2400の合計になります。 、これはその表の5分間で最も高い値です。
必要に応じて複数のテーブルを使用することに反対していません。しかし、私は「ベストケースシナリオ」の間隔を見つけようとしています。結果は、間隔を相殺する限り、どちらの方向にも進むことができます。その間隔ですべてのデータポイントを取得しても、引き続き機能します。始点と終点がわかれば、それらも使えます。
SQLのスライディングウィンドウの問題をいくつか見つけましたが、ウィンドウサイズが既知の要因であり、開始点が不明な場所は見つかりませんでした。