首页 > 一点资讯-大数据开发一面
头像
希望offer满满
编辑于 2020-07-21 18:32
+ 关注

一点资讯-大数据开发一面

项目

实习项目均B端产品,与他们场景不太符合,C端居多,问我想不想继续面

面试官介绍

他们数据开发三种场景,UDW数仓,基础平台研发(hive,spark,hadoop),还有个啥忘了(不好意思。。),我说我比较偏向于想做基础平台研发这些,下面开始表演

Java

Q:JVM的栈里面都存了什么
A:本地方发栈&虚拟机栈,局部变量表,操作数栈,动态链接,方法出口,本地方法栈为native方法服务
Q:新生代,老年代
A:这个感觉没答好,Eden区,S0,S1,永久代/meta space 1.7 1.8的区别于使用,应该提一下gc的,忘记了
Q:hashmap hashtable了解一下
A:大家都会,不写了

Yarn

Q:了解yarn吗,大概说一下
A:Resource Manager, Application Master, NodeManager,以及各自都是干啥的,这方面了解确实比较少

MR

Q:讲一下MR的流程,结合word count
A:map shuffle reduce,map直接output,shuffle排序,reduce聚合
Q:讲一下shuffle
A:缓冲 排序 压缩 io 拷贝 归并排序
Q:reduce 里的shuffle 讲一下
A:不会😢

HDFS

Q:nameNode啥作用
A:还好上一场面试问到了,看了一下,文件系统的文件目录结构和元数据信息,文件与数据块列表的对应关系

Hadoop

Q:给你两个表,如何用MR实现两个表的笛卡尔乘积
A:当时脑子秀逗了,没想出来,面试官说要重写format函数,还问了从hdfs拉倒map里面数据的函数走向是啥,我是真的不会,之前用的都是hadoop streaming python写的,这题凉凉

手写MR

写word count,用python写的,好久没写python了
图片说明

Hive

Q:写个sql,一个表,分区是date,一个键是id,想知道第一天和第二天到这个地方相同的人/第一天的总人数,
A:面试官的提示下也妹做出来,到最后怎么把null数据和非null数据进行count聚合的地方卡住了,后面回去想了一下,写的感觉有点笨,希望有个大佬来帮帮我优化一下

select count(id)/count(*)
from 
(
    select 

    case when date_1_id != null then 1 as id 
             when date_1_id = null then 0 as null_id 
        end
    from 
    (
        select id as date_1_id
        from table
        where date = '${hivevar:last_day}'
    )T1
outter join

    (select id as date_2_id
    from table
    where date = '${hivevar:today}'
    )T2
)T3

算法

Q:快排了解一下
A:ez,吹了一通,讲了一下优化

Q:最短路径算法了解吗
A:弗洛伊德,什么地杰斯卡拉,具体记不住了

手写代码

Q:手写最短路径算法还是快排算法
A:肯定是快排啊,最后写了快排

反问

Q:笛卡尔积那个应该怎么做,想听听思路
A:重写inputformat方法balabala
总体面试的感觉很好,可能是最近java面多了,换了个数据开发感觉不一样了,面试官小哥不错,全程引导,很专业,不会挑你没用过的问

更多模拟面试

全部评论

(4) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐