spark複習筆記 6 RDD持久化

2022-08-01 03:12:10 字數 592 閱讀 3550

在spark中最重要的功能之一是跨操作在記憶體中持久化資料集。當你持久化乙個rdd的時候,每個節點都存放了乙個它在記憶體中計算的乙個分割槽,並在該資料集的其他操作中進行重用,持久化乙個rdd的時候,節點上的每個分割槽都會儲存到記憶體中,這使得將來的action更加的快。

快取技術是迭代演算法和互動式查詢的重要工具

可以使用persist()和cache()方法進行rdd的持久化,persist()是持久化到磁碟,而cache()是快取到記憶體

action第一次計算的時候才會發生persist()

spark的 cache是容錯的,如果rdd的任何乙個分割槽丟失了,都可以通過rdd最初的變化來找回

persist可以使用不同的儲存級別來進行持久化

memory_only    //只存放到記憶體

memory_and_disk  //存放到硬碟和記憶體

disk_only      //只存放到磁碟

memory_and_disk  //記憶體和磁碟

memory_only_ser  //記憶體儲存(可以序列化)

memory_only_2    //帶有副本

memory_and_disk_2  //快速容錯

spark筆記 RDD的持久化

rdd.cache rdd.persist storagelevel.memory only persist方式可選取以下不同方式持久化memory and disk 如果記憶體不夠再存磁碟 disk only memory only ser 存資料時候實現序列化 可節省記憶體,但是讀取時要反序列化...

Spark效能優化 RDD持久化

如果程式中,對某乙個rdd,基於它進行了多次transformation或者action操作。那麼就非常有必要對其進行持久化操作,以避免對乙個rdd反覆進行計算。此外,如果要保證在rdd的持久化資料可能丟失的情況下,還要保證高效能,那麼可以對rdd進行checkpoint操作。除了對多次使用的rdd...

6 RDD綜合練習 更豐富的操作

集合運算練習 內連線與外連線 join leftouterjoin rightouterjoin fullouterjoin 多個考勤檔案,簽到日期彙總,出勤次數統計 三 綜合練習 學生課程分數 總共有多少學生?map distinct count 開設了多少門課程?每個學生選修了多少門課?map ...