Partitionner une table et répartion des données
Bonjour,
Je souhaiterais optimiser l'organisation d'une base de données comptables.
Je viens de découvrir la possibilité de partitionner les données d'une table qui pourrait être répondre à ce besoin.
J'ai une table ECRITURE contenant toutes les écritures comptables depuis 2006.
La table possède un champ codeExercice représentant un exercice comptable par année : chaque exercice représente environ 1million de lignes.
J'ai actuellement à ma disposition 3 grappes de disques configurées en RAID1 sur un serveur 4cores, 8Go de RAM.
Je pensais procéder comme suit :
- Créer une fonction de partition basée sur le codeExercice et anticiper sur les codes exercices à venir:
- 2006,2007,2008,...2014, 2015, 2016, ...., 2029, 2030 - Associer à chaque partition un fileGroup différent (un fichier lié à chaque fois)
- ecriture_2006.ndf, ecriture_2007.ndf, ..., ecriture_2030.ndf - Répartir les fichiers de base de données comme suit :
- fichier de log sur la grappe 1
- fichier ecriture_2006.ndf sur la grappe 2
- fichier ecriture_2007.ndf sur la grappe 3
- fichier ecriture_2008.ndf sur la grappe 2
- fichier ecriture_2009.ndf sur la grappe 3
...
- fichier ecriture_2029.ndf sur la grappe 3
- fichier ecriture_2030.ndf sur la grappe 2
En procédant ainsi, je pense optimiser les lectures/écritures des disques de manière uniforme.
Car au niveau du logiciel comptable on accède qu'en général au exercice N et N-1.
Serait-ce une bonne démarche ou bien suis-je à coté de la plaque ?
Est ce que le nombre de lignes est "suffisant" pour que le partitionnement soit nécessaire et bénéfique.
Par avance merci,