Maison > base de données > Oracle > Résumer le plan d'exécution des requêtes Oracle

Résumer le plan d'exécution des requêtes Oracle

WBOY
Libérer: 2022-06-08 17:25:23
avant
2138 Les gens l'ont consulté

Cet article vous apporte des connaissances pertinentes sur Oracle. Il présente principalement le contenu pertinent sur le plan d'exécution des requêtes. Il s'agit des étapes et du processus spécifiques d'exécution des instructions SQL dans la base de données. être utile à tout le monde.

Résumer le plan d'exécution des requêtes Oracle

Tutoriel recommandé : "Tutoriel vidéo Oracle"

Le plan d'exécution (plan d'exécution) est également appelé plan de requête (plan de requête), qui correspond aux étapes et au processus spécifiques permettant à la base de données d'exécuter des instructions SQL. Le plan d'exécution d'une instruction de requête SQL comprend principalement :

  • Comment accéder à la table. La base de données accède aux données de la table via des index ou des analyses de table complètes.

  • Méthode de connexion multi-tables. Quel algorithme de connexion est utilisé par la base de données pour connecter les tables, y compris la séquence d'accès séquentiel de plusieurs tables.

  • Comment mettre en œuvre des opérations telles que le regroupement, l'agrégation et le tri.

Bien que différentes bases de données adoptent différentes méthodes d'implémentation pour le processus d'exécution des requêtes SQL, une instruction de requête doit généralement être traitée par l'analyseur, l'optimiseur et l'exécuteur et renvoyer le résultat final. En même temps, divers caches peuvent également l'être. utilisé pour améliorer les performances d’accès.

En termes simples, une instruction de requête commence à partir de la soumission du client jusqu'à ce que le serveur renvoie le résultat final. L'ensemble du processus est à peu près comme indiqué dans la figure.

Tout d'abord, le client soumet l'instruction SQL. Avant cela, le client doit se connecter au serveur de base de données. Le connecteur sur la figure est le composant responsable de l'établissement et de la gestion des connexions client.

Ensuite, l'analyseur (analyseur) analyse les différents composants de l'instruction SQL, effectue une analyse syntaxique et vérifie si la syntaxe de l'instruction SQL est conforme à la spécification.

Par exemple, le mot-clé FROM dans l'instruction suivante est incorrectement écrit sous la forme FORM :

Dans ce cas, tous les systèmes de gestion de base de données renverront une erreur de syntaxe.

L'optimiseur utilise ensuite les informations statistiques collectées par la base de données pour déterminer la meilleure façon d'exécuter l'instruction SQL. Par exemple, s'il faut accéder à une seule table via un index ou une analyse complète de la table, quel ordre utiliser pour connecter plusieurs tables, comment trier les données, etc.

L'optimiseur est un composant clé qui détermine les performances des requêtes, et les informations statistiques de la base de données constituent la base du jugement de l'optimiseur.

Enfin, l'exécuteur appelle le module d'exécution correspondant pour obtenir les données selon le plan d'exécution optimisé, et renvoie le résultat au client.

Comment visualiser le plan d'exécution

Méthode 1 : Vue instruction

Dans la base de données Oracle, nous pouvons également utiliser la commande EXPLAIN PLAN FOR pour générer le plan d'exécution, mais nous devons exécuter deux commandes :

EXPLAIN PLAN FOR

SELECT * FROM  T_USER1 t where t.user_name = 'Admin';

SELECT * FROM  TABLE(dbms_xplan.display);
Copier après la connexion

Utilisez EXPLAIN La commande PLAN FOR génère un plan d'exécution et le stocke dans la table système PLAN_TABLE, puis affiche le plan d'exécution généré via une instruction de requête.

Où dbms_xplan.display est une fonction du système Oracle. Les résultats renvoyés montrent que l'instruction trouve les données via l'analyse de la plage d'index « SYS_C0016771 » dans Oracle.

Méthode 2 : Utilisez des outils pour afficher

Dans l'outil de développement de base de données Oracle PL/SQL couramment utilisé, sélectionnez un script SQL et appuyez sur la touche F5 pour afficher automatiquement les informations du plan d'exécution du script, suivez la méthode 1 Les résultats de la requête sont les mêmes.

Analyse du processus d'exécution

Dans la base de données Oracle, nous pouvons interroger l'index et les informations de champ associées via les tables système user_indexes et user_ind_columns.

SELECT * FROM  user_indexes;

SELECT * FROM  user_ind_columns;
Copier après la connexion

Tutoriel recommandé : "Tutoriel vidéo Oracle"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal