0

列数の多い表を少なくするか、列数の少ない表を多くする方がよいでしょうか?

たとえば、列が日付、時間、市場、価格である 1 つのテーブルがあるとします。

Hour は 1 日の時間を意味します (つまり、1 ~ 24)。Market は、DAM または RTM のいずれかの 3 文字のコードです。価格は、追跡する重要な値です。

代わりに、テーブルの 1 つはマーケットが DAM で、もう 1 つは RTM であるサブセットである、3 つの列だけを持つ 2 つのテーブルを使用する方がよいでしょうか?

別のアイデアは、日付、時間、DAMPrice、RTMPrice でテーブルを作成することです。ほとんどの選択がこのアプローチでより簡単になることを考えると、これが最善でしょうか?

最もよく使用される SELECT は、DAMPrice と RTMPrice の差をとることで、現在は同じテーブルの結合で機能します。

4

1 に答える 1

1

設計の観点からは、通常、データを正規化して冗長性を減らすことをお勧めします。通常、これはより少ない列でより多くのテーブルを意味します。

ただし、実際には、結合操作の数を最小限に抑えると、パフォーマンスが向上します。したがって、読み取りを高速化したい場合は、冗長データを使用してもかまいません。この状況では、より多くの列を持つテーブルが少なくなります。

最初により良い設計を選択し、必要に応じて後でパフォーマンスを最適化することをお勧めします。

于 2012-12-09T01:46:11.117 に答える