【发布时间】:2020-10-26 22:37:37
【问题描述】:
我一直在尝试从 sql server 获取数据、加载到数据框并写入 parquet(后来我将其加载到 BigQuery 或其他来源)。 我对money数据类型有一些问题,例如当sql server中的数据时:
100,000
但在写入 parquet 后,它会转换为:
100
(由于数据量大,无法下载到本地确认,不过可能write.parquet换钱为int,请指正)。
这是我的脚本的一部分:
df = spark.read.format("jdbc") \
.option("url", "jdbc:sqlserver://{myIP}:1433;instanceName={myInstance};database={myDB};") \
.option("dbtable", table_source) \
.option("user", user_source) \
.option("password", password_source) \
.option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver") \
.load()
df.write.parquet("gs://output/sample.parquet")
我应该为每列指定一个方案吗?还是有更好的方法?
【问题讨论】:
标签: apache-spark pyspark parquet