点击上方 "大数据肌肉猿"关注, 星标一起成长
后台回复【加群】,进入高质量学习交流群
2021年大数据肌肉猿公众号奖励制度
之后会持续整理一些可下载的学习资料分享给大家,大家记得将公众号设置星标哦!更多资料获取、学习交流后台回复【加群】
楼主5月初入职滴滴实习,7月底得知今年滴滴不好转正,遂离职复习巩固 基础+项目 备战秋招。因为准备的时间比较早,有幸赶上了各大厂的提前批面试,面试岗位是大数据开发工程师,目前已入职腾讯。我本科是水利水电专业,研究生转入软件工程,编程语言用Java,做过一个大数据开发的项目,以Kafka作为数据总线,所以Kafka的问题会涉及的比较多,实习期间主要是写hive sql,所以会有比较难的sql题,大家可以结合自己的项目和实习经历进行针对性复习。下面的面经只涉及技术,hr面就不写了,因为不同公司会有重复的问题,重复的问题也不写了。个人觉得不错的大数据学习网站:http://dblab.xmu.edu.cn/blog/2、String、StringBuffer、StringBuilder的区别,怎么理解String不变性3、==和equals的区别,如果重写了equals()不重写hashCode()会发生什么4、volatile怎么保证可见性,synchronized和lock的区别,synchronized的底层实现5、sleep和wait的区别,sleep会不会释放锁,notify和notifyAll的区别8、Cookie和Session的区别,怎么防止Cookie欺骗9、从用户在浏览器输入域名,到浏览器显示出页面的过程1、看你写过UDF,谈谈对UDF的理解,写UDF的目的,代码怎么写的2、改造hive表后怎么进行数据一致性校验的,有没有自动化流程3、看你读过kafka源码,讲讲kafka broker的源码里面你最熟悉的类,以及这个类的主要方法,用的什么设计模式4、项目里面从数据采集到最终的数据可视化,每个环节都有可能丢数据,怎么判断数据有没有丢,如果丢了如何定位到在哪一个环节丢的5、项目里面为什么要用kafka stream做实时计算,而不是用spark或者flink,kafka sql和spark sql了解过吗6、项目里面用到了时序数据库opentsdb,为什么要用这个,有没有跟其它的时序数据库对比过1、看你写了实时计算的程序,你怎么保证计算的结果肯定是对的2、数据接入的时候,怎么往kafka topic里面发的,用的什么方式,起了几个线程,producer是线程安全的吗3、kafka集群有几台机器,怎么确定你们项目需要用几台机器,有评估过吗,吞吐量测过吗4、
spark streaming是怎么跟kafka交互的,具体代码怎么写的,程序执行流程是怎样的,这个过程中怎么确保数据不丢5、kafka监控是怎么做的,kafka中能彻底删除数据吗,怎么做的平时是怎么学习的,爱看哪些博客,怎么看待加班,有没有成为leader的潜力1、sql题:学生成绩表,把每科最高分前三名统计出来3、kafka如何保证高吞吐的,了不了解kafka零拷贝,具体怎么做的4、sql有几种join,map join了解过没3、写一下mysql binlog的数据格式,怎么进行数据清洗的去了北京美团公司里面试,一上午面完,第二天通知高分通过2、sql题:一张网页浏览信息表,有两列,一列是网页ip,一列是浏览网页的用户(比如a或者b、c、d直到z),求这些网页被a和b或者a和c或者b和c两两组合访问的次数4、设计学生成绩管理系统,符合第三范式要求,并绘出UML图7、spark streaming从kafka中读数据的两种方式9、Elasticsearch的索引,单field索引和多field的联合索引
10、linux查看某文件的大小,vim中怎么替换内容11、海量数据的Count问题(单机),如果把大文件hash成不同的小文件,此时小文件装不下某个key对应的数据,该怎么办12、智力题:8升水,有一个5L的杯子和3L的杯子,怎么得到4升水1、osi七层模型,三次握手和四次挥手,为什么两次握手不行2、kafka怎么保证高吞吐量, 项目中有测过吞吐量吗,相比于其它MQ,为什么会选择kafka,kafka怎么保证exactly once语义4、hive sql怎么转换成底层的MapReduce程序,以及shuffle的过程5、算法题:被围绕的区域,leetcode第130题原题6、智力题:一头母牛每年生一头小母牛,每头小母牛从第四年开始,每年也会生一头小母牛,写个公式求第n年会有多少头牛1、java和python的区别,对面向对象的理解,和面向过程相比有什么区别5、volatile和synchronized的区别8、设计题:一个停车场有一些大车位和小车位,大车只能停大车位,小车既能停大车位又能停小车位,实现这种场景下的调度系统1、算法题:输入一个字符串,输出该字符串中字符的所有排列5、快排的时间复杂度和空间复杂度,最优情况和最差情况分别是多少,是稳定排序吗,快排为什么快2、两道算法题:路径问题,leetcode上63题和64题原题4、智力题:一张圆桌子,我和面试官轮流往桌子上放硬币(随便放),直到桌子放不下为止,最后一个放硬币的人赢,如果我先放,怎么保证我肯定赢面试官是做安卓的,瞧不起大数据,觉得大数据很虚,我跟他bb了一堆。然后问我有没有女朋友,我说以前有,现在分了;问我什么时候谈的,什么时候分的,我说本科谈的,毕业分了;问我为什么要分,此处省略一万字......问我现在想没想过再谈,我说毕竟转专业过来的,想趁在校期间利用好短暂的时光提升自己的技术水平(其实因为找不到);然后面试官说以后工作了就不好找咯,我说您说的有道理............3、spark怎么划分stage,宽窄依赖,各包括哪些***作4、zookeeper怎么保证原子性,怎么实现分布式锁1、sql题:找出单科成绩高于该科平均成绩的同学名单(无论该学生有多少科,只要有一科满足即可)2、sql题:找出单科成绩高于该科平均成绩的同学名单(该学生所有科都必须满足)4、算法题:使用最小花费爬楼梯,leetcode746题原题3、算法题:给一个整数数组和一个目标值,找出数组中和为目标值的两个数阿里的面试还是比较重视基础的,应该是bat里面问基础问的最多的1、HashMap和HashTable的区别,HashMap怎么解决hash冲突,jdk1.8后对HashMap的改进2、讲讲ConcurrentHashMap,
ConcurrentHashMap怎么保证线程安全,HashTable怎么保证线程安全4、ArrayList和LinkedList的区别,是不是线程安全的5、讲讲设计模式,最常用哪种设计模式,单例模式的实现方式6、进程和线程,Java实现多线程的方式,什么是线程安全,怎么保证多线程线程安全9、JVM垃圾处理方法,对象什么时候进入老年代,什么时候进行FullGC10、Java堆溢出问题怎么处理,内存泄漏和内存溢出的区别11、智力题:50个红球和50个黑球往两个桶里放,然后自己去抽,怎么样才能使抽到红球的概率最高2、介绍一下索引,索引设置的规则,聚簇索引和非聚簇索引的区别,索引的最左前缀原则3、用过redis吗,redis支持哪些数据类型,redis与mysql的区别5、jvm调优做过没,-Xms和-Xmx分别指什么6、算法题:输入两个字符串,输出它们合并排序后的结果5、设计题:一个市有9个消防站,现在要新增3个消防站,这3个消防站应该放在哪里·················END·················
你好,我是峰哥,一个骚气的肌肉男。独自穷游过15个国家,60座城市,也是国家级健身教练。
二本车辆工程转型大数据开发,拿过66个大数据offer,现任某知名外企高级数据工程师。
毕业一年,靠自己在上海买房,点此看我2020年总结。为人亲和,欢迎添加我的微信 Fawn0504 进行交流或围观朋友圈。