私の以前の仕事では、クライアントごとに1つのデータベースだけをホストしていませんでした-ほとんどの場合、それはそれ以上でした!私が去ったとき、1つのMariaDBクラスターで実行されている4,500を超えるデータベース、別の(皮肉なことに)クラスターでほぼ7,000のデータベース、および4つの「シャード」(完全に独立したWebおよびデータベースサーバー、完全に独立したデータセンターでも)がホストされていました単一のMySQLサーバーに200〜500個のデータベース。そして、その会社はまだ良いクリップで成長しています。
長いことと短いことは、その会社の成功がそのようなアーキテクチャが実際に実行可能であることを証明するということです。(注意:個別のデータベースを使用することによる分離の明らかな利点に反して、すべてのデータはすべて同じデータベースユーザー/パスを使用する密結合アプリケーションのトリオを介してアクセスされました!各クライアントが別のユーザー/パスがありましたが、ほんのわずかです。)
システム管理者と密接に連携した経験から(技術的には私は会社のプログラマーでしたが、実際には彼らが持っていた最高のDBAであり、ファイアウォールの設定方法を知っていた唯一の人でした!)、パフォーマンス関連同時アクセス、クエリの複雑さ/時間、インデックスのパフォーマンスなどに集約された懸念-言い換えれば、サーバー上のデータベースの数はすべて、認識できる部分を果たさなかったため、結論は高給の専門家によって確認されました定期的に相談したコンサルタント。
肝心なのは、たまたま所有しているデータベースの数ではなく、アプリケーションに関心を向けるべきだということです。他のすべての要因は、パフォーマンスの問題とボトルネックの解決に忙しくし続けるのに十分すぎるほどです。