GithubHelp home page GithubHelp logo

kongdz / bigdata-interview Goto Github PK

View Code? Open in Web Editor NEW

This project forked from water8394/bigdata-interview

1.0 1.0 0.0 6.73 MB

:dart: :star2:[大数据面试题]分享自己在网络上收集的大数据相关的面试题以及自己的答案总结.目前包含Hadoop/Hive/Spark/Flink/Hbase/Kafka/Zookeeper框架的面试题知识总结

bigdata-interview's Introduction


经典题合集

这些题目是一个知识星球的球友发给我的,其中有几个题帮着解答了一下。对部分题目也做了一点修正,希望对大家有帮助。 

如果你不知道如何准备面试,那么看看这个《剑谱总纲 | 大数据方向学习面试知识图谱》。

年假马上来临,我相信有不少读者都在准备或者考虑面试,无论如何不妨收藏一下。

如果你某个题目不知道答案,那么就去搜一下,如果搜不到,在公众号回复【加群】,可以加到群里寻求小伙伴们的求助。或者扫最下面的二维码加小助手好友并留言,有时间后会回复你。

顺便多提一句,【计算机基础和语言基础】请大家务必重视,如果你不是计算机专业,那么这些东西都要平时多看看。

这130个题暂时没有答案,很多题目《大数据技术与架构》都发过文章讲解过,有些也很简单,需要你自己去准备,去看,去思考,真正理解。不要老妄想别人喂,毕竟我们是人不是鸭子。
1、HashMap 和 Hashtable 区别 
2、Java 垃圾回收机制和生命周期 
3、怎么解决 Kafka 数据丢失的问题 
4、zookeeper 是如何保证数据一致性的 
5、hadoop 和 spark 在处理数据时,处理出现内存溢出的方法有哪些?
6、java 实现快速排序 
7、设计微信群发红包数据库表结构(包含表名称、字段名称、类型) 
8、如何选型:业务场景、性能要求、维护和扩展性、成本、开源活跃度 
9、Spark如何调优 
10、Flink和spark的通信框架有什么异同 
11、Java的代理 
12、Java的内存溢出和内存泄漏 
13、hadoop 的组件有哪些?Yarn的调度器有哪些?
14、hadoop 的 shuffle 过程 
15、简述Spark集群运行的几种模式 
16、RDD 中的 reducebyKey 与 groupByKey 哪个性能高?
17、简述 HBase 的读写过程 
18、在 2.5亿个整数中,找出不重复的整数,注意:内存不足以容纳 2.5亿个整数。
19、CDH 和 HDP 的区别 
20、Java原子操作 
21、Java封装、继承和多态 
22、JVM 模型 
23、Flume taildirSorce 重复读取数据解决方法 
24、Flume 如何保证数据不丢 
25、Java 类加载过程 
26、Spark Task 运行原理 
27、手写一个线程安全的单例 
28、设计模式 
29、impala 和 kudu 的适用场景,读写性能如何 
30、Kafka ack原理 
31、phoenix 创建索引的方式及区别 
32、Flink TaskManager 和 Job Manager 通信 
33、Flink 双流 join方式 
34、Flink state 管理和 checkpoint 的流程 
35、Flink 分层架构 
36、Flink 窗口 
37、Flink watermark 如何处理乱序数据 
38、Flink time 
39、Flink支持exactly-once 的 sink 和 source 
40、Flink 提交作业的流程 
41、Flink connect 和 join 区别 
42、重启 task 的策略 
43、hive 的锁 
44、hive sql 优化方式 
45、hadoop shuffle 过程和架构 
46、如何优化 shuffle过程 
47、冒泡排序和快速排序 
48、讲讲Spark的stage 
49、spark mkrdd和Parrallilaze函数区别 
50、Spark checkpoint 过程 
51、二次排序 
52、如何注册 hive udf 
53、SQL去重方法 
54、Hive分析和窗口函数 
55、Hadoop 容错,一个节点挂掉然后又上线 
56、掌握 JVM 原理 
57、Java 并发原理 
58、多线程的实现方法 
59、RocksDBStatebackend实现(源码级别) 
60、HashMap、ConcurrentMap和 Hashtable 区别 
61、Flink Checkpoint 是怎么做的,作用到算子还是chain 
62、Checkpoint失败了的监控 
63、String、StringBuffer和 StringBuilder的区别 
64、Kafka存储流程,为什么高吞吐?
65、Spark优化方法举例 
66、keyby的最大并行度 
67、Flink 优化方法 
68、Kafka ISR 机制 
69、Kafka partition的4个状态 
70、Kafka 副本的7个状态 
71、Flink taskmanager的数量 
72、if 和 switch 的性能及 switch 支持的参数 
73、kafka 零拷贝 
74、hadoop 节点容错机制 
75、HDFS 的副本分布策略 
76、Hadoop面试题汇总,大概都在这里(https://www.cnblogs.com/gala1021/p/8552850.html) 
77、Kudu 和Impala 权限控制 
78、Time_wait状态?当server处理完client的请求后立刻closesocket此时会出现time_wait状态
79、三次握手交换了什么?(SYN,ACK,SEQ,窗口大小) 3次握手建立链接,4次握手断开链接。
80、hashmap 1.7和1.8 的区别 
81、concurrenthashmap 1.7和1.8?
82、Kafka 的ack 
83、sql 去重方法(group by 、distinct、窗口函数) 
84、哪些 Hive sql 不能在 Spark sql 上运行,看这里:https://spark.apache.org/docs/2.2.0/sql-programming-guide.html#unsupported-hive-functionality 
85、什么情况下发生死锁 
86、事务隔离级别?可重复读、不可重复读、读未提交、串行化 
87、Spark shuffle 和 Hadoop shuffle的异同 
88、Spark静态内存和动态内存 
89、mysql btree 和 hash tree 的区别。btree 需要唯一主键,hash tree 适合>= 等,精确匹配,不适合范围检索 
90、udf、udtf和 udaf 的区别 
91、hive sql 的执行过程 
92、spark sql 的执行过程 
93、找出数组中最长的top10字符串 
94、Flink 数据处理流程 
95、Flink 与 Spark streaming 对比 
96、Flink watermark 使用 
97、窗口与流的结合 
98、Flink 实时告警设计 
99、Java:面向对象、容器、多线程、单例 
100、Flink:部署、API、状态、checkpoint、savepoint、watermark、重启策略、datastream 算子和优化、job和task状态 
101、Spark:原理、部署、优化 
102、Kafka:读写原理、使用、优化 
103、hive的外部表 
104、spark的函数式编程 
105、线性数据结构和数据结构 
106、Spark映射,RDD
107、java的内存溢出和内存泄漏
108、多线程的实现方法 
109、HashMap、ConcurrentMap和 Hashtable 区别 
110、Flink Checkpoint 是怎么做的,作用到算子还是chain 
111、Checkpoint失败了的监控 
112、String、StringBuffer和 StringBuilder的区别 
113、Kafka存储流程,为什么高吞吐 
114、Spark 优化方法举例 
115、keyby 的最大并行度 
116、Flink 优化方法 
117、Kafka ISR 机制 
118、kafka partition 的状态 
119、kafka 副本的状态 
120、taskmanager 的数量 
121、if 和switch的性能区别
122、Hdfs读写流程(结合cap理论讲) 
123、技术选型原则 
124、Kafka组件介绍 
125、g1和cms的区别 
126、讲讲最熟悉的数据结构 
127、spark oom处理方法 
128、看了哪些源码 
129、Spark task原理 
130、解决过的最有挑战的问题 
131、Hbase读写流程

如果这130个题目有超过30个答不上来,面壁思过吧。

大数据面试题汇总与答案分享


Hadoop Hive Spark Flink HBase Kafka Zookeeper

一、Hadoop

  1. HDFS架构

  2. Yarn架构

  3. MapReduce过程

  4. Yarn 调度MapReduce

  5. hdfs写流程

  6. hdfs读流程

  7. hdfs创建一个文件的流程

  8. hadoop1.x 和hadoop 2.x 的区别

  9. hadoop1.x的缺点

  10. hadoop HA介绍

  11. hadoop的常用配置文件有哪些,自己实际改过哪些?

  12. 小文件过多会有什么危害,如何避免?

  13. 启动hadoop集群会分别启动哪些进程,各自的作用

  14. 讲一下环形缓冲区的概念

二、Hive

  1. hive 内部表和外部表的区别

  2. hive中 sort by / order by / cluster by / distribute by 的区别

  3. hive的metastore的三种模式

  4. hive 中 join都有哪些

  5. Impala 和 hive 的查询有哪些区别

  6. Hive中大表join小表的优化方法

  7. Hive Sql 是怎样解析成MR job的?

  8. Hive UDF简单介绍

  9. SQL题: 按照学生科目分组, 取每个科目的TopN

  10. SQL题: 获取每个用户的前1/4次的数据

三、Spark

  1. 讲一下spark 的运行架构
  2. 一个spark程序的执行流程
  3. spark的shuffle介绍
  4. Spark的 partitioner 都有哪些?
  5. spark 有哪几种join
  6. RDD有哪些特点
  7. 讲一下宽依赖和窄依赖
  8. Spark中的算子都有哪些
  9. RDD的缓存级别都有哪些
  10. RDD 懒加载是什么意思
  11. 讲一下spark的几种部署方式
  12. spark on yarn 模式下的 cluster模式和 client模式有什么区别
  13. spark运行原理,从提交一个jar到最后返回结果,整个过程
  14. spark的stage是如何划分的
  15. spark的rpc: spark2.0为什么放弃了akka 而用netty?
  16. spark的各种HA, master/worker/executor/driver/task的ha
  17. spark的内存管理机制,spark 1.6前后分析对比, spark2.0 做出来哪些优化
  18. 讲一下spark 中的广播变量
  19. 什么是数据倾斜,怎样去处理数据倾斜
  20. 分析一下一段spark代码中哪些部分在Driver端执行,哪些部分在Worker端执行

四、Flink

  1. 讲一下flink的运行架构

  2. 讲一下flink的作业执行流程

  3. flink具体是如何实现exactly once 语义

  4. flink 的 window 实现机制

  5. flink的window分类

  6. flink 的 state 是存储在哪里的

  7. flink是如何实现反压的

  8. flink的部署模式都有哪些

  9. 讲一下flink on yarn的部署

  10. flink中的时间概念 , eventTime 和 processTime的区别

  11. flink中的session Window怎样使用

五、HBase

  1. 讲一下 Hbase 架构
  2. hbase 如何设计 rowkey
  3. 讲一下hbase的存储结构,这样的存储结构有什么优缺点
  4. hbase的HA实现,zookeeper在其中的作用
  5. HMaster宕机的时候,哪些操作还能正常工作
  6. 讲一下hbase的写数据的流程
  7. 讲一下hbase读数据的流程

六、Kafka

  1. 讲一下 kafka 的架构

  2. kafka 与其他消息组件对比?

  3. kafka 实现高吞吐的原理

  4. kafka怎样保证不重复消费

  5. kafka怎样保证不丢失消息

  6. kafka 与 spark streaming 集成,如何保证 exactly once 语义

  7. ack 有哪几种, 生产中怎样选择?

  8. 如何通过 offset 寻找数据

  9. 如何清理过期数据

  10. 1条message中包含哪些信息

  11. 讲一下zookeeper在kafka中的作用

  12. kafka 可以脱离 zookeeper 单独使用吗

  13. kafka有几种数据保留策略

  14. kafka同时设置了7天和10G清除数据,到第5天的时候消息到达了10G,这个时候kafka如何处理?

七、Zookeeper

  1. zookeeper是什么,都有哪些功能
  2. zk 有几种部署模式
  3. zk 是怎样保证主从节点的状态同步
  4. 说一下 zk 的通知机制
  5. zk 的分布式锁实现方式
  6. zk 采用的哪种分布式一致性协议? 还有哪些分布式一致性协议
  7. 讲一下leader 选举过程

bigdata-interview's People

Contributors

water8394 avatar kongdz avatar yukitozed avatar zh0122 avatar

Stargazers

 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.