イベント企画サイトを作っています。このサイトには、多くのユーザーがいます。各ユーザーには、独自の無菌領域があります。
例: 各ユーザーは、イベントとゲストのリストを作成できます。ここで、予定を作成した 2 人のユーザーが同じ人を招待したい場合があります。その人 (ゲスト) をデータベースに 2 回作成する必要があります。ここに私の考えがあります:
複数のデータベース
新しいユーザーごとにデータベースを作成します。各データベースには同一のスキーマがあります。
プレフィックス テーブル
たとえば、ユーザー 234 と 342 について話している場合、(同じスキーマを持つ) 234_guests と 342_guests という 2 つのテーブルが存在します。
すべてを支配する 1 つのテーブル
1 つの大きなゲスト テーブルがあり、主キーの一部は、ゲストが属するユーザーへの参照でもあります。
明確化: 私の質問を明確にしようとします: ジョンは私のウェブサイトでアカウントを開設します。彼は娘の結婚式を計画しています。ボブも私のウェブサイトでアカウントを開設し、息子のバー・ミツバを計画しています。ボブもジョンも、ジム・ハルパートという男を知っています。ボブとジョンの両方がジムを彼らの浮気に誘っている。ゲストを登録するには、ゲストの情報を入力する必要があります。Bob と John が同じゲストにアクセスできるようにしたくないのは明らかです (同じ人物であっても!)。私の質問は、そのような場合にデータベースをどのように設計するかです。
パフォーマンス、ロジック、データベースの正規化を考慮して、何が最適ですか?
他のオプションはありますか?