Parser un xml énorme
Résolu
sly-bzh
Messages postés
415
Date d'inscription
Statut
Membre
Dernière intervention
-
sly-bzh Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
sly-bzh Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous et toutes,
J'aurais aimé savoir s'il était possible d'avoir une astuce pour pouvoir parser un fichier xml de 2,7 Go ? (mais c'est énorme me direz vous et j'ai envie de répondre ...)
Avant de le parser il faudrait déja que je puisse l'ouvrir pour en voir sa structure et ce n'est possible, ni avec firefox, ni avec IE, ni avec notepad 2, ni avec notepad++. Donc si vous avez un petit logiciel qui puisse m'ouvrir ce P.... de fichier xml qui me fait planter mon Win depuis ce matin, je suis preneur (vous me direz, XP n'a pas besoin de ça pour planter mais bon on va éviter de glisser vers ce terrain là)
Donc voilà, merci d'avance de vos réponses
PS. Si vous voulez savoir ce qu'est un fichier xml de 2.7 Go, il s'agit de la base de données swissprot contenant l'ensemble des protéines connues à ce jour et tous les commentaires, annotations, etc qui vont avec... Accessible ici : https://www.uniprot.org/downloads
J'aurais aimé savoir s'il était possible d'avoir une astuce pour pouvoir parser un fichier xml de 2,7 Go ? (mais c'est énorme me direz vous et j'ai envie de répondre ...)
Avant de le parser il faudrait déja que je puisse l'ouvrir pour en voir sa structure et ce n'est possible, ni avec firefox, ni avec IE, ni avec notepad 2, ni avec notepad++. Donc si vous avez un petit logiciel qui puisse m'ouvrir ce P.... de fichier xml qui me fait planter mon Win depuis ce matin, je suis preneur (vous me direz, XP n'a pas besoin de ça pour planter mais bon on va éviter de glisser vers ce terrain là)
Donc voilà, merci d'avance de vos réponses
PS. Si vous voulez savoir ce qu'est un fichier xml de 2.7 Go, il s'agit de la base de données swissprot contenant l'ensemble des protéines connues à ce jour et tous les commentaires, annotations, etc qui vont avec... Accessible ici : https://www.uniprot.org/downloads
A voir également:
- Xml parser error
- Xml download - Télécharger - Édition & Programmation
- Office xml handler - Télécharger - Traitement de texte
- Driveimage xml - Télécharger - Sauvegarde
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
14 réponses
Bonjour,
En effet pour ouvrir le gros pépère... Au pire il faut le découper et le regarder par petits morceaux pour voir sa structure.
J'ai essayer d'ouvrir divers fichiers avec Textpad, un exe de 500 Mo en mode texte ça passe mais un iso de 2 Go il n'a pas voulu. Ca ne ferait pas encore trop de fichiers si tu le découpes juste en 10.
Pour ce qui est de le parser... Si c'est pour une opération one-shot ça va être douloureux mais bon... Il fera meilleur dans la pièce quand vous arriverez le matin. ^^ Si c'est pour l'interroger, soit tu as à disposition un pc avec 4 Go de ram ou plus, soit je le ré-injecterais dans une base de données locale. (Et éventuellement accessible à tout le monde via le réseau)
M.
En effet pour ouvrir le gros pépère... Au pire il faut le découper et le regarder par petits morceaux pour voir sa structure.
J'ai essayer d'ouvrir divers fichiers avec Textpad, un exe de 500 Mo en mode texte ça passe mais un iso de 2 Go il n'a pas voulu. Ca ne ferait pas encore trop de fichiers si tu le découpes juste en 10.
Pour ce qui est de le parser... Si c'est pour une opération one-shot ça va être douloureux mais bon... Il fera meilleur dans la pièce quand vous arriverez le matin. ^^ Si c'est pour l'interroger, soit tu as à disposition un pc avec 4 Go de ram ou plus, soit je le ré-injecterais dans une base de données locale. (Et éventuellement accessible à tout le monde via le réseau)
M.
Moi je veux bien le fragmenter en 10 "petits" fichiers différents pour le parser (oui c'est ensuite pour le parser mais avec la puissance matérielle que j'ai à ma disposition ce sera pas le problème) mais euh... Comment tu fais ?
Salut,
Si c'est pour l'interroger, soit tu as à disposition un pc avec 4 Go de ram ou plus
Je ne crois pas.
Sur mon debian avec 512 DDRAM je peut le parcourir ;-)
Ton fichier en effet fait 2.7 Go et il a 68201421 lignes
La question est : Que veux tu obtenir de ce fichier?
Si c'est pour l'interroger, soit tu as à disposition un pc avec 4 Go de ram ou plus
Je ne crois pas.
Sur mon debian avec 512 DDRAM je peut le parcourir ;-)
Ton fichier en effet fait 2.7 Go et il a 68201421 lignes
lami20j@debian:/mnt/hda5$ du -sh uniprot_sprot.xml 2,7G uniprot_sprot.xml lami20j@debian:/mnt/hda5$ cat uniprot_sprot.xml | wc -l 68201421 lami20j@debian:/mnt/hda5$
La question est : Que veux tu obtenir de ce fichier?
pour l'info voici le nombre de caractères du fichier
lami20j@debian:/mnt/hda5$ cat uniprot_sprot.xml | wc -c 2805234706 lami20j@debian:/mnt/hda5$
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Sniff, j'en ai plus que marre de mon XP qui avec 2 Go de ram peut pas l'ouvrir :(... C'est décidé dans la semaine qui vient je passe sous nunux !!!!
Put... 68 millions de lignes quand même... Heureusement que j'aurais le cluster sous la main :D
Sinon si tu pouvais juste, s'il te plait, me donner entre quelles balises (et l'arborescence bien évidemment) tu trouve un numéro d'accession de la forme XXXXX (en gros 5 caractères pouvant être des lettres en majuscules ou des chiffres)
Et la même chose pour les séquences protéiques (pouvant aller de quelques lettres en majuscules à plusieurs centaines de lettres, toujours en majuscule...)
Merci
Put... 68 millions de lignes quand même... Heureusement que j'aurais le cluster sous la main :D
Sinon si tu pouvais juste, s'il te plait, me donner entre quelles balises (et l'arborescence bien évidemment) tu trouve un numéro d'accession de la forme XXXXX (en gros 5 caractères pouvant être des lettres en majuscules ou des chiffres)
Et la même chose pour les séquences protéiques (pouvant aller de quelques lettres en majuscules à plusieurs centaines de lettres, toujours en majuscule...)
Merci
je pense que tu parles ça
et de ça
<dbReference type="Gene3D" key="21" id="G3DSA:1.20.190.20"> <property value="14-3-3" type="entry name"/> <property value="1" type="match status"/> </dbReference>
et de ça
<sequence version="2" modified="1996-02-01" mass="29636" length="261" checksum="DE7B707538BA1662">MASAELSREENVYMAKLAEQAERYEEMVEFMEKVAKTVDSEELTVEERNLLSVAYKNVIGARRASWRIISSIEQKEEGRGNEDRVTLIKDYRGKIE TELTKICDGILKLLESHLVPSSTAPESKVFYLKMKGDYYRYLAEFKTGAERKDAAENTMVAYKAAQDIALAELAPTHPIRLGLALNFSVFYYEILNSPDRACSLAKQAFDEAISELDTLSEESYKDSTLIMQLLHDNLTLWTSDISEDPAEEIREAPKHDLSEGQ</sequence>?
Oui tout a fait mais je te conseil d'abbord de mettre les spaghetti dans la casserole puis la mozzarella ...Quoi ? Pas le bon forum ? Oh...
Hé hé... ( bruit de pas précipités et claquement de porte )
Hé hé... ( bruit de pas précipités et claquement de porte )
Oui je parlais de ça, du moins pour la séquence.
Pour le numéro d'accession ça doit plus ressembler à quelque chose comme ça :
ou
Il me semble que A0A1F3 est le numéro d'accession de la toute première protéine mais je n'en suis pas sûr, désolé
Et merci de faire tout cela pour moi
PS. Excuse moi de ne pas t'avoir répondu hier soir mais impossible de se connecter de chez moi ("couleur entre le jaune et le rouge" Powa...)
Pour le numéro d'accession ça doit plus ressembler à quelque chose comme ça :
<primaryAcc> A0A1F3 </primaryAcc>
ou
<AccNumber type="primary"> A0A1F3
Il me semble que A0A1F3 est le numéro d'accession de la toute première protéine mais je n'en suis pas sûr, désolé
Et merci de faire tout cela pour moi
PS. Excuse moi de ne pas t'avoir répondu hier soir mais impossible de se connecter de chez moi ("couleur entre le jaune et le rouge" Powa...)
Salut,
ecoute, parser ton fichier n'est pas un problème pour moi (je parle au niveau de la taille ;-)
en revanche j'ai besoin que tu me dises ce que je dois extraire et ça sera fait ;-)
ecoute, parser ton fichier n'est pas un problème pour moi (je parle au niveau de la taille ;-)
en revanche j'ai besoin que tu me dises ce que je dois extraire et ça sera fait ;-)
En fait, le parsage n'est pas un problème pour moi non plus, étant donné que cet après midi j'aurais accès à un cluster sur puissant qui va me faire ça en moins de temps qu'il faut pour le dire, je voulais juste avoir la structure du xml pour préparer mon petit script et pas monopoliser l'engin trop longtemps pour faire un truc tout pourite
Donc si tu pouvais juste me donner l'arborescence qui amène à la balise séquence que tu as trouvée (<sequence version="2" modified="1996-02-01" mass="29636" length="261" checksum="DE7B707538BA1662">) et celle amenant à une balise contenant, par exemple, A0A1F3 qui est le numéro d'accession d'une protéine dont la séquence devrait être : MKFLVLLFNILCLFPILGADELVMSPIPTTDVQPKVTFDINSEVSSGPLYLNPVEMAGVKYLQLQRQPGVQVHKVVEGDIVIWENEEMPLYTCAIVTQNEVPYMAYVELLEDPDLIFFLKEGDQWAPIPEDQYLARLQQLRQQIHTESFFSLNLSFQHENYKYEMVSSFQHSIKMVVFTPKNGHICKMVYDKNIRIFKALYNEYVTSVIGFFRGLKLLLLNIFVIDDRGMIGNKYFQLLDDKYAPISVQGYVATIPKLKDFAEPYHPIILDISDIDYVNFYLGDATYHDPGFKIVPKTPQCITKVVDGNEVIYESSNPSVECVYKVTYYDKKNESMLRLDLNHSPPSYTSYYAKREGVWVTSTYIDLEEKIEELQDHRSTELDVMFMSDKDLNVVPLTNGNLEYFMVTPKPHRDIIIVFDGSEVLWYYEGLENHLVCTWIYVTEGAPRLVHLRVKDRIPQNTDIYMVKFGEYWVRISKTQYTQEIKKLIKKSKKKLPSIEEEDSDKHGGPPKGPEPPTGPGHSSSESKEHEDSKESKEPKEHGSPKETKEGEVTKKPGPAKEHKPSKIPVYTKRPEFPKKSKSPKRPESPKSPKRPVSPQRPVSPKSPKRPESLDIPKSPKRPESPKSPKRPVSPQRPVSPRRPESPKSPKSPKSPKSPKVPFDPKFKEKLYDSYLDKAAKTKETVTLPPVLPTDESFTHTPIGEPTAEQPDDIEPIEESVFIKETGILTEEVKTEDIHSETGEPEEPKRPDSPTKHSPKPTGTHPSMPKKRRRSDGLALSTTDLESEAGRILRDPTGKIVTMKRSKSFDDLTTVREKEHMGAEIRKIVVDDDGTEADDEDTHPSKEKHLSTVRRRRPRPKKSSKSSKPRKPDSAFVPSIIFIFLVSLIVGIL
Voilà mais merci quand même de t'être occupé de mon cas
Donc si tu pouvais juste me donner l'arborescence qui amène à la balise séquence que tu as trouvée (<sequence version="2" modified="1996-02-01" mass="29636" length="261" checksum="DE7B707538BA1662">) et celle amenant à une balise contenant, par exemple, A0A1F3 qui est le numéro d'accession d'une protéine dont la séquence devrait être : MKFLVLLFNILCLFPILGADELVMSPIPTTDVQPKVTFDINSEVSSGPLYLNPVEMAGVKYLQLQRQPGVQVHKVVEGDIVIWENEEMPLYTCAIVTQNEVPYMAYVELLEDPDLIFFLKEGDQWAPIPEDQYLARLQQLRQQIHTESFFSLNLSFQHENYKYEMVSSFQHSIKMVVFTPKNGHICKMVYDKNIRIFKALYNEYVTSVIGFFRGLKLLLLNIFVIDDRGMIGNKYFQLLDDKYAPISVQGYVATIPKLKDFAEPYHPIILDISDIDYVNFYLGDATYHDPGFKIVPKTPQCITKVVDGNEVIYESSNPSVECVYKVTYYDKKNESMLRLDLNHSPPSYTSYYAKREGVWVTSTYIDLEEKIEELQDHRSTELDVMFMSDKDLNVVPLTNGNLEYFMVTPKPHRDIIIVFDGSEVLWYYEGLENHLVCTWIYVTEGAPRLVHLRVKDRIPQNTDIYMVKFGEYWVRISKTQYTQEIKKLIKKSKKKLPSIEEEDSDKHGGPPKGPEPPTGPGHSSSESKEHEDSKESKEPKEHGSPKETKEGEVTKKPGPAKEHKPSKIPVYTKRPEFPKKSKSPKRPESPKSPKRPVSPQRPVSPKSPKRPESLDIPKSPKRPESPKSPKRPVSPQRPVSPRRPESPKSPKSPKSPKSPKVPFDPKFKEKLYDSYLDKAAKTKETVTLPPVLPTDESFTHTPIGEPTAEQPDDIEPIEESVFIKETGILTEEVKTEDIHSETGEPEEPKRPDSPTKHSPKPTGTHPSMPKKRRRSDGLALSTTDLESEAGRILRDPTGKIVTMKRSKSFDDLTTVREKEHMGAEIRKIVVDDDGTEADDEDTHPSKEKHLSTVRRRRPRPKKSSKSSKPRKPDSAFVPSIIFIFLVSLIVGIL
Voilà mais merci quand même de t'être occupé de mon cas
Pas grave, je me suis démerdé tout seul, à partir du moment où j'ai pu l'ouvrir j'ai créé un petit script en 30 secondes, et apparemment ça a marché.
Merci beaucoup de m'avoir aidé quand même :D
Merci beaucoup de m'avoir aidé quand même :D