【金三银四】大数据面试题(2021最新版)

目录

前言

1、选择题

 1.1.下面哪个程序负责 HDFS 数据存储。

1.2.HDfS 中的 block 默认保存几份?

1.3.下列哪个程序通常与 NameNode 在一个节点启动?

1.4.HDFS 默认 Block Size

 1.5.下列哪项通常是集群的最主要瓶颈   

 1.6.关于 SecondaryNameNode 哪项是正确的?  

1.7.下列哪项可以作为集群的管理?

1.8.Client 端上传文件的时候下列哪项正确

1.9.下列哪个是 Hadoop 运行的模式

2、面试题

2.1. Hadoop 的核心配置是什么?

2.2.那当下又该如何配置?

2.3.“jps”命令的用处?

2.4.mapreduce 的原理?

2.5. HDFS 存储的机制?

2.6.举一个简单的例子说明 mapreduce 是怎么来运行的 ?

2.7.用 mapreduce 来实现下面需求?

2.8.hadoop 中 Combiner 的作用?

2.9.简述 hadoop 安装

2.10. 请列出 hadoop 进程名

2.11. 解决下面的错误

2.12. 写出下面的命令

2.13. 简述 hadoop 的调度器

2.14. 列出你开发 mapreduce 的语言

2.15. 书写程序

2.16. 不同语言的优缺点

2.17. hive 有哪些保存元数据的方式,个有什么特点。

2.18. combiner 和 partition 的作用

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

2.20. hbase 的 rowkey 怎么创建好?列族怎么创建比较 好?

2.21. 用 mapreduce 怎么处理数据倾斜问题?

2.22. hadoop 框架中怎么来优化

2.23. 我们开发 job 时,是否可以去掉 reduce 阶段。

2.24. datanode 在什么情况下不会备份

2.25. combiner 出现在那个过程

2.26. hdfs 的体系结构

2.27. 3 个 datanode 中有一个 datanode 出现错误会怎样?

2.28. 描述一下 hadoop 中,有哪些地方使用了缓存机制, 作用分别是什么?

2.29. 如何确定 hadoop 集群的健康状态

2.30. 生产环境中为什么建议使用外部表?

最后


前言

随着 5G 时代的到来,大数据人工智能产业链又一次迎来了井喷式的爆发,随着岗位需求的不断增加,越来越多的人选择大数据课程,但是没有真正从事大数据工作的人面对企业面试有种无从下手的感觉,面对面试说不到技术的重点,每次面试只能靠队友,靠兄弟支援,尤其是面对架构,编程更是无从下手。于是我决定对市场上大多的有关大数据核心的面试题做一个详细的分析,也希望大家尽可能的做到举一反三,而不是局限于题目本身。

小编分享的这份金三银四Java后端开发面试总结包含了JavaOOP、Java集合容器、Java异常、并发编程、Java反射、Java序列化、JVM、Redis、Spring MVC、MyBatis、MySQL数据库、消息中间件MQ、Dubbo、Linux、ZooKeeper、 分布式&数据结构与算法等26个专题技术点,都是小编在各个大厂总结出来的面试真题,已经有很多粉丝靠这份PDF拿下众多大厂的offer,今天在这里总结分享给到大家!【持续更新中!】

完整版Java面试题地址:2021最新面试题合集集锦

序号专题内容链接地址
1中间件【金三银四】Java中间件面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/114002362
2微服务【金三银四】Java微服务面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/113923549
3并发编程【金三银四】Java并发编程面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/113895576
4 Java基础【金三银四】Java基础知识面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115146056
5Spring Boot【金三银四】Spring Boot面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115186811
6 Redis【金三银四】Redis面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115188010
7 Spring MVC【金三银四】Spring MVC面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115220638
8Spring Cloud【金三银四】Spring Cloud面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115220987
9MySQL优化【金三银四】MySQL优化面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115254620
10JVM【金三银四】JVM性能调优面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115283079
11Linux【金三银四】Linux面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115283583
12Mybatis【金三银四】Mybatis面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115285732
13网络编程【金三银四】TCP,UDP,Socket,Http网络编程面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115464896
14设计模式【金三银四】设计模式面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115466449
15大数据金三银四】大数据面试题100道(2021最新版)https://blog.csdn.net/SQY0809/article/details/115484939
16Tomcat【金三银四】Tomcat面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115486648
17多线程【金三银四】多线程面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115487212
18Nginx【金三银四】Nginx_BIO_NIO_AIO面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115488446
19memcache【金三银四】memcache面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115494213
20java异常【金三银四】java异常面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115530401
21Java虚拟机【金三银四】Java虚拟机面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115532365
22Java集合【金三银四】Java集合面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115599284
23Git常用命令【金三银四】Git常用命令(2021最新版)https://blog.csdn.net/SQY0809/article/details/115602390
24Elasticsearch【金三银四】Elasticsearch面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115604293
25Dubbo【金三银四】Dubbo面试题(2021最新版)https://blog.csdn.net/SQY0809/article/details/115605560

1、选择题

 1.1.下面哪个程序负责 HDFS 数据存储。

  • a)NameNode
  • b)Jobtracker
  • c)Datanode
  • d)secondaryNameNode
  • e)tasktracker

答案 C datanode

1.2.HDfS 中的 block 默认保存几份?

  • a)3 份
  • b)2 份
  • c)1 份
  • d)不确定

答案 A 默认 3 份

1.3.下列哪个程序通常与 NameNode 在一个节点启动?

  • a)SecondaryNameNode
  • b)DataNode
  • c)TaskTracker
  • d)Jobtracker

答案 D

1.4.HDFS 默认 Block Size

a)32MB

b)64MB

c)128MB

答案:B

 1.5.下列哪项通常是集群的最主要瓶颈   

  •  a)CPU
  • b)网络
  • c)磁盘 IO
  • d)内存

答案:C 磁盘

 1.6.关于 SecondaryNameNode 哪项是正确的?  

  • a)它是 NameNode 的热备
  • b)它对内存没有要求
  • c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间
  • d)SecondaryNameNode 应与 NameNode 部署到一个节点

答案 C。

1.7.下列哪项可以作为集群的管理?

  • a)Puppet
  • b)Pdsh
  • c)Cloudera Manager
  • d)Zookeeper

答案 ABD

1.8.Client 端上传文件的时候下列哪项正确

  • a)数据经过 NameNode 传递给 DataNode
  • b)Client 端将文件切分为 Block,依次上传
  • c)Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工作

答案 B

分析:Client 向 NameNode 发起文件写入的请求。NameNode 根据文件大小和文件块配置情况,返回给 Client 它所管理部分 DataNode 的信息。Client 将文件划分为多个 Block,根据 DataNode 的地址信息,按顺序写入到每一个 DataNode 块中。具体查看 HDFS 体系结构简介及优缺点。

1.9.下列哪个是 Hadoop 运行的模式

  • a)单机版
  • b)伪分布式
  • c)分布式

答案 ABC 单机版,伪分布式只是学习用的。       

2、面试题

2.1. Hadoop 的核心配置是什么?

Hadoop 的核心配置通过两个 xml 文件来完成:1,hadoop-default.xml;2,hadoop-site.xml。这些文件都使用 xml 格式,因此每个 xml 中都有一些属性,包括名称和值,但是当下这些文件都已不复存在。

2.2.那当下又该如何配置?

Hadoop 现在拥有 3 个配置文件:1,core-site.xml;2,hdfs-site.xml;3,mapred-site.xml。这些文件都保存在 conf/子目录下。

2.3.“jps”命令的用处?

这个命令可以检查 Namenode、Datanode、Task Tracker、 Job Tracker 是否正常工作。

2.4.mapreduce 的原理?

2.5. HDFS 存储的机制?

流程:

1client 链接 namenode 存数据

2namenode 记录一条数据位置信息(元数据),告诉 client 存哪。

3client hdfs api 将数据块(默认是 64M)存储到 datanode 上。

4datanode 将数据水平备份。并且备份完将反馈 client

5client 通知 namenode 存储块完毕。

6namenode 将元数据同步到内存中。

7、 另一块循环上面的过程。

流程:

1client 链接 namenode,查看元数据,找到数据的存储位置。

2client 通过 hdfs api 并发读取数据。

3、 关闭连接。

2.6.举一个简单的例子说明 mapreduce 是怎么来运行的 ?

wordcount 的例子

2.7.用 mapreduce 来实现下面需求?

现在有 10 个文件夹,每个文件夹都有 1000000 url.现在让你找出 top1000000url

解答:topk

(还可以用 treeMap, 1000000 了每来一个都加进去, 删掉最小的)

2.8.hadoop 中 Combiner 的作用?

combiner reduce 的实现,在 map 端运行计算任务,减少 map 端的输出数据。

作用就是优化。

但是 combiner 的使用场景是 mapreduce map reduce 输入输出一样。

2.9.简述 hadoop 安装

2.10. 请列出 hadoop 进程名

2.11. 解决下面的错误

2.12. 写出下面的命令

2.13. 简述 hadoop 的调度器

2.14. 列出你开发 mapreduce 的语言

2.15. 书写程序

2.16. 不同语言的优缺点

2.17. hive 有哪些保存元数据的方式,个有什么特点。

2.18. combiner 和 partition 的作用

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

  • 内部表:加载数据到 hive 所在的 hdfs 目录,删除时,元数据和数据文件都删除
  • 外部表:不加载数据到 hive 所在的 hdfs 目录,删除时,只删除表结构

2.20. hbase 的 rowkey 怎么创建好?列族怎么创建比较 好?

  • hbase 存储时,数据按照 Row key 的字典序(byte order)排序存储。设计 key 时,要充分排序
  • 存储这个特性,将经常一起读取的行存储放到一起。(位置相关性)一个列族在数据底层是一个文件,所以将经常一起查询的列放到一个列族中,列族尽量少, 减少文件的寻址时间。

2.21. 用 mapreduce 怎么处理数据倾斜问题?

2.22. hadoop 框架中怎么来优化

2.23. 我们开发 job 时,是否可以去掉 reduce 阶段。

可以。设置 reduce 数为 0 即可

2.24. datanode 在什么情况下不会备份

datanode 在强制关闭或者非正常断电不会备份

2.25. combiner 出现在那个过程

出现在 map 阶段的 map 方法后。

2.26. hdfs 的体系结构

  • hdfs namenodesecondraynamenodedatanode 组成。
  • n+1 模式
  • namenode 负责管理 datanode 和记录元数据
  • secondraynamenode 负责合并日志
  • datanode 负责存储数据

2.27. 3 个 datanode 中有一个 datanode 出现错误会怎样?

这个 datanode 的数据会在其他的 datanode 上重新做备份。

2.28. 描述一下 hadoop 中,有哪些地方使用了缓存机制, 作用分别是什么?

mapreduce 提交 job 的获取 id 之后,会将所有文件存储到分布式缓存上,这样文件可以被所有的 mapreduce 共享。

2.29. 如何确定 hadoop 集群的健康状态

通过页面监控,脚本监控。

2.30. 生产环境中为什么建议使用外部表?

1、因为外部表不会加载数据到 hive,减少数据传输、数据还能共享。

2hive 不会修改数据,所以无需担心数据的损坏

3、 删除表时,只删除表结构、不删除数据。

3. 15 期新增

4. 共同朋友

5. 基站逗留时间

6. 脚本替换

7. 一键执行

8. 大数据面试汇总

9. 面试问题:

10.京东商城 - 大数据

该面试题答案解析完整文档获取方式:【大数据面试题【附答案解析】

最后

小编分享的内容到这里就结束了,整理不易,欢迎大家一起交流,喜欢小编分享的文章记得关注我点赞哟,感谢支持!

  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值