RDD彈性分布式資料集特性總結

2022-06-20 02:33:11 字數 847 閱讀 2776

rdd彈性分布式資料集

集合分布式的

1、最重要的特性:分割槽

rdd究竟是如何分割槽?

從外部載入資料時,比如hdfs,分割槽數與hdfs的block數一致

從內部的單機list中載入資料為rdd,parallelize(numpartition)

從mysql等非內建支援的資料來源載入資料,分割槽就取決於自定義的partitioner

初創的rdd經過一系列的轉換操作,分割槽數通常不會變,除了shuffle操作

rdd.groupby(numpartition)

比如之前是8個分割槽,現在shuffle指定4個分割槽,最後得到的新rdd就是4個分割槽

手動repartition也會改變分割槽

rdd.repartition(8) //增加分割槽

rdd.coalesce(4) //減少分割槽

2、擁有乙個抽象函式compute-->operate --> iterate

在compute之上,提供了諸如map flatmap filter 等高階轉換api

我們就可以把邏輯寫成匿名函式傳入這些高階api(高階函式)

3、提供了乙個checkpoint的容錯機制

你可以在任何運算環節上,將該環節產生的rdd持久化到外部儲存中

如果後續過程出錯,則只要從這個checkpoint中接著計算即可

rdd.checkpoint()

rdd.ischeckpointed =》false

rdd.action()後才會真正持久化

4、依賴關係lineage血統

血統的作用:容錯

劃分dag stage的依據

sc.map.reduce....

大資料技術學習 彈性分布式資料集RDD

一 rdd定義 rdd resilient distributed dataset 叫做分布式資料集,是spark中基本的資料抽象,它代表乙個不可變 資料和元資料 可分割槽 裡面的元素可平行計算的集合。其特點在於自動容錯,位置感知性排程和可伸縮性。二 rdd的屬性 1 一組分片。即資料集的基本組成單...

Spark RDD 彈性分布式資料集

rdd是唯讀的 分割槽記錄的集合 乙個rdd的生成只有兩種途徑 rdd具有自動容錯 位置感知和可伸縮性特點 rdd只支援粗粒度轉換,即乙個操作會被應用在rdd的所有資料上 rdd包含 程式設計師還可以從兩個方面控制rdd,即持久化和分割槽。使用者可以請求將rdd快取,這樣執行時將已經計算好的rdd分...

Spark RDD 彈性分布式資料集

rdd是唯讀的 分割槽記錄的集合 乙個rdd的生成只有兩種途徑 rdd具有自動容錯 位置感知和可伸縮性特點 rdd只支援粗粒度轉換,即乙個操作會被應用在rdd的所有資料上 rdd包含 程式設計師還可以從兩個方面控制rdd,即持久化和分割槽。使用者可以請求將rdd快取,這樣執行時將已經計算好的rdd分...