
Oracle SQL Practical Tuning Compass
Description
Introduction au livre
Optimisation SQL : la clé pour optimiser les performances des données
Dans l'environnement numérique actuel, la rapidité et l'efficacité sont des facteurs déterminants pour la performance des entreprises.
Avec l'augmentation du nombre d'applications traitant de grandes quantités de données et l'expansion des entrepôts de données et des environnements cloud, l'optimisation SQL n'est plus simplement une question d'optimisation des performances ; elle est devenue une technologie essentielle qui détermine la compétitivité des entreprises.
Cela fait longtemps que j'ai écrit un livre sur l'optimisation SQL, « Oracle Practical Tuning Basics » il y a environ 10 ans.
« Oracle Practical Tuning Basic Solutions » était composé de 12 chapitres.
Cet ouvrage a été enrichi et compte désormais 19 chapitres. Il est rédigé d'après la version du XIXe siècle, qui est la plus utilisée de nos jours.
Dans l'environnement numérique actuel, la rapidité et l'efficacité sont des facteurs déterminants pour la performance des entreprises.
Avec l'augmentation du nombre d'applications traitant de grandes quantités de données et l'expansion des entrepôts de données et des environnements cloud, l'optimisation SQL n'est plus simplement une question d'optimisation des performances ; elle est devenue une technologie essentielle qui détermine la compétitivité des entreprises.
Cela fait longtemps que j'ai écrit un livre sur l'optimisation SQL, « Oracle Practical Tuning Basics » il y a environ 10 ans.
« Oracle Practical Tuning Basic Solutions » était composé de 12 chapitres.
Cet ouvrage a été enrichi et compte désormais 19 chapitres. Il est rédigé d'après la version du XIXe siècle, qui est la plus utilisée de nos jours.
indice
PARTIE 01.
Architecture de base d'Oracle
section 01 Architecture de la base de données Oracle
section 02 Architecture de la mémoire
section 03 Architecture des processus
section 04 Structures de stockage Oracle
PARTIE 02.
Principes fondamentaux de l'optimisation des performances Oracle
Section 01 Vue d'ensemble de l'optimisation des performances d'Oracle SQL
Section 02 Aperçu des principes fondamentaux du réglage de la base de données
Section 03 Optimisation du cache de bibliothèque : réduction de la charge d’analyse SQL
Section 04 Minimisation des appels à la base de données
Section 05 Efficacité des E/S
PARTIE 03.
Outils d'optimisation des performances et analyse du plan d'exécution
section 01 DBMS_XPLAN.DISPLAY_CURSOR
section 02 DBMS_XPLAN.DISPLAY_AWR
Section 03 SQL_MONITOR
Section 04 Méthode d'analyse de base de la séquence du plan d'exécution
Section 05 Analyse des exceptions au plan d'exécution
PARTIE 04. MODÈLE D'ACCÈS À L'INDEX
Section 01 Structure d'index de l'arbre B
Section 02 INDEX PLAGE SCAN
section 03 INDEX PLAGE SCAN DESCENDANT
Section 04 INDEX SCAN UNIQUE
section 05 INDEX PLAGE SCAN (MIN/MAX)
Section 06 ACCÈS À LA ROUTE
Section 07 Traitement de la colonne INDEX
Section 08 Facteur de regroupement
Section 09 ANALYSE COMPLÈTE DU TABLEAU
Section 10 Conditions d'accès à l'index, Conditions de filtrage, Sélectivité
section 11 INDEX SAUTER LA LECTURE
section 12 INDEX INLIST INTERATOR
Section 13 INDEX SCAN COMPLET
section 14 INDEX SCAN COMPLET (MIN/MAX)
section 15 INDEX ANALYSE COMPLÈTE RAPIDE
Section 16 INDEX COMBINE
Section 17 INDEX JOIN
Section 18 Comparaison des différences entre INDEX COMBINE et INDEX JOIN
Section 19 EFFETS DE FILTRAGE D'INDICE
PARTIE 05. STRATÉGIE DE CONCEPTION D'INDEX
Section 01 Sélectivité et cardinalité
Section 02 : Saisie, suppression et mise à jour de la colonne INDEX
Section 03 INDEX Critères de sélection
Section 04 Critères de conception de l'index par type de table
Section 05 Caractéristiques de l'INDEX de colonne combiné et critères de détermination de l'ordre des colonnes
Section 06 Procédure de sélection de l'INDEX
Section 07 INDEX Exemple de conception
PARTIE 06. REJOINDRE
section 01 JOINTURE DE BOUCLE IMBRIQUÉE
Section 02 JOINTURE DE HASH
Section 03 TRIER FUSIONNER JOINDRE
section 04 JPPD (Join Predicate Push Down)
Section 05 L'impact de l'ordonnance conjointe sur l'exécution
PARTIE 07.
Sous-requête
sous-requête FILTRE section 01
sous-requête FILTRE ANTÉRIEUR section 02
section 03 NL SEMI / ANTI JOINT
Section 04 Utilisation de sous-requêtes corrélées (FILTER, NL SEMI JOIN)
section 05 HASH SEMI / ANTI JOIN
section 06 TRI FUSION SEMI / ANTI JOINTURE
Section 07 Sous-requêtes scalaires
Section 08 Sous-requêtes non corrélées
PARTIE 08.
Plans d'exécution distincts
Section 01 Séparation des plans d'exécution par CONCATNATION
Section 02 Séparation des plans d'exécution à l'aide de UNION ALL
PARTIE 09.
Traitement de la pagination
Section 01 Traitement partiel, traitement complet
Section 02 Comment utiliser la pagination standard
Section 03 Utilisation de la pagination standard - Existence d'un index optimal
Section 04 Utilisation de la pagination standard - Pas d'index optimal
Section 05 Utilisation de la pagination standard - Ordre de traitement
Section 06 Application de traitement de la pagination
Section 07 Traitement de la pagination au format de tableau d'affichage Web
PARTIE 10. RÉGLAGE PGA
Section 01 TRIER PAR
section 02 TRIER PAR & TRIER PAR STEOPKEY (STOPKEY)
section 03 TRIER GROUPER PAR & HACHER GROUPER PAR
section 04 TRI UNIQUE & HACHAGE UNIQUE
section 05 HASH JOIN, HASH SEMI JOIN et HASH ANTI JOIN
section 06 TRIER FUSION JOINTURE, FUSION SEMI JOINTURE & FUSION ANTI JOINTURE
PARTIE 11.
Fonctions analytiques et plans d'exécution
Section 01 TRI PAR FENÊTRE
section 02 TRI PAR FENÊTRE RANG POUSSÉ
Section 03 WINDOW NOSORT
section 04 FENÊTRE NOSORT STOPKEY
Section 05 TAMPON DE FENÊTRE
Section 06 : Analyse approfondie des plans d’exécution des fonctions analytiques
PARTIE 12.
Réglage répété des mêmes données
Section 01 Accès répété via une sous-requête OU une vue en ligne - Utilisation des fonctions analytiques
Section 02 UNION ALL Répéter l'accès - Intégration SQL
Section 03 UNION ALL Répéter l'accès - Jointure cartésienne
Section 04 UNION ALL Accès répété - Utilisation de la fonction de traitement des sous-total
Section 05 UNION ALL Accès répété - AVEC Utilisation de la déclaration
Section 06 Instruction UPDATE Sous-requête Répéter ACCESS - Utilisation de l'instruction MERGE
section 07 FUSION itération de la table cible ACCÈS
PARTIE 13.
Autres réglages d'application
Section 01 Lignes multiples → Grouper en une seule ligne et colonne
Section 02 Données regroupées sur une seule ligne et colonne → Fractionner en plusieurs lignes
section 03 Produit cumulatif entre les lignes
Section 04 Application JOIN cartésienne - État quotidien, hebdomadaire et mensuel
Section 05 INDEX JOIN Application
section 06 Réglage à l'aide des informations de contour
PARTIE 14.
Optimiseur
Section 01 Qu'est-ce qu'un optimiseur ?
section 02 10053 Trace
section 03 Transformation de requête heuristique
PARTIE 15.
Optimisation des journaux de transactions et de restauration Oracle
Transaction de la section 01
Section 02 Rétablir et annuler
Section 03 Modifications des données et Rétablir/Annuler
Section 04 Cas pratiques de réglage
PARTIE 16.
Partitionnement
Section 01 Aperçu
Section 02 Concepts de base
Section 03 Types de partitionnement
Section 04 Stratégie de clé de partition
section 05 INDEX de la table partitionnée
Section 06 Gestion des partitions
Section 07 Élagage de partition
PARTIE 17.
Oracle Exadata Basic
Section 01 Présentation d'Exadata
Section 02 Déchargement
Section 03 INDICE DE STOCKAGE
section 04 HCC (Compression à colonnes hybrides)
Section 05 CACHE FLASH INTELLIGENT
Section 06 Traitement parallèle
Section 07 Considérations relatives au développement sur Exadata
PARTIE 18.
Méthodologie de base d'analyse des performances Oracle
Section 01 Aperçu de la méthodologie d'analyse des performances
Section 02 Comprendre les données de performance de base
Section 03 Outil d'analyse des performances
Section 04 Analyse de performance de base
PARTIE 19.
Exemples pratiques de réglage
Section 01 Sections connexes - 4. Modèle d'accès à l'index
Section 02 Sections connexes - 4. Modèle d'accès à l'index
Section 03 Sections connexes - 6. REJOINDRE
Section 04 Sections connexes - 6. REJOINDRE (JPPD)
Section 05 Sections connexes - 7.
Sous-requête
Section 06 Sections connexes - 6. JOINDRE, 7.
Sous-requête, 12.
Répétition des mêmes données ACCÈS Section Réglage 07 Section associée - 8.
Plans d'exécution distincts
Section 08 Sections connexes - 6. JOINDRE, 8.
Plans d'exécution distincts
Section 09 Sections connexes - 7.
Sous-requête, 10. Réglage PGA
Section 10 Sections connexes - 6. JOINDRE, 7.
Sous-requêtes, 10. Réglage PGA
Section 11 Sections connexes - 12.
Réglage répété des mêmes données
Section 12 Sections connexes - 5. Modèle d'accès à l'index, 9.
Traitement de la pagination
Section 13 Sections connexes - 9.
Traitement de la pagination, 7.
Sous-requête
Section 14 Sections connexes - 6. REJOINDRE
Article 15 Articles connexes - 6. REJOINDRE (JPPD)
Section 16 Sections connexes - 7.
Sous-requête
Architecture de base d'Oracle
section 01 Architecture de la base de données Oracle
section 02 Architecture de la mémoire
section 03 Architecture des processus
section 04 Structures de stockage Oracle
PARTIE 02.
Principes fondamentaux de l'optimisation des performances Oracle
Section 01 Vue d'ensemble de l'optimisation des performances d'Oracle SQL
Section 02 Aperçu des principes fondamentaux du réglage de la base de données
Section 03 Optimisation du cache de bibliothèque : réduction de la charge d’analyse SQL
Section 04 Minimisation des appels à la base de données
Section 05 Efficacité des E/S
PARTIE 03.
Outils d'optimisation des performances et analyse du plan d'exécution
section 01 DBMS_XPLAN.DISPLAY_CURSOR
section 02 DBMS_XPLAN.DISPLAY_AWR
Section 03 SQL_MONITOR
Section 04 Méthode d'analyse de base de la séquence du plan d'exécution
Section 05 Analyse des exceptions au plan d'exécution
PARTIE 04. MODÈLE D'ACCÈS À L'INDEX
Section 01 Structure d'index de l'arbre B
Section 02 INDEX PLAGE SCAN
section 03 INDEX PLAGE SCAN DESCENDANT
Section 04 INDEX SCAN UNIQUE
section 05 INDEX PLAGE SCAN (MIN/MAX)
Section 06 ACCÈS À LA ROUTE
Section 07 Traitement de la colonne INDEX
Section 08 Facteur de regroupement
Section 09 ANALYSE COMPLÈTE DU TABLEAU
Section 10 Conditions d'accès à l'index, Conditions de filtrage, Sélectivité
section 11 INDEX SAUTER LA LECTURE
section 12 INDEX INLIST INTERATOR
Section 13 INDEX SCAN COMPLET
section 14 INDEX SCAN COMPLET (MIN/MAX)
section 15 INDEX ANALYSE COMPLÈTE RAPIDE
Section 16 INDEX COMBINE
Section 17 INDEX JOIN
Section 18 Comparaison des différences entre INDEX COMBINE et INDEX JOIN
Section 19 EFFETS DE FILTRAGE D'INDICE
PARTIE 05. STRATÉGIE DE CONCEPTION D'INDEX
Section 01 Sélectivité et cardinalité
Section 02 : Saisie, suppression et mise à jour de la colonne INDEX
Section 03 INDEX Critères de sélection
Section 04 Critères de conception de l'index par type de table
Section 05 Caractéristiques de l'INDEX de colonne combiné et critères de détermination de l'ordre des colonnes
Section 06 Procédure de sélection de l'INDEX
Section 07 INDEX Exemple de conception
PARTIE 06. REJOINDRE
section 01 JOINTURE DE BOUCLE IMBRIQUÉE
Section 02 JOINTURE DE HASH
Section 03 TRIER FUSIONNER JOINDRE
section 04 JPPD (Join Predicate Push Down)
Section 05 L'impact de l'ordonnance conjointe sur l'exécution
PARTIE 07.
Sous-requête
sous-requête FILTRE section 01
sous-requête FILTRE ANTÉRIEUR section 02
section 03 NL SEMI / ANTI JOINT
Section 04 Utilisation de sous-requêtes corrélées (FILTER, NL SEMI JOIN)
section 05 HASH SEMI / ANTI JOIN
section 06 TRI FUSION SEMI / ANTI JOINTURE
Section 07 Sous-requêtes scalaires
Section 08 Sous-requêtes non corrélées
PARTIE 08.
Plans d'exécution distincts
Section 01 Séparation des plans d'exécution par CONCATNATION
Section 02 Séparation des plans d'exécution à l'aide de UNION ALL
PARTIE 09.
Traitement de la pagination
Section 01 Traitement partiel, traitement complet
Section 02 Comment utiliser la pagination standard
Section 03 Utilisation de la pagination standard - Existence d'un index optimal
Section 04 Utilisation de la pagination standard - Pas d'index optimal
Section 05 Utilisation de la pagination standard - Ordre de traitement
Section 06 Application de traitement de la pagination
Section 07 Traitement de la pagination au format de tableau d'affichage Web
PARTIE 10. RÉGLAGE PGA
Section 01 TRIER PAR
section 02 TRIER PAR & TRIER PAR STEOPKEY (STOPKEY)
section 03 TRIER GROUPER PAR & HACHER GROUPER PAR
section 04 TRI UNIQUE & HACHAGE UNIQUE
section 05 HASH JOIN, HASH SEMI JOIN et HASH ANTI JOIN
section 06 TRIER FUSION JOINTURE, FUSION SEMI JOINTURE & FUSION ANTI JOINTURE
PARTIE 11.
Fonctions analytiques et plans d'exécution
Section 01 TRI PAR FENÊTRE
section 02 TRI PAR FENÊTRE RANG POUSSÉ
Section 03 WINDOW NOSORT
section 04 FENÊTRE NOSORT STOPKEY
Section 05 TAMPON DE FENÊTRE
Section 06 : Analyse approfondie des plans d’exécution des fonctions analytiques
PARTIE 12.
Réglage répété des mêmes données
Section 01 Accès répété via une sous-requête OU une vue en ligne - Utilisation des fonctions analytiques
Section 02 UNION ALL Répéter l'accès - Intégration SQL
Section 03 UNION ALL Répéter l'accès - Jointure cartésienne
Section 04 UNION ALL Accès répété - Utilisation de la fonction de traitement des sous-total
Section 05 UNION ALL Accès répété - AVEC Utilisation de la déclaration
Section 06 Instruction UPDATE Sous-requête Répéter ACCESS - Utilisation de l'instruction MERGE
section 07 FUSION itération de la table cible ACCÈS
PARTIE 13.
Autres réglages d'application
Section 01 Lignes multiples → Grouper en une seule ligne et colonne
Section 02 Données regroupées sur une seule ligne et colonne → Fractionner en plusieurs lignes
section 03 Produit cumulatif entre les lignes
Section 04 Application JOIN cartésienne - État quotidien, hebdomadaire et mensuel
Section 05 INDEX JOIN Application
section 06 Réglage à l'aide des informations de contour
PARTIE 14.
Optimiseur
Section 01 Qu'est-ce qu'un optimiseur ?
section 02 10053 Trace
section 03 Transformation de requête heuristique
PARTIE 15.
Optimisation des journaux de transactions et de restauration Oracle
Transaction de la section 01
Section 02 Rétablir et annuler
Section 03 Modifications des données et Rétablir/Annuler
Section 04 Cas pratiques de réglage
PARTIE 16.
Partitionnement
Section 01 Aperçu
Section 02 Concepts de base
Section 03 Types de partitionnement
Section 04 Stratégie de clé de partition
section 05 INDEX de la table partitionnée
Section 06 Gestion des partitions
Section 07 Élagage de partition
PARTIE 17.
Oracle Exadata Basic
Section 01 Présentation d'Exadata
Section 02 Déchargement
Section 03 INDICE DE STOCKAGE
section 04 HCC (Compression à colonnes hybrides)
Section 05 CACHE FLASH INTELLIGENT
Section 06 Traitement parallèle
Section 07 Considérations relatives au développement sur Exadata
PARTIE 18.
Méthodologie de base d'analyse des performances Oracle
Section 01 Aperçu de la méthodologie d'analyse des performances
Section 02 Comprendre les données de performance de base
Section 03 Outil d'analyse des performances
Section 04 Analyse de performance de base
PARTIE 19.
Exemples pratiques de réglage
Section 01 Sections connexes - 4. Modèle d'accès à l'index
Section 02 Sections connexes - 4. Modèle d'accès à l'index
Section 03 Sections connexes - 6. REJOINDRE
Section 04 Sections connexes - 6. REJOINDRE (JPPD)
Section 05 Sections connexes - 7.
Sous-requête
Section 06 Sections connexes - 6. JOINDRE, 7.
Sous-requête, 12.
Répétition des mêmes données ACCÈS Section Réglage 07 Section associée - 8.
Plans d'exécution distincts
Section 08 Sections connexes - 6. JOINDRE, 8.
Plans d'exécution distincts
Section 09 Sections connexes - 7.
Sous-requête, 10. Réglage PGA
Section 10 Sections connexes - 6. JOINDRE, 7.
Sous-requêtes, 10. Réglage PGA
Section 11 Sections connexes - 12.
Réglage répété des mêmes données
Section 12 Sections connexes - 5. Modèle d'accès à l'index, 9.
Traitement de la pagination
Section 13 Sections connexes - 9.
Traitement de la pagination, 7.
Sous-requête
Section 14 Sections connexes - 6. REJOINDRE
Article 15 Articles connexes - 6. REJOINDRE (JPPD)
Section 16 Sections connexes - 7.
Sous-requête
Avis de l'éditeur
Même si vous développez du SQL depuis plusieurs années, le sujet de l'optimisation du SQL en lui-même n'est pas facile à aborder.
Fort de mon expérience en optimisation SQL, j'ai animé des formations et des études de cas pour mon équipe de développement. J'ai soigneusement structuré le contenu et les sujets abordés afin de les rendre accessibles à tous. Si l'optimisation SQL peut s'avérer complexe pour les débutants, ce livre sera d'une simplicité enfantine pour toute personne ayant deux à trois ans d'expérience en SQL.
Le rôle des experts en réglage est crucial même à l'ère de l'IA.
L'IA peut analyser automatiquement les plans d'exécution ou tenter d'optimiser les réglages et recommander des résultats d'optimisation, mais elle ne peut pas interpréter avec précision toutes les situations.
Les modèles de données et les logiques métier complexes requièrent l'expertise et l'interprétation de spécialistes. Les outils d'optimisation basés sur l'IA (comme Oracle SQL Tuning Advisor) peuvent améliorer les performances, mais une mauvaise utilisation peut les dégrader. C'est pourquoi une revue et une vérification par des experts avant et après la mise en œuvre sont essentielles.
Les requêtes SQL comportant des jointures complexes et des fonctions analytiques sont difficiles à optimiser automatiquement, et les requêtes SQL de haute complexité nécessitent toujours une intervention manuelle d'experts.
En résumé, l'IA est un outil pour les experts en réglage, et non un substitut ; ce sont toujours ces experts qui interpréteront les recommandations de l'IA et en seront responsables.
Les développeurs et les experts en optimisation doivent valider les techniques d'optimisation recommandées par l'IA et concevoir des requêtes SQL optimales, adaptées à la logique métier. Si l'IA peut automatiser l'optimisation SQL, elle ne peut pas déterminer automatiquement le partitionnement des données, la conception des index et les stratégies d'optimisation pour les environnements OLTP et OLAP. Même à l'ère de l'IA, les experts en optimisation doivent comprendre les modèles de données et concevoir des requêtes SQL optimales. Ils doivent maîtriser les principes de l'optimisation SQL et devenir des experts capables de collaborer avec les outils d'automatisation.
Structure et caractéristiques de ce livre
Ce livre aborde les concepts essentiels et les techniques pratiques d'optimisation des performances SQL basées sur Oracle 19c.
Lors de l'optimisation de nombreuses requêtes SQL, je constate que 80 % des dégradations de performances les plus courantes suivent un schéma bien précis.
Ce livre explique comment résoudre 80 % des problèmes de dégradation des performances les plus courants rencontrés en pratique, tout en présentant des techniques de réglage avancées.
● Principes de base de l'optimisation SQL
Architecture de base d'Oracle (Chapitre 1)
Principes et outils d'optimisation des performances SQL (Chapitres 2-3)
Comprendre comment le SQL est exécuté et les principales causes de dégradation des performances est la première étape de l'optimisation.
Ce chapitre aborde les principes de base de l'optimisation des performances SQL et couvre divers outils de réglage (DBMS_XPLAN_DISPLAY_CURSOR, SQL Monitoring Report, etc.) pour analyser les plans d'exécution et mesurer les performances.
● Stratégie d'optimisation de l'exécution SQL
INDEX (Chapitres 4-5)
REJOIGNEZ-NOUS (Chapitre 6)
Sous-requêtes et séparation du plan d'exécution (Chapitres 7 à 9)
L'un des facteurs les plus importants dans l'optimisation SQL est l'utilisation des index. Les performances peuvent varier considérablement selon la conception des index et l'optimisation des méthodes de jointure ; cet article présente des stratégies pour optimiser ces aspects.
Il fournit également des méthodes pour améliorer les performances SQL en détaillant les sous-requêtes, le fractionnement du plan d'exécution et les techniques d'optimisation du traitement de la pagination.
● Autres techniques d'optimisation SQL
Analyse du plan de réglage et d'exécution PGA (Chapitres 10-11)
Optimisation de l'accès aux données répétées (Chapitre 12)
Comprendre les autres outils de réglage et d'optimisation d'applications (chapitres 13-14)
Nous présentons des stratégies visant à réduire l'utilisation inutile de la mémoire lors de l'exécution de requêtes SQL et à minimiser les accès répétés aux mêmes données.
Nous abordons également les principes de base des optimiseurs et leur réglage d'application.
Optimisation et exemples pratiques dans des environnements de données à grande échelle
Optimisation des journaux de transactions et de restauration Oracle (Chapitre 15)
Principes de base du partitionnement et d'Exadata (Chapitres 16-17)
Analyse des performances et cas pratiques d'Oracle (chapitres 18-19)
Le partitionnement est essentiel dans les environnements de données volumineuses.
Et l'utilisation d'Exadata est en hausse dans les environnements de données à grande échelle.
À cet égard, nous avons abordé le partitionnement et l'exploitation d'Oracle Exadata.
Et les experts en optimisation SQL ne se contentent pas d'optimiser les requêtes SQL.
Lorsqu'un problème de performance survient dans une base de données, celle-ci est responsable de l'identification et de l'analyse de la cause de ce problème au sein de la base de données.
Par conséquent, nous avons également abordé la méthodologie de base de l'analyse des performances d'Oracle.
Enfin, nous avons structuré le cours pour vous aider à comprendre comment la théorie est appliquée dans le monde du travail réel grâce à des exemples concrets.
Devenir un guide et une boussole pour l'optimisation SQL
À l'ère de l'IA, l'optimisation SQL est assistée, mais le rôle des experts en optimisation restera nécessaire.
Oracle a également publié 23ai dans sa dernière version 23, mais l'essence du réglage reste inchangée.
J'espère que ce livre vous guidera efficacement dans l'optimisation des performances SQL. Commençons dès aujourd'hui votre parcours pour devenir un expert en réglage SQL.
Fort de mon expérience en optimisation SQL, j'ai animé des formations et des études de cas pour mon équipe de développement. J'ai soigneusement structuré le contenu et les sujets abordés afin de les rendre accessibles à tous. Si l'optimisation SQL peut s'avérer complexe pour les débutants, ce livre sera d'une simplicité enfantine pour toute personne ayant deux à trois ans d'expérience en SQL.
Le rôle des experts en réglage est crucial même à l'ère de l'IA.
L'IA peut analyser automatiquement les plans d'exécution ou tenter d'optimiser les réglages et recommander des résultats d'optimisation, mais elle ne peut pas interpréter avec précision toutes les situations.
Les modèles de données et les logiques métier complexes requièrent l'expertise et l'interprétation de spécialistes. Les outils d'optimisation basés sur l'IA (comme Oracle SQL Tuning Advisor) peuvent améliorer les performances, mais une mauvaise utilisation peut les dégrader. C'est pourquoi une revue et une vérification par des experts avant et après la mise en œuvre sont essentielles.
Les requêtes SQL comportant des jointures complexes et des fonctions analytiques sont difficiles à optimiser automatiquement, et les requêtes SQL de haute complexité nécessitent toujours une intervention manuelle d'experts.
En résumé, l'IA est un outil pour les experts en réglage, et non un substitut ; ce sont toujours ces experts qui interpréteront les recommandations de l'IA et en seront responsables.
Les développeurs et les experts en optimisation doivent valider les techniques d'optimisation recommandées par l'IA et concevoir des requêtes SQL optimales, adaptées à la logique métier. Si l'IA peut automatiser l'optimisation SQL, elle ne peut pas déterminer automatiquement le partitionnement des données, la conception des index et les stratégies d'optimisation pour les environnements OLTP et OLAP. Même à l'ère de l'IA, les experts en optimisation doivent comprendre les modèles de données et concevoir des requêtes SQL optimales. Ils doivent maîtriser les principes de l'optimisation SQL et devenir des experts capables de collaborer avec les outils d'automatisation.
Structure et caractéristiques de ce livre
Ce livre aborde les concepts essentiels et les techniques pratiques d'optimisation des performances SQL basées sur Oracle 19c.
Lors de l'optimisation de nombreuses requêtes SQL, je constate que 80 % des dégradations de performances les plus courantes suivent un schéma bien précis.
Ce livre explique comment résoudre 80 % des problèmes de dégradation des performances les plus courants rencontrés en pratique, tout en présentant des techniques de réglage avancées.
● Principes de base de l'optimisation SQL
Architecture de base d'Oracle (Chapitre 1)
Principes et outils d'optimisation des performances SQL (Chapitres 2-3)
Comprendre comment le SQL est exécuté et les principales causes de dégradation des performances est la première étape de l'optimisation.
Ce chapitre aborde les principes de base de l'optimisation des performances SQL et couvre divers outils de réglage (DBMS_XPLAN_DISPLAY_CURSOR, SQL Monitoring Report, etc.) pour analyser les plans d'exécution et mesurer les performances.
● Stratégie d'optimisation de l'exécution SQL
INDEX (Chapitres 4-5)
REJOIGNEZ-NOUS (Chapitre 6)
Sous-requêtes et séparation du plan d'exécution (Chapitres 7 à 9)
L'un des facteurs les plus importants dans l'optimisation SQL est l'utilisation des index. Les performances peuvent varier considérablement selon la conception des index et l'optimisation des méthodes de jointure ; cet article présente des stratégies pour optimiser ces aspects.
Il fournit également des méthodes pour améliorer les performances SQL en détaillant les sous-requêtes, le fractionnement du plan d'exécution et les techniques d'optimisation du traitement de la pagination.
● Autres techniques d'optimisation SQL
Analyse du plan de réglage et d'exécution PGA (Chapitres 10-11)
Optimisation de l'accès aux données répétées (Chapitre 12)
Comprendre les autres outils de réglage et d'optimisation d'applications (chapitres 13-14)
Nous présentons des stratégies visant à réduire l'utilisation inutile de la mémoire lors de l'exécution de requêtes SQL et à minimiser les accès répétés aux mêmes données.
Nous abordons également les principes de base des optimiseurs et leur réglage d'application.
Optimisation et exemples pratiques dans des environnements de données à grande échelle
Optimisation des journaux de transactions et de restauration Oracle (Chapitre 15)
Principes de base du partitionnement et d'Exadata (Chapitres 16-17)
Analyse des performances et cas pratiques d'Oracle (chapitres 18-19)
Le partitionnement est essentiel dans les environnements de données volumineuses.
Et l'utilisation d'Exadata est en hausse dans les environnements de données à grande échelle.
À cet égard, nous avons abordé le partitionnement et l'exploitation d'Oracle Exadata.
Et les experts en optimisation SQL ne se contentent pas d'optimiser les requêtes SQL.
Lorsqu'un problème de performance survient dans une base de données, celle-ci est responsable de l'identification et de l'analyse de la cause de ce problème au sein de la base de données.
Par conséquent, nous avons également abordé la méthodologie de base de l'analyse des performances d'Oracle.
Enfin, nous avons structuré le cours pour vous aider à comprendre comment la théorie est appliquée dans le monde du travail réel grâce à des exemples concrets.
Devenir un guide et une boussole pour l'optimisation SQL
À l'ère de l'IA, l'optimisation SQL est assistée, mais le rôle des experts en optimisation restera nécessaire.
Oracle a également publié 23ai dans sa dernière version 23, mais l'essence du réglage reste inchangée.
J'espère que ce livre vous guidera efficacement dans l'optimisation des performances SQL. Commençons dès aujourd'hui votre parcours pour devenir un expert en réglage SQL.
SPÉCIFICATIONS DES PRODUITS
- Date d'émission : 15 juillet 2025
Nombre de pages, poids, dimensions : 872 pages | 1 724 g | 190 × 250 × 34 mm
- ISBN13 : 9788996384069
- ISBN10 : 8996384062
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne