2010-08-04 5 views
1

Je voudrais créer un programme qui génère du contenu à partir de très gros fichiers XML, d'une taille supérieure à 500 Mo. J'ai besoin d'obtenir des données à partir des fichiers à différents moments, mais l'utilisateur est prêt à attendre un peu, et tout cela est fait sur la machine locale.Analyse, traitement et utilisation de très gros fichiers XML

je womdering si quelqu'un avait des conseils concernant:

langues de mise en œuvre Que chemin x est suffisant pour effectuer des requêtes de lumière sur un (certes énorme) base de données Tout autre avis

Je probablement besoin d'utiliser moins de 1% des données, et je ne peux pas m'attendre à faire un traitement préalable pour préparer le fichier.

Des conseils?

En réponse au commentaire: Je pourrais casser le fichier, mais seulement en le lisant, et en l'écrivant à nouveau. Donc pas vraiment, essentiellement. Je n'utilise le fichier qu'une seule fois, pour générer ce 'contenu' en utilisant des entrées select (et non déterministes) dans le fichier xml donné. Ensuite, je n'ai plus jamais besoin de ce fichier.

+0

Avez-vous un contrôle sur le fichier XML? Pouvez-vous le décomposer en plus petits morceaux? À quelle fréquence traitez-vous le fichier? Traitez-vous le même fichier plus d'une fois? –

+0

avez-vous regardé vtd-xml? –

Répondre

1

J'ai vu ce link dans stackoverflow qui est un peu liée à cette

+0

Merci, j'ai vu ça aussi. Je ne voulais pas aller en Java, mais je pense que cela pourrait être la meilleure option. Je vais vérifier et rapporter! – mtrc

+0

D'accord, ça l'a fait - en quelque sorte. Je me suis contenté de Python et j'ai employé un analyseur syntaxique SAX. Je pense que je vais probablement construire une base de données temporaire à l'avenir, car plus je développe cette application, plus je me trouve à vouloir faire des recherches riches des données, mais pour l'instant - SAX est la voie à suivre! – mtrc

Questions connexes