あなたはあまり多くの詳細を提供しませんでした (これにより、適切な回答を提供することが難しくなります)。ただし、質問で使用する言葉を選択したことから、これは異なる「スキン」を持つ単一のアプリケーションであると私は信じるようになりました。
私のサイトでは多くの製品を利用できますが、それらは完全に異なるサイト (ドメイン)に分類されます。
私の仮定では、cool-widgets.com、awesome-sprockets.com、neato-things.com など、いくつかの異なるストア フロントを持つ 1 つの Web ストアを持つことになります。CSS スキンを除けば、これらはすべて同じです。またはそのような単純なもの。ストアの管理はすべて中央システムで行われ、ドメイン名は単にカテゴリ名として機能します。
そのため、任意の基準 (category_ name=='cool-widges.com') を使用して同じデータを 2 つの異なるコンテナーに分割することは、アンチパターンであるデータ分割です。ユーザー名 ([Users$A-to-M] と [Users$N-to-Z]) に基づいて 2 つの異なるユーザー テーブルが存在しないのと同じように、2 つの異なるテーブル (またはデータベース) を使用してもほとんど意味がありません。 ) カテゴリ名。
ユーザー管理、管理、注文処理、データ インポートなど、カテゴリ間で共通のコードが多数あります。ストア表示コードのカテゴリ。それだけでなく、分離のバグがより明白になります。価格比較ページには、3 つの店舗すべての商品が表示されます。アグリゲーションのバグははるかに少なくなり、4 つのストアのうち 3 つだけが更新されました。これがアンチパターンである理由です。
補足: はい、データの分割に用途があると言う前に (実際に使用されています)、それらの用途はパフォーマンスの問題が発生したずっと後に発生します。多くの本格的なデータベース プラットフォームでは、間抜けなデータ モデルを作成しないように、舞台裏でパーティショニングが許可されています。