ID とタイムスタンプを持つデータを含む大きなテーブル (> 50m 行) があります。
id, timestamp, data1, ..., dataN
...上に複数列のインデックスがあり(id, timestamp)
ます。
タイムスタンプが2つの日付の間にある特定のIDを持つすべての行を選択するには、テーブルをクエリする必要があります。これは現在使用しています:
SELECT * FROM mytable WHERE id = x AND timestamp BETWEEN y AND z
これは現在、ハイエンドマシン (2x 3Ghz デュアルコア Xeons、HT、16GB RAM、RAID 0 の 2x 1TB ドライブ) で 2 分以上かかります。
空間インデックスの使用を推奨するこのヒントを見つけましたが、その例は IP アドレス用です。ただし、速度の向上 (436 秒から 3 秒) は印象的です。
これをタイムスタンプで使用するにはどうすればよいですか?