# BigData-Interview **Repository Path**: gregwu/BigData-Interview ## Basic Information - **Project Name**: BigData-Interview - **Description**: :dart: :star2:[大数据面试题]分享自己在网络上收集的大数据相关的面试题以及自己的答案总结.目前包含Hadoop/Hive/Spark/Flink/Hbase/Kafka/Zookeeper框架的面试题知识总结 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-09-26 - **Last Updated**: 2021-11-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #### 大数据面试题汇总与答案分享 ------
Hadoop Hive Spark Flink HBase Kafka Zookeeper
## 一、Hadoop 1. [HDFS架构](./docs/HDFS架构.md) 2. [Yarn架构](./docs/Yarn架构.md) 3. [MapReduce过程](./docs/MapReduce过程.md) 4. [Yarn 调度MapReduce](./docs/Yarn调度MapReduce.md) 5. [hdfs写流程](./docs/hdfs写流程.md) 6. [hdfs读流程](./docs/hdfs读流程.md) 7. [hdfs创建一个文件的流程](./docs/hdfs创建一个文件的流程.md) 8. [hadoop1.x 和hadoop 2.x 的区别](./docs/hadoop1.x和hadoop2.x的区别.md) 9. [hadoop1.x的缺点](./docs/hadoop1.x的缺点.md) 10. [hadoop HA介绍](./docs/hadoopHA介绍.md) 11. hadoop的配置文件有哪些,自己实际改过哪些? 12. 小文件过多会有什么危害,如何避免? 13. 启动hadoop集群会分别启动哪些进程,各自的作用 ## 二、Hive 1. [hive 内部表和外部表的区别](./docs/hive内部表和外部表的区别.md) 2. [hive中 sort by / order by / cluster by / distribute by 的区别](./docs/hive四种排序方式的区别.md) 3. 写HQL: 两张表-> 一张歌曲表,一张专辑表,找出每张专辑的Top100 4. hive的metastore的三种模式 5. [hive 中 join都有哪些](./docs/hive中join都有哪些.md) 6. [Impala 和 hive 的查询有哪些区别](./docs/Impala和hive的查询有哪些区别.md) 7. Hive中大表join小表的优化方法 8. [Hive Sql 是怎样解析成MR job的?](./docs/HiveToMR.md) 9. Hive UDF ## 三、Spark 1. [讲一下spark 的运行架构](./docs/讲一下spark的运行架构.md) 2. [一个spark程序的执行流程](./docs/一个spark程序的执行流程.md) 3. [spark的shuffle介绍](./docs/spark的shuffle介绍.md) 4. [Spark的 partitioner 都有哪些?](./docs/Spark的partitioner都有哪些.md) 5. [spark 有哪几种join](./docs/spark有哪几种join.md) 6. DAGschedular/Taskscheduler/Schedulerbankend的实现原理 7. [RDD有哪些特点](./docs/RDD有哪些特点.md) 8. 讲一下宽依赖和窄依赖 9. Spark中的算子都有哪些 10. RDD的缓存级别都有哪些 11. RDD 懒加载是什么意思 12. [讲一下spark的几种部署方式](./docs/讲一下spark的几种部署方式.md) 13. [spark on yarn 模式下的 cluster模式和 client模式有什么区别](./docs/spark中cluster模式和client模式有什么区别.md) 14. [spark运行原理,从提交一个jar到最后返回结果,整个过程](./docs/spark从提交一个jar到最后返回结果.md) 15. spark的stage是如何划分的 16. [spark的rpc: spark2.0为什么放弃了akka 而用netty?](./docs/spark2.0为什么放弃了akka而用netty.md) 17. spark的各种HA, master/worker/executor/driver/task的ha 18. spark的内存管理机制,spark 1.6前后分析对比, spark2.0 做出来哪些优化 19. tungsten引擎: cpu和内存两方面分别说明 20. [讲一下spark 中的广播变量](./docs/spark中的广播变量.md) 21. 什么是数据倾斜 22. 怎样去处理数据倾斜 ## 四、Flink 1. [讲一下flink的运行架构](./docs/讲一下flink的运行架构.md) 2. flink具体是如何实现exactly one 语义 3. [flink 的 window 实现机制](./docs/flink的window实现机制.md) 4. [flink的window分类](./docs/flink的window分类.md) 5. flink 的 state 实现机制 6. [flink 的 state 是存储在哪里的](./docs/flink的state是存储在哪里的.md) 7. flink中的时间概念 , eventTime 和 processTime的区别 ## 五、HBase 1. [讲一下 Hbase 架构](./docs/讲一下Hbase架构.md) 2. [hbase 如何设计 rowkey](./docs/hbase如何设计rowkey.md) 3. 讲一下hbase的存储结构,这样的存储结构有什么优点 4. hbase 如何利用 phoniex 实现二级索引 5. hbase 设计的优缺点,对比 nosql 和 关系型数据库 6. hbase的HA实现,zookeeper在其中的作用 7. master宕机的时候,哪些操作还能正常工作 8. hbase的读写流程 ## 六、Kafka 1. [讲一下 kafka 的架构](./docs/讲一下kafka的架构.md) 2. kafka 相比其他消息组件有什么好处? 3. kafka 实现高吞吐的原理 4. kafka 的消息传递语义 / kafka怎样保证数据的一致性 5. kafka 与 spark streaming 集成,如何保证 exactly once 语义 6. ack 有哪几种, 生产中怎样选择? 7. 如何通过 offset 寻找数据 8. 生产者/消费者 各如何监控数据及时消费 9. kafk 的 ISR 机制 10. 如何清理过期数据 11. 1条message中包含哪些信息 12. [讲一下zookeeper在kafka中的作用](./docs/讲一下zookeeper在kafka中的作用.md) 13. kafka 可以脱离 zookeeper 单独使用吗 14. kafka有几种数据保留策略 15. kafka同时设置了7天和10G清除数据,到第5天的时候消息到达了10G,这个时候kafka如何处理? ## 七、Zookeeper 1. zookeeper是什么 2. zk都有哪些功能 3. zk 有几种部署模式 4. zk 是怎样保证主从节点的状态同步 5. 说一下 zk 的通知机制 6. zk 的分布式锁实现方式 7. zk 采用的哪种 选举协议? 大数据生态圈还有哪些选举协议 8. [讲一下leader 选举过程](./docs/讲一下leader选举过程.md)