大数据开发面试之路

数据结构和算法篇

  1. list 反转,合并,两个list 是否相交。
  2. 排序。
  3. 二叉树,最近公共祖先。
  4. DFS
  5. BFS
  6. 动态规划。

编程语言篇–Java

  1. HashMap的实现,与ConcurrentHashMap区别。
  2. volatile 的作用,与synchronize 的异同。
  3. 了解的设计模式,单例模式的实现。

Hadoop篇

  1. MapReduce作业流程,其中有几次排序。
  2. Yarn任务调度过程,Yarn的调度方法。
  3. MR Shuffle 过程。

Hive

  1. row_number 与 rank 的区别。(窗口函数之排名函数)
  2. 行转列: lateral view explode 。列转行collect_set, collect_list, sort_array, concat / concat_ws() 。
  3. Hive窗口函数怎么设置窗口大小?
  4. order by,sort by,distribute by,cluster by 区别
  5. Map,Reduce 个数怎么设置?
  6. SQL数据倾斜有哪些原因?怎么优化 ()
  7. 使用的是什么数据压缩格式。(parquet 列储存,不需要支持事务,支持spark/impalga)
  8. HQL怎么转成MR任务的。(Hive 架构
  9. HQL 中UDF,UDAF,UDTF 是否了解,实现过UDF吗?(自定义UDF
  10. 怎么验证Hive SQL 的正确性?(将多个阶段拆开执行与整体执行比较结果。与其他渠道比较结果)
  11. join操作底层的MapReduce是怎么去执行的 ?(MR 的过程)

##SQL应用题:

  1. 一个login_in表,userid、login_time、ip,数据量很大,
    需求:
    • 一个人可能有多条登录数据,取出最近10个登录的用户。
    • 统计登录的总条数( PV )和登录的总人数 (UV)。
  2. 一个用户好友表 userid , follow_list (该用户的好友id数组)
    A [B, C, D]
    B [A, C]
    C [D]
    需求:
    • 统计这个表有多少对好友

Spark

  1. Spark任务执行过程。()
  2. Spark的内存管理模型。()
  3. 讲讲Spark shuffle 以及它与 MR shuffle 的异同。
  4. Spark Shuffle bypass模型。
  5. Spark cache,checkpoint,持久化。

Flink

  1. Flink 架构
  2. Flink 如何做到Exactly-once
  3. Flink state 有哪些,用过哪些。
  4. 如何做内存调优。
  5. 是否遇到过 OOM,怎么处理。
  6. Flink 的反压机制,与Spark Streaming 反压的区别。
  7. Flink 窗口函数,时间机制,checkpoint机制。
  8. Flink 双流join。
  9. Flink 维表关联有哪些方式,数据量大时怎么处理。

数仓

  1. 项目的数仓分层。
  2. 范式建模和维度建模的区别。
  3. 型模型和雪花模型的区别。
  4. 设计统计各渠道用户留存的模型。
  5. 缓慢变化维怎么处理。拉链表的插入与回滚。(dw.his 表和ods.info 表join加union后插入dw.his)
  6. 数据怎么同步到数仓的,怎么保证数据不丢失。
  7. 数据质量怎么控制。
  8. 数据规范怎么定义的。
  9. 如何进行元数据管理。

kafka

  1. Kafka 消费者怎么从Kafka取数据的 。
  2. Kafka生产消费怎么保证Exactly Once(producer端的幂等,ack机制。消费者端的异步commit等等)。
  3. Kafka怎么保证有序性的(参数:1.retries. 2. MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION=1)。
  4. Kafka Controller是做什么用的 (leader分区选举)。
  5. Kafka 多副本leader如何选举 (ISR 集合中选)。
  6. Kafka 消费者组重平衡流程是怎样的 (consumer总选一个来分配消息与消费者的对应关系,然后发给brokcer)。
  7. 如何查看消费者的消费进度。

Hbase

  1. rowkey 如何设计。()
  2. 热key 问题怎么解决。
  3. Hbase 的读写流程。
  4. 使用过程中做过哪些优化。二级索引。
  5. compact 机制及其作用。

Redis

  1. 哪些数据结构(string/list/set/zset/hash)。
  2. 各种数据结构底层实现方式()。
  3. 数据持久化及其优缺点(rdb: 二进制快照,性能高。aof: 性能高)。
  4. 一致性hash。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值