2014-09-28 115 views

回答

0

使用其中一个python xml模块来解析.xml文件。除非你拥有更多的27GB内存,否则你需要逐步完成这个工作,所以应该相应地限制你的选择。使用csv模块编写.csv文件。

你真正的问题是这样的。 Csv文件是字段行。它们代表一个矩形表格。通常,Xml文件可以表示更复杂的结构:分层数据库和/或多个表。因此,您真正的问题是要充分理解数据转储格式,以提取记录以写入.csv文件。

+0

请看看相关的问题以获得可能的帮助。 – 2014-09-28 21:23:44

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))