Bonjour,
Je suis en train d’essayer d’organiser au mieux ma base de donnée (Pour une fois j’essaye de prévoir à quoi va ressembler ma base de donnée avant de commencer à coder, comme ça je n’aurai pas besoin de recoder 18x le truc :p)
Mais je me pose plusieurs questions, surtout au niveau des performances et de la lisibilité de mes tables.
J’aurai un niveau d’architecture semblage à celui-ci: (Sauf avec bien plus de composant au deuxième niveau)
1 2 3 4 | Projets / \ / \ Site internet Logiciel |
Et ensuite j’aimerais pouvoir ajouter des informations (post-it) et un un système d’issue (ticket). Mais je ne sais pas si, je dois créer une table post-it
et une table issue
contenant un champs projet_id
ou alors inclure ceci, dans ma table projet. (Et insérer des tableaux sérialisé dans mes champs) ?
Le problème à la première solution selon moi est qu’on va faire plusieurs requête dans la base de donnée peut-être inutile (Une fois pour aller prendre le projet, une fois pour aller récupéré les détails du projet, Dans le cas d’un Site-web selon mon schéma, une fois pour aller chercher les post-it et une fois pour aller chercher mes issues).
Soit 4 requêtes.
Le problème de la solution, est que la table projet contiendrait beaucoup plus de données, et la lisibilité de la table serait bien moins évidente.
Que me conseilleriez-vous ?
Et je voulais savoir, qu’elle est la limite du nombre de donnée que peut contenir une table MySQL, car il y a bien un moment avec un certain nombre de donnée où les requêtes vont commencer à devenir lente non ?
Je vous remercie.