Bonjour,

Je suis en train de reprendre un vieux cube 2000 pour y rajouter axes et indicateurs en 2005.

Il consiste en gros à totaliser 20.000 articles en stock * 48 mois * 15 filiales.

Cela me donne une table de fait de 14 400 000 lignes, avec à gérer la problématique (simple) des 48 mois tournants.

En regardant un peu ce qui existe déjà depuis une dizaine d'année, je me suis aperçu que notre fournisseur initial gérait une table par filiale et par mois au format STK_xxxx_AAAAMM ou xxxxx est le code filiale, AAAA l'année, MM le mois, soit un total de 720 tables de 20000 lignes et concaténait toutes ces tablas dans une vue.
La procédure stockée de traitement de tout ça effectue:
  • Le delete de la vue
  • Suppression des table trop vieilles
  • Ajout des tables pour la nouvelle période
  • Recréation de la vue en bouclant à l'aide d'un curseur sur le nom des tables.(Un simple UNION ALL)

Sachant qu'outre l'alimentation du cube, je voudrais rajouter des Reports basés sur des requetes SQL afin de justifier un peu les chiffres du cube, je me pose les questions suivantes:
  • A part la facilité de maintenance (effacement des tables puis rajout d'une autre table) y a t il un autre avantage à utiliser cette technique ? (plutot que d'avoir à gérer une seule grosse table ?)
  • Comment se comportent les index dans une vue d'une telle dimension sachant que chaque table est indexée sur 3 ou 4 champs ?
  • Quelles pourraient être les performances de simples requetes sur cette table, sachant qu'il s'agirait d'extraire des lignes détail en fonction de critères particuliers?

Merci de vos avis.