2010-04-23 8 views
0

Notre gouvernement a ouvert ses données d'horaires de transport. Les données sont au format standard TransXchange basé sur xml.Transformation d'un fichier XML volumineux pour l'insertion de SQL Server

Le problème est que les fichiers de données sont énormes. L'exemple de fichier de données est de 300 Mo. La bonne chose est que la plupart des données sont redondantes et je n'en ai pas besoin pour mon application. Je me demande quelles sont les options que j'ai d'insérer/transformer seulement les données dont j'ai besoin dans SQL Server?

Merci.

Répondre

2

Vous avez besoin d'un analyseur de flux XML (basé sur les événements) pour éviter de charger l'intégralité de l'arborescence en mémoire. La plupart des langages en ont plusieurs basés sur la norme SAX (Simple API for XML).

+0

Je vais utiliser C#, est-ce que cela a un support SAX? – mob1lejunkie

+0

mob1lejunkie: Vous n'avez pas mentionné C# dans votre question. Vous avez demandé "quelles options ai-je?". Qu'est-ce qui vous fait penser qu'une personne au hasard répondant à votre question utilise C#? J'utiliserais Perl (et un parser XML non-SAX mais en streaming) moi-même, mais ensuite, je suis partial. Et je connais Perl. – runrig

+1

J'ai demandé quelles options j'avais dans l'espoir d'obtenir une recommandation de produit qui fait déjà ce dont j'ai besoin plutôt que d'écrire du code pour le faire. – mob1lejunkie

Questions connexes