Spark理論學習

2021-10-09 19:30:57 字數 2134 閱讀 8078

彈性分布式資料集:

rdd是由多個partition組成

最小單位是partition:與讀取的block是一一對應的. 有多少個block就有多少個partion.

運算元就是函式:作用再rdd的partition上的.

對彈性的理解:某個rdd損壞了,可以進行恢復.他們直接有依賴關係

分割槽器是作用在kv格式rdd上很難理解

partition提供資料計算的最佳位置,利用資料處理的本地化

計算移動,資料不移動

1. 什麼是kv格式的rdd,

rdd中的資料是乙個個tuple2資料,那麼就是kv格式的資料

2.spark讀取hdfs資料的方法:textfile.底層是呼叫mr讀取hdfs的方法,首先會split,每個split對應乙個乙個block,每個split對應生產rdd的每個parttition.

3.**體現了rdd的彈性:容錯

rdd之間有依賴關係,

rdd的分割槽,parttiton可多可少

4,**體現了分布式:

rdd的partition分布在多個節點上

driver: 負責傳送任務和**任務,

worker:負責進行資料操作

多個rdd組成乙個有向無環圖

1. 懶執行運算元:

只有在遇到行動運算元的時候,才會觸發懶執行運算元

每個行動運算元,觸發乙個job

運算元:map

filter

flatmap

sample

reducebykey

groupbykey

union

join

規律總結:懶執行運算元,都是由rdd轉換為rdd

2.行動運算元

運算元:count

collect

reduce

--cache:預設將資料儲存在記憶體中,懶執行

--persist:可以手動指定持久化級別

-- cache和persist都是懶執行,最小的持久化單位是partition.

---cache和persist之後就可以直接賦值給乙個值,後面不可以緊跟行動運算元

窄依賴:一對一的依賴,稱為窄依賴 ,多對一

寬依賴:一對多:存在與多個節點的資料傳輸

spark用在迭代的場景,會很快,沒有用在迭代的場景,和,mapreduce沒什麼區別

spark處理資料的模式,pipiline管道處理模式,

乙個stage由多個並行的task

stage的並行度是誰決定的?

由stage中的finalpartition的個數決定的

管道中的資料何時可以落地?

shuffle write的時候落地,

對rdd進行持久化的時候,落地

如何提高stage的並行度

reducebykey

原始碼:

計算模式圖

資源排程圖和任務排程

優點:執行速度快

缺點:容易造成資源的浪費

細粒度資源shenq:mr

與粗粒度相反

1.mapartitionwithindex運算元

輸入乙個索引和迭代器,輸入乙個迭代器

2. repartiton:可以增多分割槽,也可以減少分割槽

是乙個寬依賴的運算元,會產生shuffer

PMI理論學習

pmi九大知識領域 整合管理 工作範圍管理 時間管理 費用管理 質量管理 人力資源管理 溝通管理 風險管理和採購管理 和五個專案管理過程 啟動 計畫 執行 控制 收尾 九大知識領域包括 1 專案範圍管理 是為了實現專案的目標,對專案的工作內容進行控制的管理過程。它包括範圍的界定,範圍的規劃,範圍的調...

LSTM理論學習

lstm最關鍵的就是實現cell state的傳輸,而gate的存在決定傳輸過程中,以前的cell state資訊多少需要拋棄,多少輸入資訊需要加入新的cell state,多少資訊需要輸出。所以有forget,input,output三個gate 忘記多少cell state forget gat...

AI理論學習

關於ai理論學習的筆記 淺顯地理解ai領域,輸入如感知推理,輸出如下棋寫詩,有為了更好通過圖靈測試的仿生,或則是減少人工介入的 智慧型 圖靈測試就是讓人分不清是人還是機器,涉及自然語言處理 表達 推理和學習,刻意避免了直接的物理互動,完全的圖靈測試還包括計算機視覺和機械人控制,用以增強感知和輸出。亞...