干货分享,新浪大数据岗位面试题汇总
moboyou 2025-05-04 15:20 7 浏览
新浪面试题
学长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的底层源码吧
相关推荐
- 声学EI要完稿?十步速写法
-
【推荐会议】国际声学与振动会议(ICAV)会议号:CFP23112A截稿时间:2025年4月20日召开时间/地点:2025年8月15-17日·新加坡论文集上线:会后3个月提交EiComp...
- 结构力学!EI会议图表规范秘籍
-
推荐会议:国际结构与材料工程进展大会(ISME2026)会议编号:EI#73521截稿时间:2026年3月10日召开时间/地点:2026年8月15-17日·德国柏林论文集上线:会后4...
- 傅里叶级数物理意义的直观理解:利用傅里叶级数逼近方波信号
-
上篇文章将向大家介绍频谱的概念,对傅里叶级数、傅里叶积分、傅里叶变换进行了数学的推导,并解释了它们各自的物理意义。推导过程见我的上一篇文章:频谱分析——频谱概念(傅里叶变换、级数、积分及物理意义)如下...
- 通过对航空发动机整机振动进行分析,有何控制方法?
-
前言针对航空发动机整机振动问题的复杂性和多样性,以整机振动的振源分析为出发点,总结国内外关于转子系统故障、气流激振、轴承故障、齿轮故障和结构局部共振等引起的整机振动的研究情况。结合航空发动机整机结构动...
- MATLIB中使用PCA
-
主成分分析PCA(PrincipalComponentsAnalysis),奇异值分解SVD(Singularvaluedecomposition)是两种常用的降维方法降维致力于解决三类问题:降维...
- 数据处理|软件:让科研更简单2
-
书接上回,继续介绍免费的数据处理软件。eGPS一款热图绘制专用软件,热图就是用颜色代表数字,让数据呈现更直观,对比更明显。优点:小巧方便,基本功能齐全,包括数据转换、聚类分析、颜色调整等等缺点:常见的...
- 电力系统常用的通讯协议及其在Speedgoat系统中的实现
-
在电力系统中,IEC61850协议、DNP3协议、ModbusTCP广泛应用于远程终端设备(RTU)、智能电子设备(IED)交互以及监控和数据采集(SCADA)系统。一、IEC61850协议IE...
- 电子工程师的常用仿真软件
-
不知道从事电子行业的工程师,有没有使用模拟仿真工具,仿真软件网上又有很多,初学者,可能只知道Multisim和Proteus。一般Multisim适合在学习模拟电路和电路分析原理课程时使用,便于理解电...
- 技术论文|异结构混沌系统的组合同步控制及电路实现
-
欢迎引用[1]李贤丽,马赛,樊争先,王壮,马文峥,于婷婷.异结构混沌系统的组合同步控制及电路实现[J].自动化与仪器仪表,2022,No.276(10):80-84.DOI:10.14016/j.cn...
- 现场︱某110KV主变事故过程仿真分析
-
三峡电力职业学院、河南省电力公司洛阳供电公司的研究人员李莉、任幼逢、徐金雄、王磊,在2016年第6期《电气技术》杂志上撰文,针对某110KV变电站主变差动保护跳闸事故,结合事故相关检测数据,通过MAT...
- 光伏发电系统篇:单级式并网系统实时仿真
-
在全球积极推动清洁能源转型的大背景下,光伏发电作为重要的可再生能源利用方式,得到了广泛关注和迅猛发展。目前常用的光伏并网及光伏电站主要拓扑结构有单级式和双级式。相较于传统的多级式系统,单级式光伏发电并...
- 光伏发电系统篇:三电平并网逆变器实时仿真
-
一、三电平并网逆变器在能源转型加速的当下,分布式能源接入电网需求大增。三电平并网逆变器凭借低谐波、高功率密度等优势,有效提升电能转换效率,于新能源并网发电中担当关键角色。常见的三电平电路拓扑结构包括二...
- 自制3.5KW大功率逆变器,很简单,看过这个电路原理就懂了
-
前言拿下8000元奖金的项目,是什么水平?本项目经过联合湖南科技大学光伏逆变以及电力电子研究生团队共同探讨方案。项目成本:1200元,获得奖金:8000元!参加赛事:立创开源硬件平台_星火计划·外包赛...
- 圈内分享:电容式加速度计接口电路非线性建模与仿真设计
-
摘要:非线性是Sigma-Delta(ΣΔ)加速度计系统的关键指标之一。基于一个五阶ΣΔ加速度计结构,分析了其主要的非线性模块,在MATLAB中建立了整体结构的行为级模型,并利用根轨迹法进行了稳...
- 基于Matlab/Simulink建立一种Thevenin/RC电池模块仿真模型
-
本文以锂电池数学模型为基础,在Matlab/Simulink的仿真系统中,建立了一种Thevenin/RC电池模块仿真模型,通过实际工况试验,测试精度在允许误差范围内,为电池SOC/SOH研究提供了极...
- 一周热门
- 最近发表
- 标签列表
-
- curseforge官网网址 (16)
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle 数据导出导入 (16)
- oracle两个表 (20)
- oracle 数据库 使用 (12)
- 启动oracle的监听服务 (13)
- oracle 数据库 字符集 (20)
- powerdesigner oracle (13)
- oracle修改端口 (15)
- 左连接 oracle (15)
- oracle 标准版 (13)
- oracle 转义字符 (14)
- asp 连接 oracle (12)
- oracle安装补丁 (19)
- matlab三维图 (12)
- matlab归一化 (16)
- matlab求解方程 (13)
- matlab坐标轴刻度设置 (12)
- matlab脚本 (14)
- matlab多项式拟合 (13)
- matlab阶跃函数 (14)