Ich habe eine Datei, die XML-Elemente in jeder Zeile enthält, die in JSON konvertiert werden muss. Ich habe ein Python-Skript geschrieben, das die Konvertierung durchführt, aber im seriellen Modus läuft. Ich habe zwei Möglichkeiten, Hadoop oder GNU Parallel zu verwenden, ich habe Hadoop ausprobiert und möchte sehen, wie GNU helfen kann, wird sicher einfach sein.GNU Parallel zum Ausführen von Python-Skript auf große Datei
Mein Python-Code ist wie folgt:
import sys import json import xmltodict with open('/path/sample.xml') as fd: for line in fd: o=xmltodict.parse(line) t=json.dumps(o) with open('sample.json', 'a') as out: out.write(t+ "\n")
So kann ich GNU parallel verwenden, um direkt auf der riesigen Datei zu arbeiten, oder muss ich es teilen müssen?
Oder ist dies der richtige: cat sample.xml | parallel python xmltojson.py >sample.json
Dank
Bis 10k, Ole! –
Ole, dass die Zeit von 59 Minuten auf 15 Sekunden reduziert !! – user3646519