私は複数のプロパティ予約システムに取り組んでおり、スキーマ設計のベスト プラクティスについて頭を悩ませています。たとえば、サイトが 5000 のプロパティをホストし、それぞれが 1 人のユーザーによって維持されているとします。各施設には予約カレンダーがあります。私の現在の実装は、1 つのテーブルが利用可能な日付用で、もう 1 つのテーブルが利用できない日付用であり、それぞれ 1 日の粒度を持つ 2 つのテーブル システムです。
property_dates_available (property_id, 日付);
property_dates_booked (property_id, 日付);
ただし、これが良い解決策であるかどうかはわかりません。別の質問では、両方の状態が表された単一のテーブル ソリューションについて読みました。しかし、それらを混同するのは良い考えなのだろうか。また、予約カレンダーは、年間 365 日すべてをデータベース テーブルに含めて 1 年間マップする必要がありますか?それとも、施設が予約可能な日のみをマップする方がよいでしょうか? 年々列数が飛躍的に増えていると思います。また、最近データベースで利用可能なプロパティを検索することを考えていますが、5000 * 365 行を調べることが、5000 * av のみと比較して悪い考えであるかどうかはわかりません。100 行。
あなたは一般的に何をお勧めしますか?この側面は無視できますか?これを実装するベストプラクティスは?