天天看點

《深入了解Spark:核心思想與源碼分析》——3.5節Hadoop相關配置及Executor環境變量

本節書摘來自華章社群《深入了解spark:核心思想與源碼分析》一書中的第3章,第3.5節hadoop相關配置及executor環境變量,作者耿嘉安,更多章節内容可以通路雲栖社群“華章社群”公衆号檢視

3.5 hadoop相關配置及executor環境變量

3.5.1 hadoop相關配置資訊

預設情況下,spark使用hdfs作為分布式檔案系統,是以需要擷取hadoop相關配置資訊的代碼如下。

val hadoopconfiguration = sparkhadooputil.get.newconfiguration(conf)

擷取的配置資訊包括:

将amazon s3檔案系統的accesskeyid和secretaccesskey加載到hadoop的configuration;

将sparkconf中所有以spark.hadoop.開頭的屬性都複制到hadoop的configuration;

将sparkconf的屬性spark.buffer.size複制為hadoop的configuration的配置io.file.buffer.size。

如果指定了spark_yarn_mode屬性,則會使用yarnsparkhadooputil,否則預設為sparkhadooputil。

3.5.2 executor環境變量

對executor的環境變量的處理,參見代碼清單3-28。executorenvs 包含的環境變量将會在7.2.2節中介紹的注冊應用的過程中發送給master,master給worker發送排程後,worker最終使用executorenvs提供的資訊啟動executor。可以通過配置spark.executor.memory指定executor占用的記憶體大小,也可以配置系統變量spark_executor_memory或者spark_mem對其大小進行設定。

代碼清單3-28 executor環境變量的處理

繼續閱讀