我有.xml格式的堆栈溢出数据转储文件,将近27GB,我想将它们转换为.csv文件。请有人告诉我,将xml转换为csv文件或python程序的工具如何将堆栈溢出转储的xml文件转换为csv文件
1
A
回答
0
使用其中一个python xml模块来解析.xml文件。除非你拥有更多的27GB内存,否则你需要逐步完成这个工作,所以应该相应地限制你的选择。使用csv模块编写.csv文件。
你真正的问题是这样的。 Csv文件是字段行。它们代表一个矩形表格。通常,Xml文件可以表示更复杂的结构:分层数据库和/或多个表。因此,您真正的问题是要充分理解数据转储格式,以提取记录以写入.csv文件。
0
我已经写了一个PySpark函数来解析.csv中的.xml。 XmltoCsv_StackExchange是github回购。用它在最少的2核和2 GB RAM Spark设置下,在2-3分钟内转换1 GB xml。它也可以转换27GB文件,只需在此行中将minPartition从4增加到128左右即可。
raw = (sc.textFile(fileName, 4))
请看看相关的问题以获得可能的帮助。 – 2014-09-28 21:23:44