有關Spark計算不一致的問題。這是否存在?例如,我運行完全一樣的命令兩次,例如:運行計數命令時出現點火不一致
imp_sample.where(col("location").isNotNull()).count()
而且每次運行它的時候我收到稍有不同的結果(141830,然後142314)! 或者這樣:
imp_sample.where(col("location").isNull()).count()
並獲得2587013,然後2586943。這怎麼可能? 謝謝!
這不應該發生,你如何填充'imp_sample'? – Jaco
@Jaco - 如何填充它很重要?我的意思是 - 爲什麼它很重要?我有一個很長的代碼,一次又一次地修改它。但一旦它被填充,相同的命令會產生不同的結果。同樣,當我做最後的imp_sample計數時,將該文件作爲parquet文件寫出,然後讀入 - 我也得到稍微不同的行數! – user3245256
@Jaco我一直在想你的問題,並想感謝你。也許你可以提供它作爲答案,以便我可以upvote它?在我進行計數之前,我會進行採樣:sampled_impressions = impressions3.sampleBy(「click_status」,fractions = {0:0.037,1:1},seed = 0) - 由於四捨五入,我認爲有一些誤差7000萬行。所以,每次我在這條線後執行計數,結果都會有所不同。正確? – user3245256