【发布时间】:2018-06-01 19:12:00
【问题描述】:
我正在使用 PySpark 读取一个相对较大的 csv 文件(~10GB):
ddf = spark.read.csv('directory/my_file.csv')
所有列的数据类型为string
更改例如column_a 的数据类型后,我可以看到数据类型更改为integer。如果我将 ddf 写入 parquet 文件并读取 parquet 文件,我会注意到所有列的数据类型再次为 string。 问题:如何确保 parquet 文件包含正确的数据类型,这样我就不必再次更改数据类型(在读取 parquet 文件时)。
注意事项:
我把ddf写成parquet文件如下:
ddf.repartition(10).write.parquet('directory/my_parquet_file', mode='overwrite')
我用:
- PySpark 版本
2.0.0.2 - Python 3.x
【问题讨论】:
标签: python-3.x pyspark