【发布时间】:2016-01-26 05:39:15
【问题描述】:
我们最近从 1.4.1 切换到 Spark 1.5.0,并注意到在持久化 DataFrame 中存在一些不一致的行为。
df1 = sqlContext.read.parquet("df1.parquet")
df1.count()
161,100,982
df2 = sqlContext.read.parquet("df2.parquet")
df2.count()
67,498,706
join_df = df1.join(df2, "id")
join_df.count()
160,608,147
join_df.write.parquet("join.parquet")
join_parquet = sqlContext.read.parquet("join.parquet")
join_parquet.count()
67,698,892
join_df.write.json("join.json")
join_json = sqlContext.read.parquet("join.json")
join_json.count()
67,695,663
第一个主要问题是join DataFrame的计数和持久化的join DataFrame之间存在数量级的差异。其次,将相同的 DataFrame 持久化为两种不同的格式会产生不同的结果。
有人知道这里会发生什么吗?
【问题讨论】:
-
我认为路径不匹配是错字?
-
你没有使用相同的路径
-
是的,路径不匹配是错别字
标签: apache-spark parquet