Я думаю, это зависит от ваших требований к отчетности.
Если вам нужно что-то вроде
WHERE "Hour" = 10
означая каждый день с 10:00:00 до 10:59:59, тогда я бы использовал измерение времени, потому что оно быстрее, чем
WHERE date_part('hour', TimeStamp) = 10
потому что функция date_part () будет оцениваться для каждой строки.
Вы все равно должны хранить метку времени в таблице фактов для агрегирования по границам дней, например:
WHERE TimeStamp between '2010-03-22 23:30' and '2010-03-23 11:15'
, что становится неудобно при использовании полей измерений.
Обычно измерение времени имеет минутное разрешение, поэтому 1440 строк.