01.25 大數據Spark初始化之SparkContext內部屬性

大數據Spark初始化之SparkContext內部屬性

1、creationSite

類型為CallStie, 其中保存著線程棧中最靠近棧頂的用戶定義的類及最靠近棧底的scala或者spark核心類信息,CallSite的shortForm 屬性保存著以上信息的簡短描述,CallSite 的longForm屬性則保存著以上信息的完整描述。

2、allowMultipleContexts

是否允許多個SparkContext實例。默認為false。可以通過屬性 spark.driver.allowMultipleContexts 來控制。

3、startTime

SparkContext 啟動的時間戳

4、stoped

標記SparkContext是否已經停止的狀態,採用原子類型的AtomicBoolean。

5、addedFiles

用於每個本地文件的URL 與添加此文件到addedFiles 時的時間戳之間的映射緩存。

6、addedJars

用於每個本地Jar文件的URL與添加此文件到addedJars 時的時間戳之間的映射緩存。

7、persistentRdds

用於對所有持久化的RDD保持跟蹤

8、executorEnvs

用於存儲環境變量。executorEnvs中環境變量都將傳遞給執行任務的Executor使用。

9、sparkUser

當前系統的登錄用戶,也可以通過系統環境變量SPARK_USER 進行設置。

10、checkpointDir

大數據Spark初始化之SparkContext內部屬性

RDD計算過程中保存檢查點時所需要的目錄。

11、localProperties

由 InheritableThreadLocal保護的線程本地變量,其中的屬性值可以沿著線程棧傳遞下去,供用戶使用。

12、_conf

SparkContext的配置,通過調用SparkConf的clone方法的克隆體。在SparkContext初始化的過程中,會對conf中的配置信息做校驗,例如,用戶必須給自己的應用程序設置 spark.master(採用的部署模式)和spark.app.name(用戶應用的名稱);用戶設置的spark.master屬性為yarn時,spark.submit.deployMode屬性必須為cluster,且必須設置 spark.yarn.app.id屬性。

13、_jars

用戶設置的Jar文件。當用戶選擇的部署模式是YARN時,_jars是由spark.jars屬性指定的Jar文件和spark.yarn.dist.jars屬性指定的Jar文件的並集。其他模式下只採用由spark.jars屬性指定的jar文件。

大數據Spark初始化之SparkContext內部屬性

14、_files

用戶設置的文件。可以使用spark.files屬性進行指定。

15、_eventLogDir

事件日誌的路徑。當spark.eventLog.enabled屬性為true時啟用。默認為/tmp/spark-events,也可以通過spark.eventLog.dir屬性指定。

16、_eventLogCodec

事件日誌的壓縮算法。當 spark.eventLog.enabled屬性與spark.eventLog.compress屬性皆為true時啟用。壓縮算法默認為lz4,也可以通過spark.io.compression.codec 屬性指定。spark 目前支持的壓縮算法包括 lzf,snappy和lz4 。

17、_hadoopConfiguration

Hadoop 的配置信息,如果系統屬性 SPARKYARNMODE 為true,或者環境變量 SPARKYARNMODE為true, 那麼將會是 YARN 的配置,否則為 Hadoop配置。

18、_executorMemory

Executor的內存大小。 默認值為 1024 MB。 可以通過設置環境變量(SPARK

MEN 或者 SPARKEXECUTORMEMORY)或者 spark.executor.memory 屬性指定。其中,saprk.executor.memory 的優先級最高,SPARKEXECUTORMEMORY 次之,SPARKMEM 是老版本Spark遺留下來的配置方式。

19、_applicationId

大數據Spark初始化之SparkContext內部屬性

當前應用的標識。 TaskScheduler啟動後會創建應用標識,SparkContext中的 _applicationId就是通過調用TaskScheduler 的 applicationId方法獲得的。

20、_applicationAttemptId

當前應用嘗試執行的標識。Spark Driver 在執行時會多次嘗試執行,每次嘗試都將生成一個標識來代表應用嘗試執行的身份。

21、_listenerBusStarted

LiveListenerBus 是否已經啟動的標識

22、nextShuffled

類型為 AtomicInteger,用於生成下一個Shuffle 的身份標識。

23、nextRddId

類型為 AtomicInteger,用於生成下一個RDD的身份標識。

大數據Spark初始化之SparkContext內部屬性


分享到:


相關文章: