美团数据开发面试
一面侧重于java基础,数仓理论,大数据组件基础和结合项目的一些常见的优化二面侧重于深挖项目,针对项目细节去问一些数据相关问题,并引申出一些具体的优化问题,数仓模型问题三面侧重于对整体架构的理解和技术广度的发散问题
一面:
例行拷打项目,略
1.说说你对数据建模的理解?
网友提问:数据建模听起来好高大尚,但很抽象,该怎么理解 ?| 什么是数据建模?
数仓高级建模:如何应对需求频繁变动及数据结构不稳定的业务挑战?| Anchor 建模技术
2.数仓如何分层和分层的好处?
经典问题争议:数仓分层建设中,DWD、DWS、ADS哪一层最难?
3.数仓分层和指标分类之间有什么关系?
4.什么是总线矩阵?
5.什么样的数仓是一个好数仓?
小杨哥vs滴滴数仓负责人: 如何证明你建的模型就比别人的好?
6.什么方法可以落实上面说的数仓?
小杨哥vs滴滴数仓负责人: 如何证明你建的模型就比别人的好?
7.缓慢变化维,除了拉链表还有哪些方式?
8.什么情况下可以使用map join
9.如何解决大表join大表的数据倾斜
10.Java垃圾回收机制
11.SQL题:波峰波谷,连续三天
12.算法题:字符串最后一个字符长度
13.实习中最大成长点
二面
日常拷打项目,略
1.算法题:链表节点k个一组翻转
2.算法题: 二 叉 树 遍历
3.SQL题:找 出 最 长 连 续 子 序 (row_number)
4.mapreduce运行过程 spark.shuffle.partitions 的调参 Spark小文件参数
5.怎么确定reduce的数量
6.bucket join优化的原理
7.怎么快速根据spark stage找到对应的代码 主题域划分
8.事实表怎么建模?
9.数仓建模过程
10.事务的特性
11.进程和线程区别
12.mysql索引
13.索引的类型
14.索引的前缀原则
15.联合索引a b e 以下哪些可以命中索引where a= xx and c=xx Where b = xx and c= xx
三面:
面试内容:再日常先拷打项目
1.有没有用过多维分析引擎,在哪里使用了doris, doris作用是什么,讲一下对doris了解多少
2.学大数据相关的知识在哪学的,通过什么途径;遇到过什么问题
3.讲一下上面问题怎么解决的,调节参数是哪些;为什么这么调参;讲一下参数中增加内存为什么有用;reduce个数 是越大越好吗;调参后任务运行时长优化到多少
4.对数据治理的理解