任何人都在意冒險猜測爲什麼在Hive和Spark的數據幀API中執行的查詢返回不同的結果(從Hive返回的答案是正確的)順便提一下
Hive : gb-slo-svb-0019:10000 > select count(*) from sseft.feat_promo_prod_store_period; INFO - > select count(*) from sseft.feat_promo_prod_store_period _c0 84071294
星火: sqlContext.sql('select count(*) from sseft.feat_promo_prod_store_period').show() +---+ |_c0| +---+ | 0| +---+
Hive查詢在通過spark執行時返回錯誤答案
有趣的是,如果我使用的火花,而不是蜂巢表我得到正確的答案指向底層的HDFS位置: sqlContext.read.parquet('/Lev4/sse/hive/sseft/feat_promo_prod_store_period').count() 84071294
該圖像描述了所有三個:
這似乎已經與元數據的問題,即關於表的火花緩存 - 這理論基於這樣一個事實,放棄表格並重新創建它解決了問題。不幸的是,如果我想出一個repro,我會嘗試記住回到這裏並報告它。 – jamiet