Bonjour,

Je suis acctuellement entrain de manipuler un table de plus de 8Millions d'entrées.
L'une des colonne de cette table contient le code pays relatif a l'entrée.

Une de mes taches consiste a mettre a jour une autre colonne avec la population du pays relatif a l'entére.

J'ai une table de correspondance entre le code pays et la population qui est chargée en mémoire.

J'ai testé 2 stratégies :

1ere strategie: pour chaque code pays
"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
UPDATE maTable SET population = "+variablepop+" WHERE country = "+variablepays+
" ; "

2e strategie : "
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT id, country FROM matable;
"

puis iteration sur les resultats suivi de

"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
UPDATE maTable SET population = "+variablepop+" WHERE id = "+variableId+
" ; "


Dans les deux cas le job prend pratiquement une journée (24 heures) pour être completè.

Lors de mes tests le premier cas a meme mis plus longtemps que le 2e ...


Est-ce que ces temps d'exécution sont des temps normaux ?
Ou est-ce que ca devrait aller bcp plus vite ?

Je travaille avec un pentium dualcore 2.6GO et 4G de ram + un disque 7200 tours minutes;

Le SGBD est PostgreSQL.
Le language est JAVA avec du bon vieux JDBC.


Merci pour vos réponses.

Alex