變數作用域問題

2021-10-08 13:43:57 字數 717 閱讀 6128

2018/04/09

首先一定要明白乙個問題,那就是你py程式裡面的變數作用域問題。

因為你程式是工作在乙個分布式機器上的,那麼這些個資料就會分布在不同的機器上,或者說container上。

要明確spark的工作架構,各個不同的工作身份。那麼乙個變數他是不是在不同的機器執行,他是不是最後會彙總到我們的地方。

這就是問題。

總體上意思就是說,變數是不是在不同的工作身份上他做的這個操作會怎麼樣影響這個東西。

。。。

說的不明白,整體意思就是,他是分布式的,資料也是分散在不同的機器上的,他的所有的操作也是都工作於不同的機器上的。

那麼我設定的乙個操作,可能不是他spark內建的操作,那麼就可能說,這個操作就在那台機器上進行了操作,但是沒有辦法返回懂到我的驅動(driver)的地方。

他舉得這個print的例子就比較好理解。

更具體的,就得好好明白明白這個spark的具體工作流程了。

2018/04/13

rdd不同的分割槽,在集群上不同的節點工作。

each rdd is split into multiple partitions, which may be computed on different nodes of the cluster, on different stages.
這句話,就比較簡單的回答了上面的一些問題。

變數的作用域問題

變數的作用域和列表 全域性 在函式外部定義,在整個全域性範圍有效 區域性 在函式內部定義,區域性範圍使用 a1 100 def func print a1 print this is func a2 99 print a2 print a1 func print a2 不能訪問區域性變數 100 1...

作用域,變數作用域,作用域鏈知識

第2章 變數作用域 第3章 作用域鏈 預覽 1.全域性作用域 整個script標籤下 或者是單獨的js檔案 外部js 2.區域性作用域也叫 函式作用域 在函式內部就是區域性作用域 這個 的名字 變數 只在函式內部起作用和效果 3.不同作用域下,定義相同變數名是不衝突的。如果是在同一作用域宣告2個相同...

變數作用域

python任何變數都有其特定的作用域 在函式內部的變數一般只能在函式內部使用,這些只能在程式特定的區域使用的變數稱為區域性變數.在乙個檔案頂部,在函式的外部定義的變數,可以供該檔案的任何函式呼叫,這樣的變數稱為全域性變數 區域性變數和全域性變數的關係 區域性變數可以通過global關鍵字強制宣告為...