阿里蚂蚁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点,其实问到后面心态有点崩了。辛苦面试老师了,而且之前好多地方现在都已经记的不太清楚了,正好回过头去复习下,最后连反问都没有,估计是凉了。好好准备后面的面试吧,加油!!!!