Base de donnée[table]

Résolu/Fermé
ailika Messages postés 3 Date d'inscription vendredi 11 juillet 2008 Statut Membre Dernière intervention 14 août 2008 - 14 août 2008 à 12:57
jee pee Messages postés 40663 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 11 janvier 2025 - 14 août 2008 à 13:34
Bonjour,
Voici ma question. je crée un site WEB où des projets seront enregistrés. Il y a énormément de projet et ceux-ci sont divisé en plusieurs parties, chacune enregistré dans la BD.
Je me demandais si il était préférable d'avoir une table avec tous les projets(la table serait alors conséquente[dépasserai les 200/300 lignes rapidement]) ou faire une table pour chaque projet(table de 6/10 lignes).
Je parle au niveau de la vitesse de recherche à long terme mais aussi de place sur la BD.
Je vous remercie d'avance.

4 réponses

Bonjour,

Pour ce qui est du délai de chargement, il est clair qu'à long terme, si les projets prennent de l'ampleur, une table par projet serait préférable car la base de données aurait moins de données à parcourir, surtout si tu fais des requêtes compliquées.

Exemple de la table de plusieurs millions de lignes, si tu demandes de regarder 4 ou 5 champs de la table et que la base de données doit parcourir toutes les entrées alors que ça ne concerne qu'un projet, il y a une perte de temps énorme.

Or, si tu vas chercher l'information dans la table du projet en particulier, il y aura moins de lignes et tu auras des réponse plus rapidement.

Pour 200 à 300 lignes, une table suffit mais pour davantage il est préférable d'en avoir plusieurs, ne serait-ce que pour la maintenance.
0
jee pee Messages postés 40663 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 11 janvier 2025 9 485
14 août 2008 à 13:34
Utiliser une base de données pour faire comme dans l'informatique d'il y a 30 ans où pour trouver les données sur un fichier sur bande magnétique il fallait consulter en séquentiel tous les enregistrements un par un, c'est pas terrible :-)

La gestion d'une BDD passe aussi par la création d'index appropriés à l'utilisation que l'on en fait.
-1
jee pee Messages postés 40663 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 11 janvier 2025 9 485
14 août 2008 à 13:04
Bonjour,

La vraie logique d'une BDD c'est de mettre tous les projets dans une seule table.

J'utilise couramment des bases de données avec des tables ayant des dizaines de millions de lignes.

cdt
-1
ailika Messages postés 3 Date d'inscription vendredi 11 juillet 2008 Statut Membre Dernière intervention 14 août 2008
14 août 2008 à 13:08
Ok.
Je te remercie pour ta réponse si rapide.
Et pour ce qui est du volume, cela change t'il véritablement quelque chose d'avoir une ou plusieurs table?
-1
jee pee Messages postés 40663 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 11 janvier 2025 9 485
14 août 2008 à 13:18
Sur les volumes cela n'aura que peu d'impact.

C'est sur l'utilisation des données que cela n'a pas de sens d'avoir plusieurs tables.

Si je veux la liste des projets ayant été mis à jour depuis 1 mois, c'est facile en un seul select. Si les projets sont dans plusieurs tables il faudrait faire plusieurs select avec des unions et quand tu rajoutes un projet, un il faut modifier la structure de la base et deux, modifier le select pour voir les projets maj
-1