Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/10/2011, 14h23   #1
Nouveau Membre du Club
 
Inscription : juillet 2007
Messages : 87
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 87
Points : 29
Points : 29
Par défaut Création d'index sur base de prod

Bonjour,

Peut-on créer un index alors que les utilisateurs font des mises à jour sur la table cible ?

Je suppose que cela peut engendrer des ralentissements. Des locks aussi ?

Merci d'avance pour les réponses.
korian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2011, 15h39   #2
Nouveau Membre du Club
 
Inscription : juillet 2007
Messages : 87
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 87
Points : 29
Points : 29
Oui, on peut.

Pas de ralentissements. Pas de lock.
korian est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 21/10/2011, 16h53   #3
Membre expérimenté
 
Homme Mohamed Houri
Inscription : mars 2010
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme Mohamed Houri
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 286
Points : 563
Points : 563
Citation:
Envoyé par korian Voir le message
Oui, on peut.

Pas de ralentissements. Pas de lock.
A bon!!!

Lorsqu'on créé un index en ligne dans un environnement OTLP, oracle fait un "lock" sur la table au début de la création de l'index et un "lock" de la table à la fin de cette création afin de "merger'' les clés d'index créées entre temps.

Donc, si une transaction est active au moment de la création de l'index, la création de cet index va être bloquée jusqu'au moment où la transaction sur la table soit finie; puis c'est au tour de la création de l'index de faire un "lock" sur la table pour un petit moment avant de libérer ce "lock". Le même processus peut avoir lieu à la fin de la création de l'index lorsque celui-ci voudra finir son traitement par un dernier petit "lock" de la table.

Le problème est que, avant la release 11g, toute autre transaction qui arrive sur la table et qui trouve que la création de l'index est en train d'attendre la fin d'une autre transaction sur cette table (transaction commencée avant le début-ou la fin- de la création de l'index), va être bloquée jusqu'à ce que le processus de la création de l'index acquière son "lock" et le libère.

Ce problème a été néanmoins supprimé à partir de la release 11g.

Le "lock" au début et à la fin de la création de l'index subsiste toujours si évidemment une transaction sur la table est active à ces deux moments précis; par contre, d'autres transactions sur la table ne seront plus bloquées par le blocage de l'index lui même.
__________________
Bien Cordialement
www.hourim.wordpress.com
Mohamed.Houri est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h38.


 
 
 
 
Partenaires

Hébergement Web