-1
我有一個數據集是從卡桑德拉火花加載。加載這個數據集後,我將從cassandra中刪除一些項目,但我希望我的數據集作爲下一次計算的第一個數據集。我用persist(DISK_ONLY)
來解決它,但它似乎盡力而爲。 如何強制使用火花以避免重新計算?如何強制spark以避免數據集重新計算?
例如:
val dataset:Dataset[Int] = ??? // something from cassandra
dataset.persist(StorageLevel.DISK_ONLY) // it's best effort
dataset.count // = 2n
dataset.persist(_ % 2 == 0).remove // remove from cassandra
data.count // = n => I need orginal dataset here
@mrsrinivas火花緩存和持久性是最優化的方式。對他們沒有保證。 –
我同意,我從來沒有提到任何地方DAG將跳過執行階段。但是,如果rdd在任何階段持續**,每次調用RDD時都不會重新計算RDD。 – mrsrinivas