-1
我試圖使用緩存()來保存我的數據在內存中。 我設置了一些屬性來確保足夠的內存來保持rddA和rddB。 但不知何故rddA並不是當它應該作出,而myFunction工作兩次。火花緩存工作不正常
def myFunction = println(".") // to check when It works
var rddA = myFuntion().cache()
var rddB = rddA.map({ do somethings}).cache() // I though rddA made in cache here
rddB.map({ real work }) // printed "."
...
...
rddA.map({ other works}) // printed "." again why??
我建議你添加標籤spark來獲得更快的幫助 –
你的代碼甚至沒有編譯 - 看起來像你簡化它的例子...應該'myFuntion()。cache()'改爲'rdd .map(a => {myFunction(); a})。cache()'? –