百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

干货分享,新浪大数据岗位面试题汇总

moboyou 2025-05-04 15:20 17 浏览

新浪面试题

学长1

一面

1)自我介绍

叫什么名字,来自哪里,本科哪个学校,硕士哪个学校,大数据做了多长时间,对Hadoop生态圈以及Spark生态圈中的哪些技术比较了解(很简单的一句就带过了),说完大概2min

2)技术部分

(1)让我介绍下Sqoop,说他没见过

我说Sqoop我用的不熟,知道怎么用,可以简单地给他介绍一下。然后就说Sqoop是HDFS、关系型数据、HBase它们三者之间传输数据用的,很方便。

(2)让我介绍MapReduce的运行过程

二话不说要笔要纸,手绘MapReduce从InputFormat到OutputFormat的流程,一边画图一边说。

3)项目部分

(1)让我介绍项目我都是给他要笔要纸,手绘架构图。

离线:data->flume->kafka->hdfs->hadoop/spark->mysql->前端展示

实时:data->flume->kafka->Spark Streaming->mysql->前端展示

kafka到hdfs是自定义的consumer

(2)为什么要使用Kafka,可不可以用Flume直接将数据放在HDFS上

我说可以用Flume将数据直接放在HDFS上,但是很少有人这么干,为什么要用Kafka我没有深入研究过(当时没想到咋说)

(3)让我介绍下项目中的指标,都是怎么实现的

我就挨个把我写上的项目指标说了下是什么意思,是怎么实现的(我简历上每个项目就写了几个指标,我感觉比较熟的),最后我说还有其他的很多指标,我做的就这些。

4)手写算法部分

(1)让我写链表的反转

我说链表没咋接触过,老师换个吧

(2)接下来让我手写单例

分分钟写了个双端检测单例

5)是否有问题问面试官

(1)最后说有没有问题要问他

问1:我就问他们大数据是做什么,一天的数据量有多大

答1:他给我说他们是做反垃圾的,一天的数据量上T了

问2:我就又问他们怎么定义的垃圾数据

答2:他就给我说一切影响用户体验的数据都是垃圾数据,比如说在用户的评论下面打广告之类的

然后我就说暂时没有了,他就让我在那等着了

二面

1)自我介绍

还是一面那一套

2)技术部分

(1)介绍MapReduce的运行过程

还是上面的一套。不过在我一边画图一边说的时候有人给他发消息,貌似挺着急,然后我就停下来了,他说不好意思他回个消息,我就说不着急,等您忙完咱再聊。

3)项目部分

(1)项目框架介绍

老一套

(2)问我写的公司做什么的

我说做电商的

(3)他又问具体都卖什么

我说什么都卖,就跟京东和淘宝似的,只不过规模小很多

(4)问我上家公司做大数据的有多少人

我说十多个吧

(5)问我公司在哪

我说在丰台

(6)问我一天的数据量有多大

我说APP端有十多个G,将近20多个G,浏览器端大概有四五十G

(7)又问我一天的访问量有多少

我当时心里就按照费老师说的10w个人1G的量大概算了下,说了个数

4)手写算法部分

(1)手写二分查找

二分是基于一个排好序的数组,我就问他数组排序用不用写,他说不用,然后就分分钟写完,最后我还说用不用手写MapReduce的WordCount以及Spark的WordCount的,一点问题没有。

(2)让我用Shell写一个脚本,对文本中无序的一列数字排序

我说Shell简单的我可以,比如说写个脚本,Crontab周期性调度一下,复杂的我得查下资料,也就没写

5)是否有问题问面试官

(1)最后说他没问题了,我有什么要问他的没

我说要我不,他笑了,然后他说除了这个

(2)我当时也没想到什么问题,就问了嘴他们的集群有多大

他说成千上万台

三面

1)自我介绍

(1)自我介绍

老一套

(2)问我哪一年毕业的,公司有多少人

我实话实说,说还没有毕业就去实习了,我说二三百人

(3)问我为什么要做这个,什么专业的

专业我实话实说的,然后说15年底16年初的时候原油价格暴跌,说以前行情好的时候最高一桶原油120美元,巅峰能达到160,我找工作那年最低的时候25,行情特别差,自己比较喜欢编程,硕士毕业的东西都是用MATLAB实现的,然后就自己学的Java,找的这个工作,进去以后领导让做大数据,就跟着老师傅干了。

2)技术部分

(1)问我Kafka用的那个版本

0.11

(2)问我ZooKeeper的常用命令

我说Status(基本全忘了,就这个记得很清楚),他说还有呢,我说ls,然后我又说忘的差不多了,但是我知道它的命令和Linux命令差不多,都是那一套,那老师也就没再问。

(3)问我myisam和innodb的区别

我就按照阳哥讲的,先说了下myisam不支持主外键,不支持事物,它是表锁,不适合高并发,而innodb则不是,然后他又问我还有没,我说了解就这么多,他也没再问

(4)他又问我一句如果单线程访问,myisam和innodb那个性能好一点

我说myisam吧,因为它不支持事物,要快一些

然后他又问我一个问题,我没答上来,我忘了那个问题是啥了

(5)问我Redis常用的命令

我顿了一两秒甩了一句keys*,他笑着说可以可以

(6)问我为什么要用Redis

我就说Redis是内存型数据库,以前访问量没那么大的时候关系型数据库完全可以胜任,但是在高并发的情况下访问量一大,关系型数据就不行了,所以就有了Redis

(7)问我了解HBase不

我说了解不多,就知道它是一个非关系型数据库,它也就没再问

(8)然后问我机械硬盘和SSD硬盘的差别了解不

我说SSD读写快,然后他说是,他又问我底层了解不,为什么SSD读写快,我没答出来,他又说从硬盘读取数据首先要干什么,我说寻址(然后突然一下子好像明白了,就跟他扯了扯)

(9)然后他又问我机械硬盘每秒读取次数多少知道不

我说我不知道,没研究这么深,但是我说我知道我们大数据读取数据的时候寻址不超过10ms(我当时心里这样想的,这些东西我没接触过,我要往大数据上靠,要引导他去问我大数据的东西),结果他说知道这个能算出来机械硬盘1秒能读多少次,然后我好想明白了,就1s/10ms呗,他说是,也就100来次

3)项目部分

(1)问我一天的数据量有多大

我还是按照原来的那个说的,他说不到100G单机就能搞定吧,我说公司就这么定的,然后尴尬不失礼貌地笑了笑(跟尽际老师学的)

然后就看着简历问了一些问题

(2)问我Azkaban一天调度多少个任务

我说三五百个吧

(3)然后他问我这么一个问题,他说你做这些项目需要埋点日志的对吧,然后说如果后台的人不愿意给你加这个埋点,嫌麻烦,你怎么办

我愣了一会,随口说了句,吃顿饭,那老师当场笑了,然后他说这算是个办法,他又说如果这个人没时间,没工夫跟你吃饭,你怎么办,我当时傻笑了两下,没回答。

4)场景题,手写SQL

场景1:是这样的,一张表三个字段,分别是学生名字、科目名字、科目得分,让我用sql把总分最高的找出来

我说我数据掌握不太好,试着写写。

我用了个子查询,先按学生分组,然后求每个学生的总分数

然后在外部查询中求最大的

我一开始在子查询中直接对用聚合函数求的sum_score排序了,他看了以后说能这么做么,我说我忘了,然后我又说子查询不行的话咱们就在外部查询排序呗,然后反问他可以吧,他说可以的

5)平时学习习惯

CSDN、博客园、Apache官网

6)是否有问题问面试官

(1)最后他说他差不多了,我有什么要问他的没

我问了下他业务方面的一些,也没想到啥,随便问的

(2)最后我又问他,他刚才问我埋点日志后台的人不给加怎么办

他给我说这个需要各个组协调好,不然别干活了,就扯了一会

四面

1)自我介绍

老一套

2)技术部分

(1)介绍MapReduce的运行流程

本来我说给他手画的,他不让,说介绍就行。我就从InputFormat开始到OutputFormat给他说了一遍。

然后他就说按照简历来问

(2)让我说下myisam和innodb的区别

老一套

(3)然后看着简历说你知道HDFS的存储过程,我说需不需要我说一下

然后我就把海哥hadoop存储过程那几个图给他说了一遍

3)项目部分

让我介绍下我写的三个项目都是干啥的,我就没画图,给他介绍了下每个项目具体是做啥的,怎么做的(什么领导层要看指标啊啥的)

4)平时学习习惯

还是CSDN、博客园、Apache官网,说都是晚上和周六周天自己学的

(1)问我喜不喜欢技术

我说很喜欢,我说了以后他说为什么喜欢,我就说我搭建起来一个集群很有成就感,能在我女朋友面前炫耀一番。。。

(2)问我喜欢跟人打交道还是喜欢跟机器打交道

我按照实际情况说了下,说比较宅,比较喜欢跟机器打交道,还说从小就比较喜欢玩小霸王游戏机之类的。。。

五面HR

教训:和HR接触不要激动,不要表现的很倾向来她们公司,因为后面工资可能不好谈,要不到理想的价位。

1)自我介绍

老一套

2)人事高频问题

(1)有没有别的offer,面试几家了

我说这周一开始投的简历,在等百度的offer,上午面试的58到家,但是58到家做Hive比较多,我了解不多

(2)问我什么时候辞职的

我说十一月初

(3)问我为什么现在才找工作

说回家一趟,大半年没回家了,这两天刚回来

(4)上家薪资多少

我就按照我心里的想法和马老师说的大概说了个数

然后说什么他们很严格,如果不行会马上辞退啥的,最后说看我能力可以,问我啥时候可以上班,让我准备下薪资流水和离职证明

学长2

1)技术部分

(1)Kafka吞吐量怎么优化

(2)Hive底层,SQL、表关联、窗口函数、聚合函数、一堆场景题

(3)Join对应的MR

(4)一张小表Join一张大表 在MR上怎么JOIN

(5)map()阶段聚合

(6)Spark job流程

2)项目部分

(1)上个月用户访问次数最大的IP

(2)TopN

(3)日活实时统计

(4)SparkStreaming的活动窗口大小,数据重复怎么办?

(5)数据仓库ODS -》 DWD 用什么写的脚本?

3)算法部分

(1)二分查找

(2)字符串反转

学长3

1)技术部分

(1)HDFS的小文件处理。

(2)Hive调优,数据倾斜问题

(3)Spark任务提交流程

(4)MR任务提交Yarn流程

(5)HDFS的读写流程,Shuffle流程,Shuffle过程的归并排序具体怎么做。

(6)是否用了currenthashmap,高并发问题就高枕无忧了

(7)线程池了解吗?

(8)怎么判断一个Kafka消费者挂了

(9)了解Redis,MySQL吗,MySQL的索引了解吗?

(10)select。。。for update是什么锁?

(11)MySQL底层文件存储

(12)读过哪些框架的源码?

(13)JVM底层原理

(14)Spark的distinct()算子底层

(15)布隆过滤器

(16)Zookeeper的作用,Zookeeper单独的事务,Nginx的作用,只做收集数据吗?

(17)说一下Kafka的架构,描述hw leo,Kafka的优化,怎么做幂等,你们做业务幂等性,为什么消费者怎么看到hw。消息的一致性能解决什么问题,kafka事务怎么理解。

(18)Spark的Shuffle过程

(19)HBase怎么预分区

(20)Redis有多少槽,Redis的持久化,你们在项目中怎么用Redis的,如何防止雪崩。

(21)mysql update一条语句,需要走哪些流程。

(22)了解ES吗?

(23)Yarn执行一个任务用了多少core

(24)produce给Kafka的一个topic发送消息,topic的一个分区挂掉,他的副本也全部挂掉,这个topic还能用吗

(25)有没有用JavaAPI去读Kafka的数据

(26)Spark读取Kafka数据的方式?

(27)Hive的内表和外表的区别,Hive为什么要做分区,Hive的元数据存在哪?

(28)列式存储和关系型数据库的区别

(29)Java中正则表达式用到哪些类?

(30)unlock和synchronzed的区别?

(31)编写SparkSQL的步骤?

2)项目部分

(1)写实时项目遇到了哪些问题

(2)拉链表的创建,连续三天登陆

(3)你们公司日活,月活,留存多少?你们团队多少人?

(4)为什么加最后一层Flume,不能直接Flume到HDFS吗?

(5)分析指标,对APP有什么影响。提升了百分之多少?

(6)有没有访问Kafka的所有Topic的权限

(7)有没有做Hive表的权限管理。

3)算法部分

(1)归并排序

(2)删除单链表的一个节点

4)情景题:

(1)Spark:如果消费Kafka中的数据时,某个分区内数据因为种种原因丢失了一条(也可理解成因为某些条件被过滤了),现在需要重新把这条数据纳入计算结果中。怎么解决?

(2)a left join b on a.id = b.id and b.age = 20

a left join b on a.id = b.id where b.age = 20

的结果有什么区别

5)平时学习习惯

(1)你最近在研究什么?

学长4

1)项目介绍

介绍一下项目,你主要负责哪部分,最精通什么

2)技术部分

(1)HDFS读写机制,DataNode怎么保证数据可靠性,原理是什么(答副本,说不对)

(2)MR的过程详细说一下

(3)使用MR写出Join过程

(4)日常开发哪里用到Java多线程,怎么写

(5)说一下并发和同步,单例必须加同步锁么?为什么

(6)说一下MR的底层源码,你研究了哪部分?

(7)说说Spark的底层源码吧

相关推荐

Excel技巧:SHEETSNA函数一键提取所有工作表名称批量生产目录

首先介绍一下此函数:SHEETSNAME函数用于获取工作表的名称,有三个可选参数。语法:=SHEETSNAME([参照区域],[结果方向],[工作表范围])(参照区域,可选。给出参照,只返回参照单元格...

Excel HOUR函数:“小时”提取器_excel+hour函数提取器怎么用

一、函数概述HOUR函数是Excel中用于提取时间值小时部分的日期时间函数,返回0(12:00AM)到23(11:00PM)之间的整数。该函数在时间数据分析、考勤统计、日程安排等场景中应用广泛。语...

Filter+Search信息管理不再难|多条件|模糊查找|Excel函数应用

原创版权所有介绍一个信息管理系统,要求可以实现:多条件、模糊查找,手动输入的内容能去空格。先看效果,如下图动画演示这样的一个效果要怎样实现呢?本文所用函数有Filter和Search。先用filter...

FILTER函数介绍及经典用法12:FILTER+切片器的应用

EXCEL函数技巧:FILTER经典用法12。FILTER+切片器制作筛选按钮。FILTER的函数的经典用法12是用FILTER的函数和切片器制作一个筛选按钮。像左边的原始数据,右边想要制作一...

office办公应用网站推荐_office办公软件大全

以下是针对Office办公应用(Word/Excel/PPT等)的免费学习网站推荐,涵盖官方教程、综合平台及垂直领域资源,适合不同学习需求:一、官方权威资源1.微软Office官方培训...

WPS/Excel职场办公最常用的60个函数大全(含卡片),效率翻倍!

办公最常用的60个函数大全:从入门到精通,效率翻倍!在职场中,WPS/Excel几乎是每个人都离不开的工具,而函数则是其灵魂。掌握常用的函数,不仅能大幅提升工作效率,还能让你在数据处理、报表分析、自动...

收藏|查找神器Xlookup全集|一篇就够|Excel函数|图解教程

原创版权所有全程图解,方便阅读,内容比较多,请先收藏!Xlookup是Vlookup的升级函数,解决了Vlookup的所有缺点,可以完全取代Vlookup,学完本文后你将可以应对所有的查找难题,内容...

批量查询快递总耗时?用Excel这个公式,自动计算揽收到签收天数

批量查询快递总耗时?用Excel这个公式,自动计算揽收到签收天数在电商运营、物流对账等工作中,经常需要统计快递“揽收到签收”的耗时——比如判断某快递公司是否符合“3天内送达”的服务承...

Excel函数公式教程(490个实例详解)

Excel函数公式教程(490个实例详解)管理层的财务人员为什么那么厉害?就是因为他们精通excel技能!财务人员在日常工作中,经常会用到Excel财务函数公式,比如财务报表分析、工资核算、库存管理等...

Excel(WPS表格)Tocol函数应用技巧案例解读,建议收藏备用!

工作中,经常需要从多个单元格区域中提取唯一值,如体育赛事报名信息中提取唯一的参赛者信息等,此时如果复制粘贴然后去重,效率就会很低。如果能合理利用Tocol函数,将会极大地提高工作效率。一、功能及语法结...

Excel中的SCAN函数公式,把计算过程理清,你就会了

Excel新版本里面,除了出现非常好用的xlookup,Filter公式之外,还更新一批自定义函数,可以像写代码一样写公式其中SCAN函数公式,也非常强大,它是一个循环函数,今天来了解这个函数公式的计...

Excel(WPS表格)中多列去重就用Tocol+Unique组合函数,简单高效

在数据的分析和处理中,“去重”一直是绕不开的话题,如果单列去重,可以使用Unique函数完成,如果多列去重,如下图:从数据信息中可以看到,每位参赛者参加了多项运动,如果想知道去重后的参赛者有多少人,该...

Excel(WPS表格)函数Groupby,聚合统计,快速提高效率!

在前期的内容中,我们讲了很多的统计函数,如Sum系列、Average系列、Count系列、Rank系列等等……但如果用一个函数实现类似数据透视表的功能,就必须用Groupby函数,按指定字段进行聚合汇...

Excel新版本,IFS函数公式,太强大了!

我们举一个工作实例,现在需要计算业务员的奖励数据,右边是公司的奖励标准:在新版本的函数公式出来之前,我们需要使用IF函数公式来解决1、IF函数公式IF函数公式由三个参数组成,IF(判断条件,对的时候返...

Excel不用函数公式数据透视表,1秒完成多列项目汇总统计

如何将这里的多组数据进行汇总统计?每组数据当中一列是不同菜品,另一列就是该菜品的销售数量。如何进行汇总统计得到所有的菜品销售数量的求和、技术、平均、最大、最小值等数据?不用函数公式和数据透视表,一秒就...