Source::jianshu.com/p/0768ebc4e28d
Il y a un tableau des flux financiers,Pas de sous - stockage et de sous - table,La quantité actuelle de données est9555695,La requête pagée a été utilisée pourlimit,L'optimisation des requêtes précédentes prend du temps16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),Ajuster comme suitSQLAprès,Ça prend du temps347 ms (execution: 163 ms, fetching: 184 ms);
Fonctionnement: Les critères de requête sont placés dans la Sous - Requête,Sous - requête pour la clé primaire seulementID,Ensuite, interrogez d'autres champs d'attributs en utilisant l'Association de clés primaires déterminée dans la Sous - Requête;
Principes: Réduire les opérations de retour à la table,Optimiser les scénarios de pagination hyper - Multi - pages avec des associations de latence ou des sous - requêtes.
mysql> select index_name,count(*) from information_schema.INNODB_BUFFER_PAGE where INDEX_NAME in('val','primary') and TABLE_NAME like '%test%' group by index_name;
Empty set (0.03 sec)
Exécutionsql:
mysql> select * from test a inner join (select id from test where val=4 limit 300000,5) b on a.id=b.id;
+---------+-----+--------+---------+
| id | val | source | id |
+---------+-----+--------+---------+
| 3327622 | 4 | 4 | 3327622 |
| 3327632 | 4 | 4 | 3327632 |
| 3327642 | 4 | 4 | 3327642 |
| 3327652 | 4 | 4 | 3327652 |
| 3327662 | 4 | 4 | 3327662 |
+---------+-----+--------+---------+
5 rows in set (0.09 sec)
mysql> select index_name,count(*) from information_schema.INNODB_BUFFER_PAGE where INDEX_NAME in('val','primary') and TABLE_NAME like '%test%' group by index_name;
+------------+----------+
| index_name | count(*) |
+------------+----------+
| PRIMARY | 5 |
| val | 390 |
+------------+----------+
2 rows in set (0.03 sec)
Nous pouvons voir la différence évidente entre les deux:Le premiersqlChargé4098Pages de données àbuffer pool,Et le secondsqlSeulement chargé5Pages de données àbuffer pool.Conformément à nos prévisions.Ça confirme aussi pourquoi le premiersqlÇa va ralentir.:Lire un grand nombre de lignes de données inutiles(300000),Et finalement abandonné.Et ça crée un problème:Chargé beaucoup de hotspots pas très haut page de données àbuffer pool,Peut causerbuffer poolLa pollution,Occupationbuffer poolDe l'espace. Problèmes rencontrés
Pour s'assurer qu'il est vide à chaque redémarragebuffer pool,On doit fermerinnodb_buffer_pool_dump_at_shutdownEtinnodb_buffer_pool_load_at_startup,Ces deux options contrôlent la fermeture de la base de donnéesdumpSortez!buffer poolDonnées dans et chargées sur le disque pour la sauvegarde lorsque la base de données est ouvertebuffer poolDonnées.
Références
1.https://explainextended.com/2009/10/23/mysql-order-by-limit-performance-late-row-lookups/
2.https://dev.mysql.com/doc/refman/5.7/en/innodb-information-schema-buffer-pool-tables.html
—————END—————
Attention au numéro public:JavaProgrammation de l'arrière - plan,Répondre aux mots clés suivants
Oui.JavaApprendre le parcours complet,Réponse Itinéraire
Non disponibleJavaVidéo de démarrage,Réponse: Vidéo
Oui.JavaExpérience de l'entrevue,Réponse Interview
Non disponibleJavaProjets,Réponse: Projets
Entrez.JavaFan Group: Ajouter un groupe
PS:Si je pense que mon partage est bon,Tout le monde est le bienvenu.、Je regarde.
(Terminé.)
Ajoutez - moi"Wechat" Obtenir unPart Mise à jourJavaQuestions d'entrevue
Veuillez noter:666,Sinon, non.Adoption~
Récemment, haowen
1、Un système de gestion de fond qui doit être recommandé
2、 J'ai trouvé la base de données d'une soeur Tsinghua !
3、Java Le public de la programmation d'arrière - plan a été officiellement formé !
4、 Un ensemble simple et polyvalent JavaBackground management system,C'est parti.
![]()
Entretiens récentsBAT,Organiser une entrevue 《JavaInterviewBATManuel de dédouanement》 ,CouvertJavaTechnologies de base、JVM、JavaConcurrence、SSM、Microservices、Base de données、Structure des données, etc. Comment obtenir:Suivez le numéro public et répondez java Recevoir,Plus d'informations sont disponibles. A demain(。・ω・。)ノ
Cet article provient de Wechat public number:ProcédureITCercle
Article original,Auteur:Longueur de la pile,Si elle est reproduite,Veuillez indiquer la source:https://www.cxyquan.com/24072.html










