|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 73 ![]() |
Bonjour,
Je fais de la reprise de données (beaucoup de données). Pour cela, je fais un curseur qui sélectionne des données en base et fais des updates suivant des critères voulus. Le problème est que le traitement dure des heures. En effet, les updates sont faits un par un. Mon idée, peut être que vous avez une meilleure, est de faire des updates en parralèle. Le problème est que je ne sais pas comment faire. Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
PARALLEL ne servira a rien, la clé est de faire des updates de masse.
La sursimplification en condition1 condition2... ne permet pas de dire si une seule requête est envisageable. Si ça n'est pas le cas il faut faire du traitement en masse avec les collections (bulck collect / forall) |
|
|
10
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() ![]() Marius NituIngénieur développement logiciels Inscription : octobre 2007 Messages : 3 313 ![]() |
Laissez tranquille le parallélisme et commencez par faire un seule update au lieu d'un zillion des petits update.
Voir si merge pourrait être intéressant. Faite un seul commit en fin de l'update. |
|
|
10
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 73 ![]() |
Merci pour vos réponses.
Je regarde pour les collection. Pour le merge je n'ai pas bien compris! |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Consultant en Business Intelligence Inscription : avril 2005 Messages : 680 ![]() |
Merge est une opération qui fait des inserts lorsque la clé n'est pas présente, et des update si elle est présente. Une opération fort utile ma foi, et quelquefois plus performante que l'update s'il n'y a que des updates à faire.
__________________
Dogbert : Here's my final report on your company. I've concluded you're doomed. You waste too much money on consultants. Boss : You're a consultant. Dogbert : Ironic, isn't it ? ~~ La culture, c'est comme la confiture : quand on l'aime, on la partage. Amateur de photos et de groupes de rock qui gagnent à être connus ? Clique WWW ! |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Pacman PacmanBusiness analyst Inscription : juin 2004 Messages : 1 417 ![]() |
Salut,
Je dirais plutôt que MERGE à partir de 10g est toujours au moins aussi efficace que update. Il l'est plus lorsque ce sont les mêmes lignes qui valident le périmètre (c'est ta dire dans l'exemple présent, si les conditions du where font référence à des colonnes de la même ligne du curseur qui est référencée pour l'update) et définissent les valeurs de mise à jour, car le matching n'est fait qu'une seule fois pour les deux tâches.
__________________
(c'est ma photo) Paku, Paku ! Pour les jeunes incultes : non, je ne suis pas un pokémon... Le pacblog : http://pacmann.over-blog.com/ |
|
00
|
Copyright © 2000-2012 - www.developpez.com