probleme table - SQL/NoSQL - Programmation
Marsh Posté le 15-03-2010 à 13:28:52
Pourquoi vouloir alléger cette table ? n'est-ce pas le but d'une base de données de stocker "en masse" justement ?
as tu des problèmes d'espace de stockage ou de perf quelque part ?
pour info, ta volumétrie conséquente c'est combien ?
- si c'est un problème de perfs, peut être peux tu optimiser en revoyant tes requêtes ou en placant des index sur la table (si ca n'est pas le cas)
- si tu veux moins de données dans ta table, peut être peux tu prévoir une purge glissante ? (ex: supprimer tous les jours toutes les données > 1 an)
en tous les cas a mon avis cela ne sert a rien de découper ta table en 2
Marsh Posté le 15-03-2010 à 14:18:31
Il y a apparemment quelques données inutiles dans ta table, à commencer par le command_name. Tu peux supprimer ce champ sans problème, le command_id nous permet de retrouver facilement le nom de la commande.
Le champ category, c'est la catégorie de quoi ? Du produit ? Il faut tracer cette catégorie dans le temps ? Par exemple, si on change la catégorie du produit, si on recherche une précédente livraison, on doit pouvoir retrouver la catégorie du produit au moment de la livraison ? Ou aucun intérêt ? En fonction, tu pourras supprimer ou non le champ catégorie de ta table.
Enfin, le client. Pareil : est-ce que c'est toujours, sans exception aucune, le client qui a passé la commande ?
Donc déjà, avant de vouloir splitter ta table, commence par vérifier quels champs pourraient être supprimer. Rien que la suppression du champ "command_name" peut te faire gagner beaucoup de place.
Marsh Posté le 15-03-2010 à 10:48:25
Bonjour,
J'ai une table livraison, dans laquelle,
j'ai les colonnes suivantes :
ID_Produit
Categorie
Client
date_livraison
command_name
id_command
dans cette table j'ai par exemple ceci
ID_Produit Categorie Client date_livraison command id_command
XW1 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XX9 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XP1 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XP5 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XC8 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XD9 A ABYS 21/01/2010 RPZ_ALPHA5402 25
XV9 R ABYS 21/01/2010 RPZ_ALPHA5402 25
VC5 R ABYS 21/01/2010 RPZ_ALPHA5402 25
UYJ1 R ABYS 21/01/2010 RPZ_ALPHA5402 25
POK86 R ABYS 21/01/2010 RPZ_ALPHA540R 25
Il se trouve que les lignes s'accumule dans cette table
et la volumétrie commençe à devenir assez conséquente.
Afin d'alleger la table, que pourrai je faire ?
sortir les elements qui sont répeter dans une table à part ?
ex :
avoir une table livraison qui contiendrait
ID_Produit Categorie id_command
et une table livraison_complement avec
id_command Client client_info date_livraison
j'aurai un truc dans le genre :
ID_Produit Categorie id_command
XW1 A 25
XX9 A 25
XP1 A 25
XP5 A 25
XC8 A 25
XD9 A 25
XV9 R 25
VC5 R 25
UYJ1 R 25
POK86 R 25
id_command Client date_livraison
25 ABYS 21/01/2010 RPZ_ALPHA5402
est-ce que cela vous semble correct ?
et résoudra mon problème ?
Merci