国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

鎖屏面試題百日百刷-Spark篇(十三)

2023-03-24 22:18 作者:zjlala96  | 我要投稿

鎖屏面試題百日百刷,每個(gè)工作日?qǐng)?jiān)持更新面試題。鎖屏面試題app、小程序現(xiàn)已上線,官網(wǎng)地址:https://www.demosoftware.cn。已收錄了每日更新的面試題的所有內(nèi)容,還包含特色的解鎖屏幕復(fù)習(xí)面試題、每日編程題目郵件推送等功能。讓你在面試中先人一步!接下來的是今日的面試題:


1.Spark中Executor啟動(dòng)時(shí),資源通過哪幾個(gè)參數(shù)指定?

1)num-executors是executor的數(shù)量

2)executor-memory 是每個(gè)executor使用的內(nèi)存

3)executor-cores 是每個(gè)executor分配的CPU

2.Spark中列出你所知道的調(diào)度器,說明其工作原理

1)Fifo schedular 默認(rèn)的調(diào)度器 先進(jìn)先出

2)Capacity schedular 計(jì)算能力調(diào)度器 選擇占用內(nèi)存小 優(yōu)先級(jí)高的

3)Fair schedular 調(diào)肚臍 公平調(diào)度器 所有job 占用相同資源

3.YarnClient模式下,執(zhí)行Spark SQL報(bào)這個(gè)錯(cuò),Exception in thread "Thread-2" java.lang.OutOfMemoryError: PermGen space,但是在Yarn Cluster模式下正常運(yùn)行,可能是什么原因?

1)原因查詢過程中調(diào)用的是Hive的獲取元數(shù)據(jù)信息、SQL解析,并且使用Cglib等進(jìn)行序列化反序列化,中間可能產(chǎn)生較多的class文件,導(dǎo)致JVM中的持久代使用較多Cluster模式的持久代默認(rèn)大小是64M,Client模式的持久代默認(rèn)大小是32M,而Driver端進(jìn)行SQL處理時(shí),其持久代的使用可能會(huì)達(dá)到90M,導(dǎo)致OOM溢出,任務(wù)失敗。

yarn-cluster模式下出現(xiàn),yarn-client模式運(yùn)行時(shí)倒是正常的,原來在$SPARK_HOME/bin/spark-class文件中已經(jīng)設(shè)置了持久代大?。?/p>

JAVA_OPTS="-XX:MaxPermSize=256m $OUR_JAVA_OPTS" 2)解決方法:在Spark的conf目錄中的spark-defaults.conf里,增加對(duì)Driver的JVM配置,因?yàn)镈river才負(fù)責(zé)SQL的解

析和元數(shù)據(jù)獲取。配置如下:

spark.driver.extraJavaOptions -XX:PermSize=128M -XX:MaxPermSize=256M

4.spark.driver.extraJavaOptions這個(gè)參數(shù)是什么意思,你們生產(chǎn)環(huán)境配了多少?

傳遞給executors的JVM選項(xiàng)字符串。例如GC設(shè)置或者其它日志設(shè)置。注意,在這個(gè)選項(xiàng)中設(shè)置Spark屬性或者堆大小是不合法的。Spark屬性需要用SparkConf對(duì)象或者spark-submit腳本用到的spark-defaults.conf文件設(shè)置。堆內(nèi)存可以通過spark.executor.memory設(shè)置。

5.導(dǎo)致Executor產(chǎn)生FULL gc 的原因,可能導(dǎo)致什么問題?

答:可能導(dǎo)致Executor僵死問題,海量數(shù)據(jù)的shuffle和數(shù)據(jù)傾斜等都可能導(dǎo)致full gc。以shuffle為例,伴隨著大量的Shuffle寫操作,JVM的新生代不斷GC,Eden Space寫滿了就往Survivor Space寫,同時(shí)超過一定大小的數(shù)據(jù)會(huì)直接寫到老生代,當(dāng)新生代寫滿了之后,也會(huì)把老的數(shù)據(jù)搞到老生代,如果老生代空間不足了,就觸發(fā)FULL GC,還是空間不夠,那就OOM錯(cuò)誤了,此時(shí)線程被Blocked,導(dǎo)致整個(gè)Executor處理數(shù)據(jù)的進(jìn)程被卡住。

6.Spark執(zhí)行任務(wù)時(shí)出現(xiàn)java.lang.OutOfMemoryError: GC overhead limit exceeded和java.lang.OutOfMemoryError: java heap space原因和解決方法?

答:原因:加載了太多資源到內(nèi)存,本地的性能也不好,gc時(shí)間消耗的較多

解決方法:

1)增加參數(shù),-XX:-UseGCOverheadLimit,關(guān)閉這個(gè)特性,同時(shí)增加heap大小,-Xmx1024m

2)下面這個(gè)兩個(gè)參數(shù)調(diào)大點(diǎn)

export SPARK_EXECUTOR_MEMORY=6000M

export SPARK_DRIVER_MEMORY=7000M

鎖屏面試題百日百刷-Spark篇(十三)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
黄梅县| 临高县| 保亭| 靖安县| 许昌市| 嘉荫县| 仙居县| 鸡东县| 镇沅| 万宁市| 故城县| 河北省| 青龙| 海南省| 上高县| 松潘县| 梅州市| 乌拉特前旗| 建水县| 仙游县| 阿瓦提县| 公安县| 游戏| 宜都市| 阿合奇县| 衡山县| 长海县| 台湾省| 梁山县| 股票| 永兴县| 新竹市| 阜新| 四平市| 阳新县| 延川县| 涞水县| 靖安县| 鸡西市| 喀喇| 永宁县|