今作っているアプリケーションで以下のようにユーザーごとにDBを区切る方式で作っています
調べたところMYSQLにDB数の上限はなくHDDの空き容量とファイルシステムの上限の限り作ることが可能とのことです
しかしこの設計を友人に相談したところ、そんな設計は聞いたことがないと一蹴されました
この設計は間違っているのでしょうか
・「ユーザー」は「他ユーザー」の情報を利用することはありません
mysqlで、ユーザーごとにDBを分ける場合のメリットとデメリットは以下の認識なのですが
なにか認識が足らない部分、間違っている部分などございましたらご指摘いただきますと嬉しいです
[ユーザーごとにDBを区切る方式]
ユーザーA:DB_A
ユーザーB:DB_B
ユーザーC:DB_C
ユーザーD:DB_D
[DB.TABLEは同じでユーザーごとにユニークキーで区切る方式]
DB.TABLE
ユーザーA:ユニークキー=A
ユーザーB:ユニークキー=B
ユーザーC:ユニークキー=C
ユーザーD:ユニークキー=D
[ユーザーごとにDBを区切る方式]のメリットは
・検索に関して一部ユーザーが大量の情報を登録しても、他のユーザーは影響をうけにくい
[ユーザーごとにDBを区切る方式]のデメリットは
・バックアップ、DB構造変更などの管理がやや面倒になる
[ユーザーごとにユニークキーで区切る方式]のメリットは
・バックアップ、DB構造変更などの管理が簡単
[ユーザーごとにユニークキーで区切る方式]のデメリットは
・検索に関して一部ユーザーが大量の情報を登録したら検索速度に影響が出る(インデックスを張っても遅くなる量だった場合)
デメリットが管理面だけであれば
ソフトウェアでなんとかできそうです。
以上、お忙しい中恐縮ですが
ご確認よろしくお願い致します
回答4件
あなたの回答
tips
プレビュー