大數據面試整理

百度:

1、spark如何執行fullGC  

2、hive UDF有哪些類型 UDAF以及UDTF

3、spark on yarn的執行流程

4、spark的寬依賴和窄依賴

5、熟悉哪些大數據框架

6、介紹項目內容

7、1億個無序的數,如何做到全局有序

8、出題寫sql

9、遇到數據傾斜如何解決

快手:

1、hive有哪些文件存儲格式,有什麼區別,常用的有哪些?

2、UDAF和UDTF有什麼區別?

3、group by/cluster by/distribute by/sort by有啥區別?

4、hive如何解決數據傾斜,如何進行優化?

5、table表,字段user_id,login_time,求每一個user_id的第一次登陸時間以及最後一次登陸時間,求用戶的總數以及每一個用戶的登陸次數

6、寫二分查找

7、Arraylist<Interge> list,如何刪除值爲10的數

8、Arraylist<interge> list1如何轉換爲Arraylist<String> list2,使用stream流實現

9、星型模型和雪花模型的區別

10、介紹一下lateral view

抖音:

1、兩個矩陣相乘,設計用MR實現,矩陣A*矩陣B,數據存儲爲(A,i,j,value),從結果的(k,v)進行反推

2、設計一個流式處理框架,實現統計登陸用戶數量

3、[1,3,2,1] 逆序對:3,2;2,1;3,1 給定一個數組,統計逆序隊個數,實現nlogn複雜度

4、hadoop和spark的shuffle過程有啥區別

5、如何解決數據傾斜

6、介紹項目

7、讀取很多個小文件消耗的是什麼資源

8、實現join操作,MR如何設計

9、表A(order_id,order_name),表B(order_id,order_name),如何實現屬於表A不屬於表B的order_id

小米一面:

1、hashmap、hashtable、ConcurrentHashMap有什麼異同

2、手寫快排、算法複雜度、最壞情況

3、

4、把每科最高分前三名統計出來 --成績表Score(student_name,student_no,subject_no,score)
select student_name,student_no,subject_no,score
from
(select *,row_number() over(partition by subject_no order by score desc) rank
from Score)a
where rank<=3    
5、找出單科成績高於該科平均成績的同學名單
(無論該學生有多少科,只要有一科滿足即可) --成績表Score(student_name,student_no,subject_no,score)

select student_name
from Score a
left join
(select subject_no,avg(score)
from Score
group by subject_no) b
on a.subject_no=b.subject_no and a.score>b.score
6、一個表 test(name,price),構建一個新表,將name相同的,price所有價格合併到一個字段裏面

select name,collect_set(price) from test group by name;  collect_set,其與collect_list的區別就是會去重
7、如何將題6中price合併後的prices 字段再拆分爲多條記錄?

select name,price from test lateral view explode(split(prices,',')) as price;

8、hive使用過哪些功能

9、map、flatmap有什麼區別,flatmap爲空的情況

10、scala的柯里化,爲什麼要設計這個功能?

11、一個用戶訪問的網站的文件,包含用戶信息以及登陸時間,使用spark如何統計登錄網站的用戶個數以及每個用戶的登陸時間

12、spark的類如何實現序列化

13、dateFrame和dateset有什麼區別

小米二面:

1、map、flatmap有什麼區別?

2、python中import和import from有什麼區別

3、python使用過的包以及init函數有什麼作用

4、使用mapreduce設計實現兩表的join操作,以及mapsidejoin實現

5、有一張表包括用戶,用戶登陸時間,設計實現該用戶的次日留存、7日留存、15日留存、30日留存

6、python中使用if生成list

頭條:

1、介紹項目每一個項目問的都很詳細

2、詳細介紹數據庫建模

3、出題寫sql

4、介紹CAP原則,以及OLAP

5、spark的cache以及persist的區別

6、persist幾種存儲級別

7、一個鏈表,如何一次遍歷找出倒數第N個數據,使用兩個指針實現

猿輔導:

1、介紹項目以及數據倉庫內容

2、HDFS數據讀取流程

3、導致數據傾斜的情況以及解決方法

4、class、subject、student、score,每班每學科前三名學生ID

5、dt、channel、money,channel歷史累計收入超過20W的最早日期

select channel,min(dt)
(select a.channel,b.dt
 from 
 (select channel,sum(money) summney
from table_a
group by channel
having summoney>200000) a
left JOIN
(select * 
 from table_a) b
 on a.channel=b.channel) c
 group by channel

6、表A aid,bid;表B cid,did,eid;bid既不出現在did,也不出現在eid這一列的aid的明細

7、如何遍歷二叉樹,並求出所有路徑的最大值

8、大數A和大數B,只能用字符串表示,如何實現相加計算

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章