OVH Cloud OVH Cloud

[WD9] Lenteur de HAjoute en masse

5 réponses
Avatar
patrice
Bonjour

Je suis en train d'insérer 1 gros million d'enregistrements dans un fichier
par une simple routine :

hlitRecherchePremier(FIC1,session,ma_session)
tantque htrouve(FIC1)
HRaz(FIC2)
FIC2. ... = FIC1. ....
HAjoute(FIC2)
HLitSuivant(FIC1)
fin

et je suis un peu étonné des temps d'exécution : plus d'une journée
(ce qui donne une moyenne "à la louche" de 10 enregistrements par secondes)
Et truc bizarre, le processeur n'est pas occupé à plus de 5%

Avez vous constaté le même phénomène ? des idées de pistes pour essayer de
speeder la cariole ?

5 réponses

Avatar
J-M des Grottes
patrice a écrit :
Bonjour

Je suis en train d'insérer 1 gros million d'enregistrements dans un fichier
par une simple routine :

hlitRecherchePremier(FIC1,session,ma_session)
tantque htrouve(FIC1)
HRaz(FIC2)
FIC2. ... = FIC1. ....
HAjoute(FIC2)
HLitSuivant(FIC1)
fin

et je suis un peu étonné des temps d'exécution : plus d'une journée
(ce qui donne une moyenne "à la louche" de 10 enregistrements par secondes)
Et truc bizarre, le processeur n'est pas occupé à plus de 5%

Avez vous constaté le même phénomène ? des idées de pistes pour essayer de
speeder la cariole ?


Sur quel type de BDD ? HF ? HF C/S ?
Le champs concerné est-il une clé ?
Les hlitrecherche peuvent être lents...

Une requête ne serait-elle pas plus rapide ?

A+

--
Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Avatar
patrice
"J-M des Grottes" <jmdg(à retirer)@easynet.be> a écrit dans le message de
news:
Sur quel type de BDD ? HF ? HF C/S ?
Le champs concerné est-il une clé ?
Les hlitrecherche peuvent être lents...

Une requête ne serait-elle pas plus rapide ?




La BDD est du HF
Il y a effectivement des clés dans le fichier destination (le fichier .FIC
fait environ 300Mo et le fichier NDX environ 700Mo)
Avatar
SG
as tu essayer de formater directement en sql et ensuite d'utiliser
hexecuterequetesql ?
moi je fais souvent comme ca mais ce sont de db MySql.

SG

"patrice" a écrit dans le message de news:
43157ed5$0$27045$
"J-M des Grottes" <jmdg(à retirer)@easynet.be> a écrit dans le message de
news:
Sur quel type de BDD ? HF ? HF C/S ?
Le champs concerné est-il une clé ?
Les hlitrecherche peuvent être lents...

Une requête ne serait-elle pas plus rapide ?




La BDD est du HF
Il y a effectivement des clés dans le fichier destination (le fichier .FIC
fait environ 300Mo et le fichier NDX environ 700Mo)






Avatar
François C
dans ce genre de cas tu peux essayer un Hecrit au lieu d'un Hajoute, puis tu
réindexes quand tout est inséré


"patrice" a écrit dans le message de
news:4315530a$0$13593$
Bonjour

Je suis en train d'insérer 1 gros million d'enregistrements dans un


fichier
par une simple routine :

hlitRecherchePremier(FIC1,session,ma_session)
tantque htrouve(FIC1)
HRaz(FIC2)
FIC2. ... = FIC1. ....
HAjoute(FIC2)
HLitSuivant(FIC1)
fin

et je suis un peu étonné des temps d'exécution : plus d'une journée
(ce qui donne une moyenne "à la louche" de 10 enregistrements par


secondes)
Et truc bizarre, le processeur n'est pas occupé à plus de 5%

Avez vous constaté le même phénomène ? des idées de pistes pour essayer de
speeder la cariole ?





Avatar
mat
François C wrote:
dans ce genre de cas tu peux essayer un Hecrit au lieu d'un Hajoute, puis tu
réindexes quand tout est inséré



seulement que dans ce cas il n'y a contrôle, ni de doublons, ni
d'intégrité ...