大数据开发工程师 面经汇总
面试公司:深圳虾皮信息科技有限公司 面试岗位:大数据开发 一面(视频面试) 面试官直接说一面主要问基础,让自我介绍后就随机问问题。主要是各种大数据组件(HDFS、Yarn、Flink、Hbase、Kafka、Elasticsearch、Flume等)的各种读写流程,特性、原理,都是一些常见的面试题,涉及面算是比较广的。 一面一问一答加起来有好几十个问题,下面是我没怎么回答清楚的: 1.Flink 支持 JobMaster 的 HA 吗?原理是怎样的? 3.Flink同一个作业重复启动多次,Checkpoint相互之间会有什么影响? 4.Hdfs NameNode的功能?SecondNameNode 的功能? 5.HDFS 的写流程 和 ES的写流程有什么区别? 6.HBase的 Compaction 了解吗? 7.数据采集方面的工具了解哪些?Flume的原理?Sqoop原理?Logstash原理? 8.Kafka Consumer Group选主流程? 9、最后一道手写easy编程题:找出两个单链表的第一个公共节点。 PS:面试完会收到一封面试体验的调查问卷,不要慌,正常流程,不是挂了。 二面(视频面试) 二面主要问项目和业务,所以要对自己的项目非常熟悉。 面试官一上来就让讲一下项目,整体架构怎么样的,讲一下自己负责的最有挑战性的地方,有什么亮点。 之后就是让讲清楚业务细节,面临哪些问题,用什么方案解决的,为什么要这么做,为什么要选这个不要选那个。 等他理解你的业务之后,会出题:要实现某个功能,设计一下方案。 HR面(电话) 问各种信息,学校、公司经历、项目经历、为什么离职、目前薪资、期望薪资等常规问题。 之后会要一年的银行流水,提交后他们会把你的信息提交给他们的薪酬部门去定薪,一般需要3天或1周,Offer,没有argue环节。
面试公司:新致软件面试岗位:大数据开发工程师 基本信息 北京市海淀区上地十街1号院5号楼7层720-1,上市外包公司,公司人数4000多。问的较多的是项目实战的内容,仅供参考 面经内容 1.自我介绍 2.看了工作年限,问我这几年一共做过多少个项目,每个项目都负责哪一块 3.按照我的简历项目一个一个的看,一个一个的问。先让介绍,然后问其中负责的部分,然后问用什么框架,问工具的使用和自己他们之间的区别kettle,smartbi,informatic(我不会),flume都问了。然后我说有的我自学的,还会问用了多久学会的 5.数据库的调优,oracle调优,hive调优 6.数据量过大怎么办 7.问了java会不会 8.工作中遇到的最难的问题以及解决办法 面经总结 差不多就这样。。感觉他们很注重语句调优和遇到问题是否有快速的解决办法还有对业务的梳理能力。
面试公司:北京国双科技有限公司面试岗位:大数据开发工程师 基本信息:北京市海淀区北四环中路229号海泰大厦4层南401号,公司大概不到200人。问的较多的是基础内容,比如说java的数组和集合区别,scala的基本用法,hive和hbase的基础语法还有就是一些项目实战用法,可能更多的是偏向于 java 吧大概整理了一下,仅供参考。 面经内容:1.java中数组和Arraylist的区别 2.手写冒泡排序 3.scala手写wordcount 4.Scala中模式匹配和java中switch case的区别 5.scala中的数组和集合 6.scala元组 7.hive处理数据倾斜 8.hbase组件 9.SQL查询出所有课程都及格的人员的姓名 10.为什么使用kettle。 11.项目日增多大,表中有多少条数据 面经总结 在自我介绍的时候已经和面试官说过很久没做过java开发了,但是在聊过项目之后,一直再问java相关的知识,包括集合,数组。但是自己这块在复习的时候忽略了。
面试公司:北京启云数联科技有限公司面试岗位:大数据开发工程师 基本信息 北京市海淀区知春路113号0706号,公司大概不到100人。问的较多的是数据库相关的技术还有就是mr和hive已经hbase的内容,大概整理了一下,仅供参考 面经内容 1.简单的自我介绍。 2.知道mapreduce么,阐述一些什么是mapreduce ,以及原理。 3.你所知道的排序关键字有哪些。 4.sort by 和 oeder by 有什么区别。 5.hive中都有那些表。 6.了解spark吗? 7.distinct 和 group by 那个去重好。 8.查看当前目录-删除命令-怎么查看后几行数据。 9.hbase 和 hive 的区别。 10.说一下项目的个人负责模块。 11.思维逻辑题 (真是不了解,就让她给我讲了下) 有一栋100层高的大楼,给你两个完全相同的玻璃球。 假设从某一层开始,丢下玻璃球会摔碎。那么怎么利用手中的两个球, 用什么最优策略知道这个临界的层是第几层?? 面经总结 问的最多的就是一些理论题,可以多看看一些面试宝典,多在趣IT刷题。
面试公司:东方网力科技股份有限公司面试岗位:大数据开发工程师基本信息北京市海淀区学院路35号世宁大厦4层408室,上市公司,公司大概1000多人。问的较多的是Hadoop大数据分析、spark、kafka、还有就是一些底层,大概整理了一下,仅供参考。 面经内容 1.首先简单的自己介绍 2.对哪些大数据组件了解 3.HDFS里面,如果两个namenode都变成startby模式,怎么处理? 4.hive里面的分区和分桶 5.hive的内部表和外部表的区别 6.spark运行模式大概有几种,每种模式的区别 7.在yarn上运行,运行模式是什么 8.spark里面的job,stage和task区别 9.介绍一下spark运行流程 10.平时在开发spark的时候遇到什么问题(比如内存溢出) 11.spark中堆内存和对外内存在什么地方用到?我们为什么要调整堆内存和堆外内存的使用? 12.有两个数比较大,没有办法用常规的数据结构存储起来,把它放在string里面,位数比较多,可能有成千上万位, 做一个加法器,把这两个数加起来,入参数两个string类型的,出参是string类型,如果让你设计的话,怎么设计? 13.有一个数组,数组里面可能是字符串,里面的数有些会重复出现,有些只会出现一次,给你一个好的算法,来设计一下,怎么能找到只出现一次的这种情况。 面经总结 主要还是对自己知识点的理解,因为问的最多的就是一些知识点理论题。
面试公司:奇虎360面试岗位:大数据开发工程师一面 43min:·自我介绍 ·问了两个项目, 问了下项目中如何实现的Mysql和hdfs数据同步 ·讲一下对Hadoop的了解 ·讲了下HDFS原理、MapReduce的过程,想讲HDFS检查点机制没让讲。 ·Spark和MapReduce的区别?是不是用了Spark就不需要MapReduce了?(答得不太好) ·问对Hive的了解? 自己提了下数据倾斜 ·如果有海量数据,如何求Top10?(说错了一块,后来又改过来了) ·Linux平常用的指令?说了 ls 、ll 、df 、nohup 、ps 、kill 等等 ·Hadoop用到的指令 Hadoop fs -ls 、 mkdir、 hdfs fsck(查看块信息) ·用什么语言比较多? (我用的py比较多) Python常用的数据类型? list 和 tuple的区别? ·回答了下 不可变对象和可变对象 ·常用的python库(requests 、bs4 、keras 等等)如何安装包 ·算法题:数组去重 上台阶、动态规划和递归的区别 ·还有什么问题要问我吗?(问了下缺不缺hc、主要工作内容) 二面 23min 全程问项目,同时问了很多有没有看过Spark源码、ES源码、Flask源码(都没看过)。 各个项目问的比较深,算法模型等等。 HR面 30min ·可以实习多久 ·如何解决做项目和社团和日常生活的平衡问题 ·简单介绍下流计算的spark streaming storm flink的优缺点 ·未来发展等等 <
面试公司:腾讯面试岗位:后台开发(大数据方向)面试背景:腾讯是找了内推,后台开发,但是与大数据相关。面试都在腾讯会议,一面手撕代码是屏幕共享,二面手撕代码在腾讯文档。一面 ·自我介绍。 ·Spark和Hadoop的区别 ·MR流程、RDD流程 ·new malloc区别 epoll原理看过吗? 讲一下多态 ·写到算法题吧:二分查找,写一下旋转数组最小值(又是这道题。我说这道题之前做过,面试官没再让我写)。 二面 ·自我介绍、在家里?没开学? ·学过Hadoop,讲一下MR流程。说一下Partition分区的优化是怎么做的(Partition没答出来) ·MR会有数据倾斜,讲一下如何解决(说了一些方法,被要求说的更详细一些。比如为什么增加Reduce数量就可以提高效率,如何自定义分区,如何重新设计key) ·然后问的是Hadoop Streaming (没听说过,讲了下spark streaming) ·看简历上有个socket项目,问如何讲一下流程,问如何从socket中提取数据(时间太长,完全记不清了) ·写个算法题。 给一个树,每个节点的val都有取或不取两种状态。限定条件是,直接连接的节点不能同时取或者不取(比如父子节点) 想的是分成四次递归。问如何剪枝。没答出来 上面那个题没想法了。那咱们换个,给一个二叉树和两个节点 a ,b 找出二叉树的最近公共祖先。(剑指offer原题 最后一题) 平时大部分都是Py Java Scala开发,很少用C++,就很难受。还需要多学习啊。
面试公司:北京中北信科技发展有限公司面试岗位:大数据开发 公司情况:坐标北京东城区,公司大概有几百人。 面试背景: 因为疫情的原因,所以是远程面试,面试了两次,第一次是电话面试,第二次是视频面试。问的较多的是项目细节、spark、kafka等。整理了一下,供大家参考吧! 电话一面 1、自我介绍 2、职业发展方向 3、挑选一个项目来讲,讲述其中一个开发点,开发流程,项目商用情况,项目数据反馈情况? 4、项目细节,数据落地,数据更新频率;(这个根据讲的项目和开发点提问的) 5、项目集群规模?Spark 集群版本?开发语言? 6、使用的资源调度器? 7、Spark shuffle? 8、spark-submit命令提交任务的流程(源码层面流程)? 9、spark-submit命令的参数? 10、Spark容错机制? 11、DAGScheduler和TaskDAGScheduler作用? 12、谁划分stage?谁划分Task? 13、Cluster和Client模式区别? 14、Kafka如何保证数据消费一次?重复消费问题? 15、Spark的性能调优? 视频二面(采用腾讯会议的视频面试,看不到面试官) 1、自我介绍 2、职业发展方向 3、描述一下开发经历 4、挑选一个项目讲,以技术流程描述项目实现。(切记不要过多描述项目需求和业务,重点描述项目技术实现,用技术说话。) 5、测试环境的节点?预生产环境的节点?生产环境的节点? 6、什么是伪分布式?怎么搭建伪分布式? 面经总结 第一次电话面试有些部分项目细节回答的不是太清楚,到了二面好多了。刚开始面试的时候技术要求挺高的。对于一些技术细节问的挺详细的,二面的
面试公司:招银网络科技有限公司面试岗位:大数据开发工程师一面(电话面试)当时刚找到一个教室学习不久,就接到了深圳的电话,心想应该是面试官的电话,赶忙跑出去听了电话;面试官应该不是搞大数据了,并没有问我大数据有关的问题,不过电话面应该都只是基础面吧 有关问题如下: 1.介绍项目:面试官问了这个项目他感兴趣的点,不过并没有深挖 2.JAVA基本类型:还会问到各个类型的储存大小,还有装箱拆箱相关问题 3.JAVA集合:又是java集合全家桶,感觉是面试必问的 4.二分查找:用自己的话描述一下二分查找的过程 5.数据库存储引擎:介绍一下数据库的存储引擎、隔离级别、事务等相关知识 6.数据库锁:数据库有关的锁,各种行级锁表级锁;说说悲观锁和乐观锁两种思想 7.数据库连接:数据库连接的方式,左连接右连接内连接 8.反射:java反射相关知识 感觉电话面反而让人更加紧张,想起了上一次美团的电话面也是很紧张,竟然好一段时间头脑空白,所以这次电话面还是表现得不好,但是没想到过了 二面(现场一面)现场一面我是从广州去深圳的公司里面面的,当时是提前一天从广州过去,第二天上午一大早就去了,去了等了半个小时便进去面了 相关问题如下: 1.arraylist和linkedlist 2.arraylist扩容,为什么这么扩容 3.hashmap和hashtable和currentHashMap 4.hashmap的哈希取模 5.jdk1.8的hashmap的改进 6.红黑树 7.二叉查找树 8.平衡树 9.b+树 10.
面试公司:腾讯TEG面试岗位:大数据开发一面很多原理和计算机基础 c++ 1.反转链表和两个字符串最大公共子串 2.osi的七层和什么的四层 3.tcp和udp 三次握手 4.进程和线程区别 5.hadoop分布,zookeeper选举 6.hive和hbase区别,hbase都是mapreduce吗 7.hbase底层 8.mapreduce,shfful,经常查询用什么 9.hbase原理 二面 1.打印二叉树每层最右边的节点 层序遍历 2.synchronized 这个用在类上,用在方法上和变量上有什么区别 3.flume用过没有,kafka原理 4.namenode宕机 5.大数据经常查询用hbase还是hive 6.shell会用吗,awk会用吗 7.乐观锁和悲观锁、自旋锁、互斥同步、读写锁
验证码登录>
验证码登录>
自动登录 | 忘记密码?
密码登录>
自动登录