之前没接触过 spark,这就要用 pyspark 处理几百个 G 的 csv 文件。有几点疑惑吧
- 处理这种数据是否有优势。文件大小 500k-180m 左右,总量有 400GB 左右。
- csv 文件格式不一(比如有的 20 列,有的 30 列),带标题行,且为中文,直接在 pyspark 中通过 sqlContext.read.option("header","true").csv("xx")读取标题乱码。这种情况是否要提前先将文件处理好?
之前没接触过 spark,这就要用 pyspark 处理几百个 G 的 csv 文件。有几点疑惑吧
1
F281M6Dh8DXpD1g2 May 26, 2017 1.spark 会启动多个进程来并行的处理这些文件,资源够的话会比你用 python 单进程的处理快。
2.编码问题需要用 encoding 这个参数来指定正确的编码。列不同的问题 spark 会自动合并,不存在的记录会被赋予 null,应该不会有问题。不过不同的列数一般代表是不同的数据,处理之后放到一起似乎不是好的实践。 |