В статье Увеличение масштаба хранилища данных с помощью SQL Server 2008 R2 автор рекомендует использовать целочисленный ключ даты в формате ГГГГММДД в качестве кластеризованного индекса для ваших таблиц фактов, чтобы оптимизировать скорость запросов.
Каков наилучший способ преобразовать поле ключевой даты в ключ даты? Я чувствую, что следующее будет работать, но немного небрежно:
select Replace(CONVERT(varchar,GETDATE(),102),'.','')
Ясно, что я использую не getdate, а столбец даты в таблице, который будет использоваться в моих агрегатах.
Во-первых, как бы вы предложили сделать это преобразование? Приемлема ли моя идея?
Во-вторых, добился ли кто-нибудь большого успеха в использовании ключа даты в качестве кластеризованного индекса?