精选大数据面试真题10道(附答案详细解析)

 

大数据笔面试系列文章分为两种类型:混合型(即一篇文章中会有多个框架的知识点—融会贯通);专项型(一篇文章针对某个框架进行深入解析—专项演练)。

此篇文章为系列文章的第一篇(混合型)

第一题:大数据笔试题-Java相关(美菜网)

写出下列程序的输出:

运行结果:


分析:

这道程序题考察的是Java中的静态代码块、构造代码块、构造函数的概念。

随着类的加载而执行,即JVM加载类后就执行,而且只执行一次,执行优先级高于非静态的初始化块,它会在类初始化的时候执行一次,执行完成便销毁,它仅能初始化类变量,即static修饰的数据成员。

执行的时候如果有静态代码块,先执行静态代码块再执行非静态代码块,在每个对象生成时都会被执行一次,它可以初始化类的实例变量。非静态代码块会在构造函数执行时,在构造函数主体代码执行之前被运行

对象一建立,就会调用与之相应的构造函数,也就是说,不建立对象,构造函数是不会运行的。
一个对象建立,构造函数只运行一次,而一般方法可以被该对象调用多次。

再来看本题,程序运行,执行main()方法会先加载main()方法所在的类,加载 Son 类,但是 Son 类继承自 Father 类,所以先加载父类,同时父类的静态代码块执行,然后加载 Son 类本身,Son 类自己的静态代码块开始执行,类加载完成之后执行main()方法内部的语句,打印 First Son,然后 new Son(),在创建对象时先构造父类的对象,因为静态代码块只在类加载时执行一次,所以不再执行,然后执行父类的构造代码块,构造函数,构造代码块的优先级大于构造函数。然后在执行 Son 对象本身。完成之后打印 Second Son,接着又 new Son(),重复以上步骤。构造代码块和构造函数在每次new的时候都会执行一次

第二题:大数据面试题-JVM相关(丰巢科技)

问:解释内存中的栈(stack)、堆(heap)和静态存储区的用法?

答:通常我们定义一个基本数据类型的变量,一个对象的引用,还有就是函数调用的现场保存都使用内存中的栈空间;而通过new关键字和构造器创建的对象放在堆空间;程序中的字面量(literal)如直接书写的100、“hello”和常量都是放在静态存储区中。栈空间操作最快但是也很小,通常大量的对象都是放在堆空间,整个内存包括硬盘上的虚拟内存都可以被当成堆空间来使用。

String str = new String(“hello”);

上面的语句中str放在栈上,用new创建出来的字符串对象放在堆上,而“hello”这个字面量放在静态存储区。

补充:较新版本的Java中使用了一项叫“逃逸分析“的技术,可以将一些局部对象放在栈上以提升对象的操作性能。(在 Java SE 6u23+ 开始支持,并默认设置为启用状态,可以不用额外加这个参数。)

第三题:大数据面试题-海量数据相关(腾讯)

问:给 40 亿个不重复的 unsigned int 的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那 40 亿个数当中?

答:方案 1:申请 512M 的内存,512M是42亿多 bit,一个 bit 位代表一个 unsigned int 值。读入 40 亿个数,设置相应的 bit 位,读入要查询的数,查看相应 bit 位是否为 1,为 1 表示存在,为 0 表示不存在。

方案 2:这个问题在《编程珠玑》里有很好的描述,大家可以参考下面的思路,探讨一下:因为 2^32 为 42 亿多,所以给定一个数可能在,也可能不在其中;这里我们把 40 亿个数中的每一个用 32 位的二进制来表示 ,假设这 40 亿个数开始放在一个文件中。然后将这 40 亿个数分成两类:

并将这两类分别写入到两个文件中,其中一个文件中数的个数<=20 亿,而另一个>=20 亿(相当于折半);与要查找的数的最高位比较并接着进入相应的文件再查找
然后再把这个文件为又分成两类:

并将这两类分别写入到两个文件中,其中一个文件中数的个数<=10 亿,而另一个>=10 亿(相当于折半);与要查找的数的次最高位比较并接着进入相应的文件再查找。
…..
以此类推,就可以找到了,而且时间复杂度为 O(logn)。

第四题:大数据面试题-Hadoop相关(阿里)

问:MapReduce 中排序发生在哪几个阶段?这些排序是否可以避免?为什么?

答:

第五题:大数据面试题-Kafka相关(商汤科技)

问:kafka数据分区和消费者的关系,kafka的数据offset读取流程,kafka内部如何保证顺序

答:

第六题:大数据面试题-分布式相关(阿里)

问:说说三种分布式锁?

答:

利用select … where … for update 排他锁

注意: 其他附加功能与实现基本一致,这里需要注意的是“where name=lock ”,name字段必须要走索引,否则会锁表。有些情况下,比如表不大,mysql优化器会不走这个索引,导致锁表问题。

所谓乐观锁与悲观锁最大区别在于基于CAS思想,是不具有互斥性,不会产生锁等待而消耗资源,操作过程中认为不存在并发冲突,只有update version失败后才能觉察到。我们的抢购、秒杀就是用了这种实现以防止超卖。
乐观锁是通过增加递增的版本号字段实现的。

大致思想:每个客户端对某个功能加锁时,在zookeeper上的与该功能对应的指定节点的目录下,⽣生成⼀个唯一的瞬时有序节点。判断是否获取锁的方式很简单,只需要判断有序节点中序号最小的一个。当释放锁的时候,只需将这个瞬时节点删除即可。同时,其可以避免服务宕机导致的锁无法释放,⽽而产生的死锁问题。

第七题:大数据面试题-Hadoop、Spark相关(京东金融)

问:Hadoop 和 Spark 的相同点和不同点?

答:

Hadoop底层使用MapReduce计算架构,只有map和reduce两种操作,表达能力比较欠缺,而且在MR过程中会重复的读写hdfs,造成大量的磁盘io读写操作,所以适合高时延环境下批处理计算的应用;

Spark是基于内存的分布式计算架构,提供更加丰富的数据集操作类型,主要分成转化操作和行动操作,包括map、reduce、filter、flatmap、groupbykey、reducebykey、union和join等,数据分析更加快速,所以适合低时延环境下计算的应用;

spark与hadoop最大的区别在于迭代式计算模型。基于mapreduce框架的Hadoop主要分为map和reduce两个阶段,两个阶段完了就结束了,所以在一个job里面能做的处理很有限;spark计算模型是基于内存的迭代式计算模型,可以分为n个阶段,根据用户编写的RDD算子和程序,在处理完一个阶段后可以继续往下处理很多个阶段,而不只是两个阶段。所以spark相较于mapreduce,计算模型更加灵活,可以提供更强大的功能。

但是spark也有劣势,由于spark基于内存进行计算,虽然开发容易,但是真正面对大数据的时候,在没有进行调优的情况下,可能会出现各种各样的问题,比如OOM内存溢出等情况,导致spark程序可能无法运行起来,而mapreduce虽然运行缓慢,但是至少可以慢慢运行完。

第八题:大数据面试题-Yarn相关(特斯拉)

问:一个应用程序是如何在 Yarn 集群上执行的?

答:

当 jobclient 向YARN提交一个应用程序后,YARN将分两个阶段运行这个应用程序:一是启动ApplicationMaster;第二个阶段是由ApplicationMaster创建应用程序,为它申请资源,监控运行直到结束。

具体步骤如下:

第九题:大数据面试题-数据质量相关(蚂蚁金服)

问:数据质量怎么监控?

答:

如一张表的记录数在一个已知的范围内,或者上下浮动不会超过某个阈值:

单表空值检测

某个字段为空的记录数在一个范围内,或者占总量的百分比在某个阈值范围内

单表重复值检测

一个或多个字段是否满足某些规则

跨表数据量对比

主要针对同步流程,监控两张表的数据量是否一致

第十题:大数据面试题-海量数据相关(百度)

问:在海量日志数据中,提取出某日访问百度次数最多的那个IP

答:这类问题都归为求Top K的问题,解决方法都差不多。

将这一天访问百度的日志的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用 HashMap 进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最大的IP中找出那个频率最大的IP,即为所求。

算法思想:分而治之+Hash

 

 

 

 

精选大数据面试真题10道(附答案详细解析)

 

 

 

相关推荐

生数科技概念有哪些股票,名单都在这了!(2

生数科技概念有哪些股票,名单都在这了!(2

79

生数科技概念股有: 华策影视300133: 4月26日消息,华策影视7日内股价上涨10.75%,最新报8.000元,成交额21.47亿元。 2022年,公司净利润4.03亿,近五年复合增长为17.51%;毛利率33.67%,每股...

顺丰控股 | 大国崛起,巨头乘势而上

顺丰控股 | 大国崛起,巨头乘势而上

70

回溯美国百年快递发展经验:把握机遇、顺势而为 (1)十九世纪,美国的工业革命和西部淘金热带动了信件和货物邮递需求的产生和增长,快递业发展至十九世纪末,掌握了铁路运输...

课外科技活动

课外科技活动

83

重视学生科技创新能力的培养,借学校开展学风建设月的契机,学院成立了学科竞赛领导小组、制定了学院学科竞赛奖励办法、成立了机甲先锋科技创新协会,积极组织学生参加各类学...

《饥荒》矿区位置在哪里 矿区地形图文详细解析

《饥荒》矿区位置在哪里 矿区地形图文详细解析

65

如何判断矿区在哪 我用三张图片来解释 首先,世界地图呈现米字样,然后玩家刚到的地方一定是中央点,恶魔之门,所以一样是沿着边边去找,而且是贴近海岸线的那种。 运气好就会...

脱骨侠 蒜香无骨鸡爪

脱骨侠 蒜香无骨鸡爪

77

脱骨侠无骨,作为近年来备受消费者喜爱的,以其独特的口感和多样的口味选择在市场上脱颖而出。无骨鸡爪的创意来源于对传统鸡爪食用的改进,通过精心处理,去除了鸡爪中的骨头...

资本市场|2022年,A股走向何方?投资者该如何布

资本市场|2022年,A股走向何方?投资者该如何布

68

1 月 15 日,由重庆科技学院主办,重庆科技学院安全工程学院(应急管理学院)承办,重庆市安全科学与工程学会、重庆市安全生产科学研究院、油气生产安全与风险控制重庆市重点实...

省科技厅:把湖北建成创客“首选地”创新“强

省科技厅:把湖北建成创客“首选地”创新“强

71

荆楚网(湖北日报网)讯(通讯员 南艳群 丘剑山)5月8日上午,省科技厅在襄阳举办2021年湖北创新挑战赛首场赛事。此次创新挑战赛聚焦襄阳市“揭榜挂帅”重大科技项目技术需求,...

科技小报科学手抄报科技创造未来我的中国梦科

科技小报科学手抄报科技创造未来我的中国梦科

90

世界在发展,科技在进步,中国的强大势不可挡。我国的科技发展日新月异,俗话说:“科技改变生活。”相信在不久的将来,中国会变成世界科技强国。科技让我们的生活更加便利更...

财经早参丨美股涨跌不一,英伟达市值重上3万亿

财经早参丨美股涨跌不一,英伟达市值重上3万亿

87

每经记者 王琳每经编辑 何小桃 王瀚黎 王晓波 NO.1 隔夜市场 美股三大指数收盘涨跌不一,道指与标普500指数创盘中新高后转跌,道指跌0.7%,纳指涨0.04%,标普500指数跌0.19% ,大型科技...

科技促进农业发展

科技促进农业发展

56

关键词:高原特色农业;农业科技需求;供给创新 一、引言 云南省通过发展高原特色农业,全力打响丰富多样、生态环保、安全优质、四季飘香等“4张名片”,重点建设高原粮仓、特...

铁锈战争2科技战争中文版

铁锈战争2科技战争中文版

69

铁锈战争2科技战争中文版 是一款有着丰富的操作性,造兵、运营、进攻、防守一样都不差,海陆空单位一应俱全的画风怀旧的策略类游戏。 游戏体积不大,但是耐玩性很高! 游戏中,...

探索科技奥秘,点燃创新火花——杭十三中信息

探索科技奥秘,点燃创新火花——杭十三中信息

60

探索科技奥秘 点燃创新火花 近日,杭十三中信息科技教研组聚焦实验教学,开展了一系列公开课与教研活动。它们犹如知识与实践的桥梁,老师们在此交流探讨,不断优化教学,打造...

网站运营商 杭州远村环保科技有限公司 株式会社

网站运营商 杭州远村环保科技有限公司 株式会社

67

JCBC 简介 JCBC, 日中商务中心的缩写(Japan China Business Center)。 JCBC网站( www.jcbc.cn ) ,是一家日中技术交流门户网站,主要致力于向中国的客户介绍日本环保方面的一些先进的设备...

边缘计算CDN再次续航数字经济(网宿科技

边缘计算CDN再次续航数字经济(网宿科技

71

边缘计算CDN再次续航数字经济(网宿科技,边缘计算)数字经济概念股 数字化的时代已经来临,它正在改变或者影响我们目前的生活样貌。其中,边缘计算连接了物理世界和数字智能世界...

温州科技馆11月5日正式对外开放!抢票攻略看这

温州科技馆11月5日正式对外开放!抢票攻略看这

65

温州网讯 温州科技馆的门票太难约了,花了20分钟都约不了。有市民近日拨打新闻热线反映。温州科技馆工作人员对此回复:11月5日正式对外开放,这种情况将得到极大缓解。 据介绍,...

青年专家说|破解资源环境约束难题 推动农业产

青年专家说|破解资源环境约束难题 推动农业产

57

转自:农民日报 近期,农民日报社“全面推进乡村振兴加快建设农业强国”理论研讨会在北京举行。会议以“资源约束、动力转换与产业升级”“数字赋能、治理创新与乡村发展”为议...

粮食科技与经济

粮食科技与经济

60

1. 来稿内容题材新颖、结构严谨、文字凝练、阐论精辟,有一定理论水平和学术价值。文稿字数2000字以上,要有中文标题、关键词、摘要。 2. 文章题目力求简明、醒目,中文文题一般...

首都出版业114家行动企业及内容资源

首都出版业114家行动企业及内容资源

96

三联书店三联书情 『生活需要读书和新知』 自2月2日,首都出版单位积极响应北京市委宣传部、北京市新闻出版局号召,发起新型冠状病毒感染肺炎疫情防控“+我一个”行动计划以来...

金融科技在金融行业的应用

金融科技在金融行业的应用

66

一场由阿尔法狗与棋手间展开的围棋比赛,让世界关注到人工智能(Artificial Intelligence,简称“AI”)技术的发展。百度百科对AI如此定义――它是对人的意识、思维等信息过程的模拟。...

这些城市,能合并吗?

这些城市,能合并吗?

100

来源:雪球App,作者: 刘晓博说财经,(https://xueqiu.com/4918059469/303834655) 原创 刘晓博 行政区划调整,一直是民间的热门话题,相关讨论甚至能影响庙堂上的决策。 比如民间一直热议...