1

J'étudie des entrepôts de données. Et j'ai un problème avec les schémas en étoile.Un entrepôt de données doit-il satisfaire 2NF ou un autre formulaire normal?

Il est dans
Oracle® Guide OLAP Application Developer
10g Release 1 (10.1)
3.2.1 Tableau Dimension: TIME_DIM
https://docs.oracle.com/cd/B13789_01/olap.101/b10333/global.htm#CHDCGABE

pour représenter le mois hiérarchie -> TRIMESTRE -> AN, nous avons besoin de clés telles que: YEAR_ID, QUARTER_ID. Mais il y a certaines choses que je ne comprends pas:

1) Pourquoi avons-nous besoin du champ YEAR_DSC & QUARTER_DSC? Je pense que nous pouvons rechercher ces valeurs à partir de l'année & QUARTER TABLE. Et ça casse 2NF.

2) Quelle est la forme normale qu'un schéma dans l'entrepôt de données doit satisfaire? (1NF, 2NF, 3NF ou tout.)

+1

Salut. S'il vous plaît faites des questions autonomes. Donc, si vous pensez qu'il y a des parties spécifiques de la page liée qui sont nécessaires pour votre question, alors s'il vous plaît modifier votre message pour les dire et/ou citer en usage loyal. (Il est bon de garder ce lien pour plus d'informations.) – philipxy

Répondre

3

Les NFs (formes normales) ne sont pas importantes pour les tables de base d'entrepôt de données. Nous normalisons pour réduire certains types de redondance de sorte que lorsque nous mettons à jour une base de données, nous ne disons pas la même chose à plusieurs endroits et que nous ne puissions pas dire par inadvertance la même chose où elle aurait besoin à dire à plusieurs endroits. Ce n'est pas un problème dans les résultats de la requête, car nous ne les mettons pas à jour. La même chose est vraie pour les tables de base d'un entrepôt de données.

Les entrepôts de données sont généralement optimisés pour la vitesse de lecture, ce qui signifie généralement une dénormalisation par rapport à la base de données d'origine pour éviter le recalcul au détriment de l'espace. (Notez que parfois relire quelque chose de plus gros peut être plus lent que de lire des parties plus petites et de recalculer la grande chose.) Nous ne voulons probablement pas abandonner les tables normalisées lorsque nous passons à un entrepôt de données. Je veux ralentir en recomputing eux. En dehors de ces compromis, il n'y a pas de raison de dénormaliser. Some particular warehouse design methods might have their own rules about what parts should be denormalized what amounts.

(Quelle que soit la conception de notre base de données originale NF est choisie, nous devrions toujours normalisent d'abord à 5NF puis dénormaliser consciemment. Nous ne devons normaliser ou savoir des contraintes de mettre à jour ou interroger une base de données.)

Lire quelques bases de manuels sur pourquoi nous normalisons & pourquoi nous utilisons des entrepôts de données.

+0

Je pense que les entrepôts de données ressemblent davantage à des rapports qu'à des bases de données OLTP. –