J'ai vu des questions similaires sur une jointure complexe vs plusieurs requêtes, auquel cas les réponses sont toujours "ça dépend" haha, mais je me demandais si je pouvais obtenir des informations sur la direction. J'espère que ce ne sera pas trop compliqué à expliquer.plusieurs jointures par rapport à des requêtes individuelles mises en cache?
J'affiche une page qui doit extraire des informations d'environ 3-4 tables différentes. Disons que nous avons une personne qui pourrait appartenir à un club, et ce club a beaucoup d'événements. Je devrais tirer des informations à partir du club, de la personne, de l'information de l'événement, etc.
Maintenant je les ai dans 3-4 tables séparées, mais ma table des événements a un grand nombre de colonnes que je suis jolie Certes, ce n'est pas normalisé, mais je le garde de telle sorte que je n'ai pas à faire plus de 3 à 5 jointures maximum. À l'heure actuelle, il semble que ce soit correct avec un petit ensemble de données, mais je ne peux pas m'empêcher de me demander si les séparer en 3-4 requêtes individuelles et en mettant en cache les résultats de certains d'entre eux serait plus rapide? La table des événements est mise à jour assez souvent, donc je peux voir que cela est invalidé, mais l'organisation et la table des utilisateurs ne le font pas, donc je peux voir que cela profite à cette dernière solution. Alors, que recommanderiez-vous? En outre, ma table d'événements contient un grand nombre de colonnes, dont certaines stockent des données fréquemment mises à jour ou de grandes colonnes de texte pour stocker des données de modèle clé/valeur sérialisées. Serait-il sage de partitionner cela à une autre table, donc j'ai des données "générales" et ensuite des données d'événement qui sont fréquemment mises à jour? Merci pour toute aide.
Avez-vous essayé d'utiliser 'EXPLAIN' pour avoir une idée générale de l'endroit où se trouve le goulot d'étranglement? – stillstanding