【面試題】大數據開發崗位


某公司面試題:
1、闡述數據庫的三大范式?

2、Linux 自帶的常用命令舉例至少20個?

3、Spark 有哪些聚合類的算子,我們應該盡量避免什么類型的算子?

4、Hive 和 HBase 的區別?

5、你了解設計模式嗎?寫出你知道的設計模式。

6、常見的GC算法有哪些?

7、kafka 的數據存在內存還是磁盤?

8、什么是shuffle?寫出你知道的Spark Shuffle 相關參數配置。

9、有一個10G的文件要存入HDFS,描述一下存儲過程。HDFS默認塊大小128MB.

10、Kafka 選舉策略。

11、Hive 內部表和外部表的區別?應該如何選擇使用哪種表呢?

12、內存泄露和內存溢出有什么區別?

13、用Java代碼寫一個你所知道的排序算法。

14、寫出wordcount並排序,linux、java(非mr)、hive、spark、Flink,以以上五種語言中任選兩種進行書寫。

15、Flink 計算單位是什么?

16、Flink 窗口類型有哪些?你都用過哪些窗口?

17、假設現在有一張Hive 表,如下所示:
元數據格式為:
字段:

col1    string
col2    string

表中有兩個字段,字段類型都為String,現在需要將數據拆分專為多列。
數據格式如下:

col1 col2
a,b,c,d 2:00,3:00,4:00,5:00
f,b,c,d 1:10,2:20,3:30,4:40
col1 col2
a 2:00
b 3:00
c 4:00
d 5:00
  1. 假設現在有一張表,如下所示:
    按第一列分組,同組內按第二列排序,並根據第三行取同組前一行與當前一行的均值作為第四列。
    數據格式如下:
col 1 col2 col3
2014 A 3
2014 C 1
2014 B 2
2015 A 4
2015 C 3

=>

col1 col2 col3 col4
2014 A 3 3
2014 B 2 2.5
2014 C 1 1.5
2015 A 4 4
2015 C 3 3.5

19、假設現有一張Hive表,如下所示:
col1 是有序的,按照col2 分塊計數,每當col2發生變化,就重新開始計數,計數的結果當做col3返回。
數據格式如下:

col1 col2
2014 1
2015 1
2017 0
2018 0
2019 1
2020 1
2021 1
2022 0
2023 0
col1 col2 col3
2014 1 1
2015 1 2
2017 0 1
2018 0 2
2019 1 1
2020 1 2
2021 1 3
2022 0 1
2023 0 2

參考答案:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM