阿里蚂蚁Java开发一面(大数据方向)
作者:Gray-sheep
链接:https://www.nowcoder.com/discuss/711895?source_id=discuss_experience_nctrack&channel=-1
来源:牛客网
1、自我介绍
2、讲下印象深刻的项目
3、在项目中主要负责那些部分、遇到最大的困难是什么
4、MR的整个过程
5、发生了数据倾斜怎么处理
6、map join 为什么能解决数据倾斜
7、两个表都很大怎么去解决数据倾斜
8、Hadoop和spark的区别是什么
9、spark计算的灵活性体现在哪里
10、宽依赖和窄依赖的区别是什么
11、哪些算子是窄依赖、宽依赖
12、Object类都有哪些方法
13、hashcode函数的作用是什么
14、哈希冲撞有哪些解决办法
15、Java中int的取值范围是多少?有多少位?为什么是2*31-1?为什么是31次方不是32次方?
16、计算机中源码、反码、补码
17、Java线程池中的构造参数有那几个
18、poolsize为2 maxpoolsize为4 ,放入3个线程会怎么样
19、Java中一个对象什么时候会进入到老年代
20、介绍下MinorGC
21、新生代的回收算法是什么
22、标记复制算法的具体过程,另一半内存区域的名字
23、新生代分为那几个区域?对象在这三个部分中是怎么流转的?
24、对象年龄计算的方法
25、在老年代中怎么判断对象是否能回收
25、什么对象会作为GC root节点
26、TCP中滑动窗口的作用是什么?能详细展开具体的过程
27、HTTPS的原理是什么?具体的访问过程是什么?
28、数据库的隔离级别有哪些?
29、MySQL怎么实现可重复读?
30、MySQL中一个text类型最多可以存多少个汉字?有多少个字节?
31、除了UTF-8还有什么编码格式
32、数据库索引有什么作用?
33、为什么使用B+树作为索引结构?
34、不使用B+树,可以用那个数据类型实现一个索引结构
35、了解负载均衡算法么?讲讲加权轮询法?
36、你在那些场景下使用了布隆过滤器?
37、布隆过滤器的基本原理是什么?局限性是什么?使用什么方法可以增加删除的功能?
38、代码题:
设计一张数据表,以及对应的SQL DDL语句,可以实现文件DDL操作(查询、删除、修改、移动)
JAVA实现方法,涉及到SQL查询用方法名代替,实现查询一个文件的整个路径并输出(优化代码)
基本上每个问题都会问我到不会为止,问的问题广度和深度都有了,第一次面试被问了快两个小时,从7点到快9点,其实问到后面心态有点崩了。辛苦面试老师了,而且之前好多地方现在都已经记的不太清楚了,正好回过头去复习下,最后连反问都没有,估计是凉了。好好准备后面的面试吧,加油!!!!