Spark 外部變數和BroadCast變數的區別
spark裡面運算元裡面使用外部變數和BroadCast變數的區別:
1、如果在運算元裡面使用外部變數,spark會將外部變數複製多個副本,通過網路傳輸到每一個task裡面去(也就是說,此時的外部變數是task級別的)
2、BroadCast變數,使用spark的廣播功能進行廣播,廣播之後保障每個executor裡面只駐留一份變數,而同一個Executor中的task共享這一份變數(也即是說,BroadCast的變數是Executor級別的)
很顯然,第二種方式是更能節省網路資源和記憶體資源的。
相關文章
- Spark2 broadcast廣播變數SparkAST變數
- 成員變數和區域性變數的區別變數
- 成員變數、全域性變數、例項變數、類變數、靜態變數和區域性變數的區別變數
- 全域性變數和靜態變數的區別變數
- 靜態變數和例項變數區別?變數
- Java基礎-成員變數和區域性變數的區別Java變數
- volatile變數與普通變數的區別變數
- Python中類變數、成員變數、區域性變數的區別Python變數
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- 修改全域性變數時,可變型別和不可變型別的區別變數型別
- 成員變數和區域性變數變數
- 區域性變數和全域性變數變數
- java 全域性變數和區域性變數Java變數
- JavaScript —— 區域性變數和全域性變數JavaScript變數
- jmeter全域性變數和區域性變數JMeter變數
- 【Spark篇】---Spark中廣播變數和累加器Spark變數
- Javascript內建變數top和parent區別JavaScript變數
- Python中的全域性變數和區域性變數Python變數
- js-js的全域性變數和區域性變數JS變數
- OB有問必答 | 引數和變數的區別是什麼?變數
- 使用var和不使用var宣告變數的區別變數
- python全域性變數和區域性變數, globalPython變數
- javascript中的作用域(全域性變數和區域性變數)JavaScript變數
- Python的區域性變數和全域性變數使用解惑Python變數
- var與let宣告變數的區別變數
- C語言外部變數externC語言變數
- 變數的分類(臨時(本地)變數、環境變數、全域性變數和系統變數)變數
- C: (pointer) 陣列變數和指標的區別陣列變數指標
- C++教程-----C++變數型別和變數的定義C++變數型別
- iOS 靜變數static、全域性變數extern、區域性變數、例項變數iOS變數
- 淺談變數型別之外的變數命名變數型別
- 表變數和臨時表的差別 (以前把表變數叫成變數表了,哎。。。)變數
- js宣告變數帶var和不帶var的區別JS變數
- SHLVL 和 BASH_SUBSHELL 兩個變數的區別變數
- block 對外部引用變數的處理BloC變數
- 全域性變數與區域性變數變數
- Linux Shell Awk獲得外部變數(變數傳值)簡介Linux變數
- 類的靜態成員變數和普通成員變數該怎樣去區別定義變數