多くの小さなアプリケーションから本質的に構築されたアプリケーションがあります。各アプリケーションには独自の個別の設定がありますが、アプリケーションをナビゲーションに表示するかどうか、公開するかどうか、レポートを生成するかどうかなど、すべて同じ 5 つの設定を共有します。
これらの一般的な設定はすべて、Web アプリのすべてのページで認識される必要があります。これは、ナビゲーションが Web アプリから構築されるためです。そのため、最初はこれらすべての設定を 1 つのテーブルにまとめました。ただし、アプリケーションの数が増えるにつれて (現在は 10、最終的には約 30)、列の数は合計で約 150 ~ 200 になります。これらの列のほとんどはブール値にすぎませんが、1 つのテーブルに多くの列があることは依然として心配です。一方、それらを個別のテーブル (アプリごとの設定) に分割する場合、設定を表示する必要があるたびにそれらをすべて結合する必要があります。
In the application I can break the preferences into smaller objects so they are easier to work with, but from a db perspective they are a single entity. Is it better to leave them in one giant table, or break them apart into smaller ones but force many joins every time they are requested?