Salut,
j'ai besoin de l'avis d'expert sur un truc:
J'explique j'ai sur un serveur ftp 40 fichier xml don je dois inscrire le contenus dans ma base sqlServer2005.
Ces fichier contiennent des produits et chaque produit contien un dossier chaque dossier contient des tarifs.
l'ordre de grandeur est le suivant:
les fichier font de 3 a 5 Mo.
chaque fichier contient plus que 200 produit, chaque produit possede un seul dossier et chaque dossier peut contenir jusqua 1600 tarifs.
</produit>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <produit id ="1"> <dossier> <tarif num="1" date="10/03/2007" ville="PAR" prix="123,45"/> <tarif num="2" date="10/04/2007" ville="LIL" prix="321,45"/> <tarif num="3" date="11/04/2007" ville="TUN " prix="354,45"/> <tarif num="4" date="12/04/2007" ville="MAR" prix="198,45"/> . . . . . . . . <tarif num="1000" date="10/05/2007" ville="CAS" prix="373,45"/> . . . . . . . . </dossier>
Le traitement que je dois faire est le suivant:
Pour chaque fichier xml
----pour chaque produit
---------pour chaque tarif
---------------tester si le tarif existe (un tarif a une (date, ville) unique)
--------------------si le tarif existe modifier le prix
--------------------sinon inscrire le tarif.
---------------fin
---------fin
----fin
fin
Le traitement est trés lent ya t'il quelqu'un qui pourrais me donner une piste pour augmenter la performance de mon code.
sachant que moi ce que je fait c'est
1-je deserialise le fichier xml dans un objet
2-pour tester l'existance du tarif :
pour chaque produit je charge tt les tarif du produit dans une Collection de tarif
pour chaque tarif venant du xml pour ce produit je teste son existance avec la methode Find de la collection.
Merci.
Partager