2
我有一個尺寸80'000的pairRDD
。只有1.5%的條目是唯一的。爲了篩選出複製的數據我稱之爲distinct
方法:Apache Spark RDD不同 - 奇怪的行爲
val newRDD = oldRDD.distinct
然而,這不僅能消除大部分的重複數據 - 它留下3-5之間重複每個唯一的入口!
我檢查了剩餘的條目與原始條目,它們完全一樣。
Sample of the original data:
(1,(0.0500937328554143, 0.9000767961093774))
(1,(0.0500937328554143, 0.9000767961093774))
(1,(0.0500937328554143, 0.9000767961093774))
Sample of the distinct data:
(1,(0.0500937328554143, 0.9000767961093774))
(1,(0.0500937328554143, 0.9000767961093774))
(1,(0.0500937328554143, 0.9000767961093774))
有什麼,我想知道如何distinct
工作?
至少這是我的猜測。如果他們確實比較相等,則必須有一個微妙的解釋。 –
謝謝你的回覆,丹尼爾。我想知道爲什麼會發生這種情況,爲什麼在135個參賽作品中,它決定了3個與其他作品不同,並且彼此之間(我對他們又做了「獨特」處理,而且都保留在RDD中)。這也很奇怪,因爲我把1個條目放入地圖中,然後複製它。然後我把它們拿出來,他們已經改變了。奇怪的行爲。 – monster
你發現了什麼?它們與'=='相等嗎?這確實是一個奇怪的行爲。即使通過所有的序列化和傳輸,我也不會期望相同的數字變得不相等。 –