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,
Partager