Canalblog
Suivre ce blog Administration + Créer mon blog
Publicité
Blog d'un DBA sur le SGBD Oracle et SQL
optimisation
24 mars 2020

Sélectivité d'un SELECT : quel indicateur pour estimer s'il est possible d'optimiser un ordre SQL? Selectivity of a SELECT?

Sélectivité d'un SELECT : quel indicateur pour estimer s'il est possible d'optimiser un ordre SQL? Selectivity of a SELECT?
Introduction Est-ce que un client vous a déjà demandé d'optimiser un SELECT sans être sur que ce soit possible? J'entends par là qu'une requête s'exécute en 60 secondes et on vous demande de voir s'il est possible de l'exécuter en seulement 10 secondes....
Publicité
Publicité
6 février 2020

Existe-t-il des vues détail pour chaque ordre SQL? - Are there detailed views for each SQL order?

Introduction Est-ce qu'il existe sous Oracle une ou des vues qui ont une ligne par exécution d'un SELECT? En clair a-t-on l'historique précis des exécutions des ordres SQL? A quoi cela sert-il? A voir les dégradations de temps de réponse sur une période...
31 janvier 2020

Toujours lire les data blocs depuis le disque dur sans vider le Buffer Cache - Always read data blocks from the hard drive

Introduction C'est article fait suite à "Comment vider des données en Shared Pool ?" : http://dbaoraclesql.canalblog.com/archives/2020/01/20/37957327.html sauf que cette fois on va s'intéresser au Database Buffer Cache. Parfois on veut que Oracle lise...
1 novembre 2019

Impossible de supprimer un hint avec DBMS_ADVANCED_REWRITE et DBMS_SQL_TRANSLATOR - Canno't delete a hint with PL/SQL packages

Introduction Les deux packages DBMS_ADVANCED_REWRITE et DBMS_SQL_TRANSLATOR sont fantastiques. Ils permettent de remplacer des ordres SQL par d'autres, soit dans le cadre d'une migration d'un SGBD vers un autre, soit pour rendre un ordre plus performant....
14 octobre 2019

Remplacer un ordre SQL par un autre avec DBMS_SQL_TRANSLATOR - Replace one SQL statement with another with DBMS_SQL_TRANSLATOR

Introduction J'avais rédigé il y a deux ans et demi un article sur le package DBMS_ADVANCED_REWRITE expliquant comment intercepter un ordre SQL et le remplacer par un autre : http://dbaoraclesql.canalblog.com/archives/2017/02/22/34968626.html . Aujourd'hui,...
Publicité
Publicité
3 février 2018

Plan d'exécution : utiliser une trace pour voir les sous-ordres SQL absents du plan - Use a trace to see the SQL sub-orders

Introduction Lorsqu'on doit optimiser une requête SQL, il arrive parfois qu'on ne comprenne absolument pas comment elle est exécutée par Oracle. Une requête qui devrait se dérouler en une seconde prend en réalité trente minutes sans que le plan d'exécution...
22 février 2017

DBMS_ADVANCED_REWRITE : intercepter et remplacer un ordre SQL - DBMS_ADVANCED_REWRITE: Intercepting and Replacing an SQL Order

Introduction Parfois un ordre SQL mal écrit est exécuté sur une base de données sans qu'il soit possible de modifier son texte. Les raisons peuvent être multiples : ordre SQL issu du logiciel d'un éditeur tiers disparu ordre SQL venant d'un programme...
16 février 2017

Statistiques sur les SELECT des colonnes : package DBMS_FGA - SELECT column statistics: DBMS_FGA package

Introduction Un client est venu me voir avec un problème sur une table comprenant 300 colonnes... Oui, 300! Son problème a été rapidement résolu, il ne portait pas sur ce nombre de colonnes MAIS je me suis posé la question : est-ce que toutes les colonnes...
Publicité
Publicité
Blog d'un DBA sur le SGBD Oracle et SQL
Publicité
Archives
Blog d'un DBA sur le SGBD Oracle et SQL
  • Blog d'un administrateur de bases de données Oracle sur le SGBD Oracle et sur les langages SQL et PL/SQL. Mon objectif est de vous faire découvrir des subtilités de ce logiciel, des astuces, voir même des surprises :-)
  • Accueil du blog
  • Créer un blog avec CanalBlog
Visiteurs
Depuis la création 340 848
Publicité