0

ASP.NET MVC アプリケーションを構築しています。アプリケーション ユーザーごとに多くのデータを保存するので、ユーザーのデータごとに個別の DB を用意することを検討していました。もちろん、すべての DB は構造に関して 100% 同じです。それらはすべて、ある種のマスター DB から派生する必要があります。誰かがこれを実現する方法について手がかりを教えてもらえますか?

4

2 に答える 2

2

ユーザーごとのデータベースは、多くの理由からひどいアイデアに思えます。データまたは読み取り/書き込みが膨大な場合は、シャーディングを検討する必要があります (主キーごとに個別の DB ではなく、主キーに基づいてデータベースを個別のデータベースに分割します)。

SQL Server を使用している場合、これは少し調整するだけで数十億行を処理できます

于 2012-05-18T14:03:25.163 に答える
1

各テーブルに数百万行の数百万のユーザーを処理する予定がない限り、複数の DB を使用する必要はありません。

MS Sql は、優れたインデックスを使用してテーブル内の 10 億行を簡単に処理でき、それでも優れたクエリ パフォーマンスを維持できます。

複数の DB を使用すると、おそらく頭痛の種になるだけです。

とはいえ、データベースを作成するためのスクリプトを設計し、後でそれらを変更するためにスクリプトを更新する必要があります。これは、変更をすべてのデータベースに伝達する必要があるためです。

しかし、私の推奨事項は、1 つの DB に固執することです。実際にそれを超えてしまう場合は、とにかくデータベース構造を再設計する必要がある可能性が最も高いです:)

于 2012-05-18T14:04:10.817 に答える