高级大数据研发工程师面试题总结

时间:2025-02-17 07:06:20

1、做过实时数仓吗,讲一下

2、提交到Yarn上的应用如Spark与Yarn的交互流程?

3、对于将来的职业规划?

4、说一下mapjoin与reducejoin

5、Spark处理数据流程、并行度决定机制

6、如何建设数仓,如何构建主题域

7、什么是维度建模,星型模型与雪花模型的区别

8、MapReduce原理,map数、reduce数决定机制

9、Spark中能够进行下推的算子和不能进行下推的算子有哪些?谓词下推?映射(project)下推?

10、HBase架构、rowkey和列族设计及注意事项?为什么使用LSM树(与传统的RDBMS如mysql的B+树对比)?

11、Kafka高可用、高性能的原理?使用过哪些版本的Kafka,有没有遇到一些bug,怎么导致的,如何解决?Kafka数据顺序性问题?

12、数仓建模方法,你公司用的是什么建模方法?为什么采用这种建模方法?

13、JVM结构、堆、垃圾回收算法、垃圾回收器

14、Java基本数据类型、引用类型、实现线程的方式?对于两个线程a和b,如何确保在线程a执行完毕后才能执行线程b?

15、你有什么想问我的吗?

16、cube、groupingsets、grouping__id

17、为什么离职?什么时间能入职?

18、你进行过hivesql到sparksql的任务迁移吗?有没有遇到语法/sql语句兼容性问题?

19、数仓建设以及分层的好处

20、HDFS写数据流程、fsimage作用、如何区分HDFS热数据和冷数据

21、Yarnclient和Yarncluster区别?

22、HBase适合读多写少还是写多读少的场景,为什么?HBase二级索引?HBase小文件过多的原因?

23、Scala中的隐式转换、object和class区别、Scala集合和Java如何互转?

24、SparkSQL解析SQL的详细流程、hash广播底层实现

25、parquet文件和orc文件区别

26、维度表和事实表?

27、谈谈你对数据仓库、数据中台、数据湖的理解?

28、Spark内存管理模型

29、缓慢变化维几种处理方式

30、Phoenix查询HBase数据把HBase搞崩的问题有没有遇到过?可能是哪些原因导致的?

31、Zookeeper作用,服务节点动态上下线和负载均衡怎么实现的?zookeeper选主和在其他集群(如HadoopHA)中是如何进行选主的?zookeeper分布式锁、监听(watcher)机制

32、窗口函数中几个rank函数的区别

33、红黑树和平衡二叉树区别

34、跨数据中心/机房数据迁移方案?

35、Java基本类型和封装类型区别,在JVM中的分布?

36、大数据集群运维事项(Hadoop集群节点、配置,HBase集群运维等)

37、mysql事务

38、groupByKey、reduceByKey、aggregateByKey、combineByKey区别

39、leetcode系列题,如股票买卖利润最大化问题?

40、hive内外表区别

41、hive执行的job数是怎么确定的

42、repartition和coalesce区别

43、Redis数据结构、分布式锁。数据发生更新、是先更新DB再更新redis缓存还是反过来,怎么处理以及为什么?

44、Kafka重分区问题,如何尽可能避免重分区问题?

45、SQL列转行、行转列、连续N天登录等?

46、数仓数据的存储格式(parquet+snappy),为什么使用parquet、parquet特性、底层结构?parquet事务?parquet进行字段的新增或删除,如何进行数据的历史数据中字段的新增或删除(非重跑数据)?

47、数据倾斜(Spark、Hive、HBase)

48、Sparkshuffle、shuffle文件

49、spark和hive的区别

50、hive文件存储格式,对比

51、用过哪些任务调度工具?了解azkaban、airflow吗?

52、如何数据治理?

53、Flinkwatermark

54、怎么做数据质量,怎么保证及时性和准确性

55、udf、udtf、udaf,集成的类、接口,怎么写