0

SQL Server 2012 で次の構造のファクト テーブルを使用しています。

CREATE TABLE [dbo].[factTable] (
    [Id]            BIGINT      IDENTITY (1, 1) NOT NULL,
    [Date]          DATE        NOT NULL,
    [MinuteNumber]  SMALLINT    NOT NULL,
    [CityId]        INT         NOT NULL, /* Foreign key to dimCity */
    [Value]         DECIMAL(12, 4)  NULL
)

列に 100 のFILL FACTOR のクラスター化インデックスがあります。このテーブルに挿入されるデータは、ほとんどの場合、とDateの昇順です。DateMinuteNumber

  1. 知りたい - 特定のシナリオで Id 列が必要かどうか パフォーマンスへの影響はありますか?または、安全に削除できますか。

  2. また、列にクラスター化インデックスを使用するだけで十分かどうかDate(同じ日付、同じ日付、同じ分数のレコードが多数存在することになります)、または複数の列を組み合わせたクラスター化インデックスを使用する方がよいかどうかも知りたいです。また、どちらのアプローチのパフォーマンスとストレージへの影響は何ですか?

私はこれに慣れていないので、どんな助けでも大歓迎です。

4

2 に答える 2