Clés artificielles

MéthodeClé artificielles

Every join between dimension and fact tables in the data warehouse should be based on meaningless integer surrogate keys. You should avoid using the natural operational production codes. (Kimball, Ross, 2008, p59)[1]

  • Les dimensions doivent être les points entrées dans les faits pour les utilisateurs, donc les clés naturelles n'apporte rien (aucune requête n'est faites directement dans la table des faits, sans jointure)

  • L'usage de clés naturelle est plus simple au début, mais plus coûteux sur le long terme : les clés artificielles assurent l'indépendance aux évolutions futures du système opérationnel (on rappelle que le data warehouse vise le long terme, au delà de la durée de vie d'une version d'un système opérationnel typiquement)

  • Les clés artificielles sont plus performantes (entiers compressés)

  • les clés artificielles permettent de gérer les valeurs nulles (date...)

  • ...

MéthodeOID

Sous un système relationnel-objet les OID peuvent être utilisés.

Méthode

La mise en place de clés artificielles complique l'ETL et implique la maintenance d'une table de correspondance par exemple.