大資料常見面試題之spark core

2021-10-08 20:06:35 字數 2657 閱讀 4646

二.driver的功能

三.hadoop和spark都是平行計算,他們有什麼相同點和不同點

四.rdd

五.簡述寬依賴和窄依賴概念,groupbykey,reducebykey,map,filter,union都是什麼依賴?

六.spark如何防止記憶體溢位

七.stage task 和 job的區別和劃分方式

八.spark提交作業引數

九.reducebykey和groupbykey的區別

十.foreach和map的區別

十二.foreach和foreachpartition的區別

十三.sortbykey是全域性排序嗎?

十四.coalesce與repartition的區別

十五.spark血統-即rdd之間依賴關係

十六.spark rdd 的持久化

十七.spark提交任務流程

十八.spark join的優化

十九.spark 的shuffle方式

二十.廣播變數作用

廿一.資料傾斜解決方案

廿二.spark通訊機制

運算元的寬窄依賴

#如下是乙個提交任務的樣式:

spark-submit \

--master local[5] \

--driver-cores 2 \

--driver-memory 8g \

--executor-cores 4 \

--num-executors 10 \

--executor-memory 8g \

--class packagename.classname ***x.jar \

--name "spark job name" \

inputpath \

outputpath

相同點:foreach和foreachpartition都屬於行動運算元

區別:

sortbykey是全域性排序

例子詳解

場景:

使用:

checkpoint的優點:

checkpoint原理:

2)master接受請求後,隨機在集群中一台節點啟動driver程序

3)driver啟動後為當前的應用程式申請資源

4)driver端傳送task到worker節點上執行

5)worker將執**況和執行結果返回給driver端

3)rs收到請求,隨機選擇一台nm啟動am,這裡的nm相當於standalone中的worker節點

4)am啟動後,會向rs請求一批container資源,用於啟動executor

5)rs會找到一批nm返回給am,用於啟動executor

2)rs收到請求後隨機在一台nm上啟動am(相當於driver端)

3)am啟動,am傳送請求到rs,請求一批container用於啟動executor

4)rs返回一批nm節點給am

5)am連線到nm,傳送請求到nm啟動executor

6)executor反向註冊到am所在節點的driver.driver傳送task到executor

shuffle方式共分三種,分別是:hashshuffle,sortshuffle(預設),tungstenshuffle

在spark程式中設定方式:通過設定spark.shuffle.manager進行配置:

//  可設定為hash sort tungsten-sort

private val session: sparksession = sparksession.

builder()

.("***").

master

("local[*]").

config

("spark.shuffle.manager"

,"hash").

getorcreate

()

hashshufflemanager特點:

sortshufflemanager的特點:

方案一:聚合源資料

方案二:過濾導致傾斜的key

方案三:提高shuffle操作reduce並行度

方案四:利用雙重聚合

方案五:reduce join 轉換成 map join

方案六:sample抽樣分解聚合

方案七:使用隨機數和擴容進行join

spark訊息通訊主要分成三個部分:整體框架,啟動訊息通訊,執行時訊息通訊

1.概述

2.具體通訊流程

3.通訊框架

大資料常見面試題之kafka

四.kafka到sparkstreaming怎麼保證資料完整性,怎麼保證資料不重複消費?五.kafka的消費者高階和低階api區別 六.kafka怎麼保證資料消費一次且僅消費一次 七.kafka保證資料一致性和可靠性 八.spark實時作業宕掉,kafka指定的topic資料堆積怎麼辦 九.kafk...

大資料常見面試題之HBase

三.hbase的優化 四.hbase讀寫流程 五.rowkey如何設計避免熱點問題 六.hbase的最小儲存單位 七.hbase如何進行預分割槽以及作用 八.hbase中的hfile什麼時候需要合併成大檔案,什麼時候拆分成小檔案 九.為什麼hbase查詢比較快 1.表設計 2.寫表 3.讀表 hba...

大資料常見面試題整理

今年參加了校園秋招,主要針對招聘大資料研發相關崗位,最後也如願以償找到了大資料軟體開發的工作,在此期間整理了一下比較常見的相關面試題。1.mapreduce實際處理過程 input 2.列出yarn中的關鍵元件,並簡述各關鍵元件內部的互動原理。3.mapreduce的原理理解。4 reduce中的o...