Stiamo appena iniziando a progettare un nuovo data warehouse e stiamo provando a progettare come funzioneranno le nostre dimensioni di data e ora. Dobbiamo essere in grado di supportare più fusi orari (probabilmente almeno GMT, IST, PST ed EST). Inizialmente pensavamo che avremmo avuto una dimensione data / ora combinata ampia fino a una granularità di circa 15 minuti, in questo modo abbiamo una chiave nelle nostre tabelle dei fatti e tutti i diversi dati di data e ora per tutti i fusi orari supportati sono in una tabella delle dimensioni. (ad es. chiave della data, data GMT, ora GMT, data IST, ora IST, ecc ...)
Kimball suggerisce di avere una dimensione del giorno separata dalla dimensione dell'ora del giorno per evitare che la tabella diventi troppo grande (Il toolkit di data warehouse p. 240) che suona bene, tuttavia ciò significherebbe che abbiamo due chiavi nelle nostre tabelle dei fatti per ogni fuso orario abbiamo bisogno di supporto (uno per la data e uno per l'ora del giorno).
Poiché sono molto inesperto in questo settore, spero che qualcuno là fuori conosca i compromessi tra i due approcci, ovvero le prestazioni rispetto alla gestione di tutte le diverse chiavi di fuso orario. Forse ci sono anche altri approcci, ho visto alcune persone parlare di avere una riga separata nella tabella dei fatti per fuso orario, ma sembra un problema se le tabelle dei fatti sono milioni di righe quindi è necessario quadruplicarle per aggiungere fusi orari .
Se eseguiamo il grano di 15 minuti, avremo 131.400 (24 * 15 * 365) righe all'anno nella nostra tabella delle dimensioni della data e dell'ora che non sembrano troppo orribili per le prestazioni ma non lo sapremo con certezza fino a quando non ne verificheremo alcune query prototipo. L'altra preoccupazione di avere chiavi di fuso orario separate nella tabella dei fatti è che la query deve unire la tabella delle dimensioni a una colonna diversa in base al fuso orario desiderato, forse questo è qualcosa che SSAS si prende cura di te, non sono sicuro .
grazie per ogni pensiero, -Matt