Estamos apenas começando o design de um novo data warehouse e estamos tentando projetar como nossas dimensões de data e hora funcionarão. Precisamos oferecer suporte a vários fusos horários (provavelmente pelo menos GMT, IST, PST e EST). Inicialmente, pensávamos que teríamos uma dimensão de data e hora combinada ampla, talvez com granularidade de 15 minutos, dessa forma, teríamos uma chave em nossas tabelas de fatos e todos os diferentes dados de data e hora para todos os fusos horários suportados estarão em uma tabela de dimensão. (ou seja, chave de data, data GMT, hora GMT, data IST, hora IST, etc ...)
Kimball sugere ter uma dimensão de dia separada da dimensão da hora do dia para impedir que a tabela fique muito grande (O kit de ferramentas do armazém de dados p. 240), o que parece bom, no entanto, isso significa que temos duas chaves em nossas tabelas de fatos para cada fuso horário precisamos apoiar (um para a data e outro para a hora do dia).
Como eu sou muito inexperiente nessa área, espero que alguém conheça as vantagens e desvantagens entre as duas abordagens, ou seja, desempenho versus gerenciamento de todas as chaves de fuso horário diferentes. Talvez também existam outras abordagens. Vi algumas pessoas falando sobre ter uma linha separada na tabela de fatos por fuso horário, mas isso parece um problema se as tabelas de fatos são milhões de linhas, você precisa quadruplicá-lo para adicionar fusos horários .
Se fizermos a granulação de 15 minutos, teremos 131.400 (24 * 15 * 365) linhas por ano em nossa tabela de dimensões de data e hora que não parece muito ruim para o desempenho, mas não teremos certeza até testarmos alguns consultas de protótipo. A outra preocupação em ter chaves de fuso horário separadas na tabela de fatos é que a consulta precisa associar a tabela de dimensões a uma coluna diferente com base no fuso horário desejado, talvez seja algo que o SSAS cuide de você, não tenho certeza .
obrigado por quaisquer pensamentos, -Matt