2017-01-23 3 views
0

J'ai une table de faits qui montre les résultats des KPIs. Il y a plusieurs KPI, et certains d'entre eux ont une sortie similaire.Dois-je combiner les colonnes d'une table de faits pour la rendre plus étroite, ou devrais-je la garder plus conviviale avec beaucoup de colonnes?

Mes colonnes actuelles sont quelque chose comme ceci:

KPI_ID, DOCUMENT_ID, TRUE_FALSE_FLAG1, TRUE_FALSE_FLAG2, DURATION_3, DURATION_4 

Ainsi, pour le numéro de KPI 1 (true de sortie false), les trois dernières colonnes seront des valeurs Null. Dois-je combiner TRUE_FALSE_FLAG1 et TRUE_FALSE_FLAG2? Qu'est-ce que BEST PRATIQUE?

Au total, il y a 18 colonnes, dont 12 sont vraies/fausses drapeaux ou durées en nombre de jours (nombre entier).

picture of the two alternatives

EDIT: KPI 3 pourrait être « durée du problème », et vous auriez un tas de problèmes, chacun avec une documentID, représentée comme une ligne. Dur_3 serait comme 5 jours, 3 jours, 10 jours, etc. KPI 4 serait "Retard de réparation après la commande a été ordonnée", et la réponse serait encore un nombre entier en jours. Mais complètement non lié à KPI 3.

Le rapport pourrait être "délai moyen de réparation". Donc, à peu près une sélection AVG() de la table où KPI_ID = 3 groupe par KPI_ID.

+0

Sans connaissance du domaine concernant la signification des colonnes, la deuxième alternative me semble meilleure. –

+0

Gordon Linoff: KPI 3 pourrait être "durée du problème", et vous auriez un tas de problèmes, chacun avec un documentID, représenté comme une ligne. Dur_3 serait comme 5 jours, 3 jours, 10 jours, etc. KPI 4 serait "Retard de réparation après la commande a été ordonnée", et la réponse serait encore un nombre entier en jours. Mais complètement non liée à KPI 3. Reporting pourrait être "délai moyen de réparation". Donc, à peu près une sélection AVG() de la table où KPI_ID = 3 groupe par KPI_ID. – fredskogsBI

+0

Tant que chaque KPI est uniquement vrai/faux, ou n'a qu'une seule durée à rapporter, vous êtes mieux avec l'alternative 2. S'il y a une chance qu'un KPI ait besoin de stocker plusieurs valeurs, alors vous voulez considérer l'alternative 1 ou quelque chose entre l'alternative 1 et l'alternative 2. Vous dites "il y a 18 colonnes, où 12 d'entre elles sont vraies/fausses - drapeaux ou durées en forme de" nombre de jours "(entier)." Quelles sont les 6 autres colonnes. Cela semble avoir une incidence sur cela. –

Répondre

0

Sur la base de votre dernier commentaire, vous êtes mieux avec Alternative 2. Plus précisément, tant que chaque KPI est seulement Vrai/Faux, et ne dispose que d'une durée de stockage, vous êtes mieux avec Alternative 2.

EDIT : avec l'alternative 2, chaque KPI peut stocker une valeur True/False ET une valeur de durée