私は学習目的のプロジェクトに取り組んでいます。このプロジェクトはそのトピックのために私にとって魅力的であるため、私は良い基盤を構築し、最終的にはそれをライブにしたいと思っています。
私のプロジェクトは非常に複雑なので、私の質問が何であるかを説明するために、アジェンダアプリケーションであるフィクションプロジェクトを使用します。
このWebアプリケーションには、ユーザーがイベントやリマインダーを追加できるカレンダーがあります。たとえば、10,000人のユーザーが使用し、10,000人のユーザーが数千のイベントやリマインダーを追加します。
私の質問は、データベース構造に関連して2つの方法のどちらをお勧めしますか?
- (ユーザー作成時に)ユーザーごとにリマインダーとイベントテーブルを含む個別のデータベースを作成し、データベースを個別のデータベース内のユーザーに関連付ける必要があります
- または、イベント用に1つ、リマインダー用に1つ、ユーザー用に1つのテーブルを作成し、それらを1つのデータベースで相互に関連付ける必要がありますか?
私はこれまでマルチユーザーのWebアプリケーションを実行したことがなく、多くのユーザーに関してはデータベース構造のアプローチに精通していません。あなたが考えているデザインパターンがあれば、共有していただければ幸いです:)