- スキーマは妥当に見えます(クエリの場合、実際にはインデックスは必要なく、一部のインデックスはすでにFK制約でカバーされています)
- ジャンクションテーブルには代理キーは必要ありません(ただし、害はありません)。
- クエリが遅い本当の理由は、すべての行が必要であるためです。 すべてのテーブルから 集計を計算します。 100%のデータが必要な場合、インデックスはあまり役に立ちません。
- 追加の制約を追加すると(たとえば、snapshot_timestamp> =some_date)、インデックスを使用する別のプランが発生する可能性があります。