par
Hubert Roksor » 23 janv. 2006, 22:10
Je ne suis pas un pro de la modélisation, même si j'aime lire des papiers à ce sujet, mais je pense que la théorie voudrait que oui.
Mais ce n'est pas la théorie qui va faire fonctionner ton application alors je vais aussi te le conseiller d'un point de vue purement technique. Si tu utilises MySQL, étudie les EXPLAIN des requêtes concernant ces tables et tu devrais voir certaines jointures "ref" devenir "eq_ref" et les performances s'améliorer proportionnellement à la taille du résultat généré. Sous PostgreSQL, je pense que des "nested join" deviendront des "hash join" avec une petite amélioration des performances, mais cela reste entièrement à démontrer.
Ce n'est que mon avis, mais si tu n'as pas un très gros ratio INSERT:SELECT ou de gros problèmes de place sur le disque dur de la machin tu n'as aucune raison de ne pas ajouter de clés primaires à tes tables.
HTH
Je ne suis pas un pro de la modélisation, même si j'aime lire des papiers à ce sujet, mais je pense que la théorie voudrait que oui.
Mais ce n'est pas la théorie qui va faire fonctionner ton application alors je vais aussi te le conseiller d'un point de vue purement technique. Si tu utilises MySQL, étudie les EXPLAIN des requêtes concernant ces tables et tu devrais voir certaines jointures "ref" devenir "eq_ref" et les performances s'améliorer proportionnellement à la taille du résultat généré. Sous PostgreSQL, je pense que des "nested join" deviendront des "hash join" avec une petite amélioration des performances, mais cela reste entièrement à démontrer.
Ce n'est que mon avis, mais si tu n'as pas un très gros ratio INSERT:SELECT ou de gros problèmes de place sur le disque dur de la machin tu n'as aucune raison de ne pas ajouter de clés primaires à tes tables.
HTH