Mysql
 sql >> Base de données >  >> RDS >> Mysql

Associations lentes dans SequelizeJS

Sequelize ralentit lorsque vous ajoutez des relations :M à vos relations include.:M entraînent des lignes en double dans votre résultat sql, nous devons donc passer du temps à dédupliquer cela et à l'analyser dans des modèles.

Pour des performances optimales, vous pouvez laisser vos relations :1 dans votre inclusion mais faire le :M dans des requêtes séparées.

Bien sûr, la requête elle-même peut également être lente, mais c'est probablement le résultat de la surcharge de Sequelize - Essayez d'exécuter la requête directement sur la base de données.

(Avis de non-responsabilité :développeur principal de Sequelize)

Tu tournes sur quelle version ? Le nombre initial que vous avez signalé semble élevé, mais nous avons entendu parler de ces chiffres avant de faire quelques optimisations, essayez de tester avec le dernier maître git.

Nous travaillons toujours à l'optimisation du code pour ces scénarios, mais la déduplication de 20 000 lignes à 5 000 lignes nécessitera toujours des cycles de processeur.