liviolet level
获赞
17
粉丝
35
关注
2
看过 TA
166
华中师范大学
2026
大数据开发工程师
IP属地:湖北
暂未填写个人简介
私信
关注
- 飞书,开视频,面试官很友好,主要是让我在做整体流程的介绍,然后问了些常规八股- 第二个手撕在同一个小时的细节上没有完全撕出来,解决了90%,整体思路没问题- 3.6投递 3.20一面 3.24感谢信- 八股基本上都秒了,项目也讲清楚了,sql也都是秒的,也不懂为啥就挂了## 项目- 先那就挑一个你觉得做的最好的一个入仓的离线数仓的项目,具体讲一讲。从业务的背景,它的业务过程,你在其中做了什么内容,最后取得了什么成果这种思路展开讲一下。- 那你从业务的视角就是说是他比如说你的你的业务过程到底有哪些业务过程它有哪些数据,然后你怎么去做建模的,然后这种方式再细一下说一下。- 这个指标的话,其实你做了多少,做了哪些表,然后他的力度是什么?然后又有什么维度呢?- 在做这个指标的时候,你这整个的数据链路是啥?从离线到从是从线上到离线,然后再到你的指标,最后是大盘这种(大盘应该指的就是可视化)  - 我应该多讲一下数据通路中用到的数据同步工具- 你设计的DWD、DWS它的粒度是什么?都有哪些维度呢?- 你在做这个数仓其实是要类数仓的这样一个项目的话。那其实你觉得这里面最最难的点是在什么- 你现在的话其实更多的是接业务方需求,比如说业务方来一个需求做一个表,来个需求做一个表,那你的数据你的表就会越来越多越来越多。这跟是数仓的这种兼容和扩展影响不是很大吗?你这个是怎么考虑的?- 数据倾斜问题## 八股- 数仓建模的一般流程你知道吗?- 刚才提到你说总线矩阵,那总线矩阵的就是说横坐横轴跟纵轴都是什么?- ODS、DWD、DWS它的定位- ODS里面已经有了这个数据,为什么不直接从ODS里面去取还要再新建一个DWD呢?- Spark里面就是说它的一个优化的方法,你这边都用过哪些?- 小表join大表的话,是小表在前还是大表在前?- MR中MapTask个数和ReduceTask个数由什么决定?- Row number和rank的区别- avg函数他在算这种平均值的时候会忽略null吗?  - **`AVG` 函数的分母是有效数值的数量**## 手撕- SQL:学生成绩平均值问题和>60的问题,很简单- SQL:直播间同一天同一个小时内最大在线人数
MinJerous:有同学已经接了offer,不需要后续推进了。或者没hc了,还有就是很少,需要排序进三面(ld)
查看20道真题和解析
0 点赞 评论 收藏
分享
- 腾讯会议,开摄像头- 手撕的sql是面试官当场搜出来问的,有点坑,没撕出来## 项目- 简单介绍一下你的项目- 你这个数据做好以后,他就是需求方是怎么用到的?- 这个数据你存在这个你这是存在hive里吗?- 介绍整个项目的流程- 介绍项目的数据域和业务的总线矩阵- 我有做过数据治理吗- 有过hive性能优化的经验吗- 你们是用的是什么建模?- 维度建模中那个缓慢维度变化为都有哪几种应对方式?- 我的拉链表是怎么查看历史数据的## 八股- yarn的基础架构和基本角色  - 分享了一个spark任务提交的过程- 分别讲讲yarn的资源调度策略  - 我们用的什么资源调度器- 用的开源Yarn还是CDH yarn## 手撕```sql有 msg_time,from,to, msg等字段,计算聊天两轮(用户消息一来一回表示一轮)以上的用户。msg_time               from    to2021-11-24 21:23:00    1    22021-11-24 21:23:01    2    12021-11-24 21:23:02    1    22021-11-24 21:23:03    2    12021-11-24 21:23:04    2    12021-11-24 21:23:01    3    12021-11-24 21:23:02    1    32021-11-24 21:23:03    3    12021-11-24 21:23:04    1      3```
查看16道真题和解析
0 点赞 评论 收藏
分享
- 大数据平台研发岗位- 如流软件面试,开摄像头,在如流上手撕代码- 面试官人很好,经常鼓励人,也会及时给出正确的思路- 可惜职责还是有点不匹配,这个部门主要用java和go做平台的开发,类似DolphinScheduler的平台开发## 八股- 对DolphinScheduler的底层代码和架构有没有了解- 你在Spark你在用的过程中,有时候会碰像那种性能不好或者数据倾斜的场景。这种情况下你一般会怎么去做优化?可以就结合你具体遇到的问题,可以来来详细讲一下,就是或者hive遇到的都可以。- 你在这过程中,就你项目中接触了这么多个组件,有没有自己去搭过一些集群和组件相关的呢?  - 搭建过程中有没有碰到过,比如什么问题,比如HDFS不可以用,或者是Yarn出问题,这种问题有没有碰到过?- 你对于Hadoop他这边是如何实现这种高可用有了解吗?  - Zookeeper是作为分布式锁存在的- HA高可用中多个NN数据是一样的,他们是怎么保证数据相同的  - HA高可用中还有什么Node,通过日志的形式保证多个NN的数据一致- 主要开发环境是linux还是windows- 对linux这边有一些基本的了解吗?- 比如我linux有一台有一个linux它有一就是linux他你通过你那个发现他的内存或者CPU占用特别高,它中间可能是某一个进程或者某一个服务占用了大量资源。你这种情况下,你如果是你的话,你怎么去排查?- 比如我有一个任务,他你比如说他发现他的日志一直在写,就是一直在打那个没有空间了,就没有磁盘空间了。这种情况下你怎么去查一下是哪些地方磁盘不足了,应该怎么处理?- java中equal和==的区别  - 自己写过自定义类重写equals方法吗- java类加载的这块你了解过吗?  - 讲了双亲委派机制  - 为什么要实现双亲委派机制这个操作?- java反射了解吗- java多线程代码写得多吗  - java线程有几种状态  - java中如何写代码多线程访问共享资源## 手撕- 手撕LRU类,要求实现get和put方法,并且规定一个最大容量,如果put时达到最大容量则替换掉存在最久的元素  - 讲思路,用的事务id,很快实现了- 手撕java多线程代码,被我婉拒,实在不怎么记得了
查看20道真题和解析
0 点赞 评论 收藏
分享
一面:- 飞书,没开摄像头## 项目- 重点了解一下这个离线数仓项目,你可以展开说一下吗?  - 背景,意义,人员组成,整个数据流动过程,我的职责- 你这边主要做的工作内容可以展开讲讲一下吗?  - 我这边主要的工作内容就是针对这个xx主题的两个指标进行拆解和计算。- 它是怎么计算的,可以说明一下吗?  - 我理解其实这两个指标应该都还是有一个**时间维度**  - 你们时间维度又具体是怎么设计的?是天还是周还是月,各种还是各种都有。- 那你这边再具体做了一些数据开发的工作,你可以说一下吗?就比如说你做了哪些表,以及是什么来支撑这个指标的计算的。  - **DWS表的粒度到底是用户粒度还是用户登录行为粒度?**- 就是你自己写Spark或者你自己研究Spark这里面,比如说你有没有遇到过一些比较难的问题,以及是怎么解决。  - 数据倾斜问题  - **那你就这个优化前后它的一个对比的指标是什么样。那它运行速度有变化吗?**场景sql题:- 假设我有一兆的一张表,那学生的成绩表,他有学生ID课程ID以及分数。然后我想计算每一门课程分数前三的学生,把这样的一个信息给拿出来。怎么做呢?  - rank() over(partition by c_id order by score)---二面:- 飞书,开摄像头## 项目- 介绍项目场景、全流程、个人职责- 最终产生的业务价值是什么呢?- 数据出来之后,会你的使用方是谁呢?就是会谁来用这份数据来做什么事- 实时这边有接触吗?  - flink的基本的原理有看过吗?就比如说为什么flink它它适合做什么样的事情,它能解决什么问题?  - 他这里背后的整个技术链会有哪些呢?就是比如说实时数据处理里面- Spark这个task stage和job他们是什么关系?  - 我们可以调整它的task的个数吗?- SparkSQL写得多吗- HiveSQL和SparkSQL逻辑上有什么不一样的?- 成长的规划,你大概是怎么设想的?技术上的- 像那个其实因为现在你接触实时的比较少,那后面在业务上如果有有的有这个诉求对吧?然后你准备怎么弥补这些短板?  - 比如说我们既有工作任务,又要学习你这个你觉得自己的抗压的能力够吗?
查看22道真题和解析
0 点赞 评论 收藏
分享
查看53道真题和解析
0 点赞 评论 收藏
分享
- 不问八股,不问项目,纯场景题考核,**以下问题均在电商下单的业务背景下**- 知道ER模型和维度模型吗  - 不要介绍概念,接下来以电商场景中的下单过程为背景,分别用两种模型诠释一下这个业务过程- ER模型中有这个下单过程有哪些实体哪些关系  - 商品和消费者的关系是多对多的吗- 维度模型中会有哪些维度表和哪些事实表- 线下的pos系统的数据和我们建表数据格式不一致,如何处理  - 数据清洗和数据格式转换- 业务场景:需要找到国庆期间的无效订单数量  - 无效订单:已下单未发货,已下单发货超过3天  - 订单表:订单id 时间  - 发货表:订单id 发货id 时间- 如果要连接这两个表,用什么join,为什么  - left,因为有订单信息不一定有发货信息,要保证订单信息的完整- 一个需求实现的全流程是什么样的  - 需求->分析其逻辑,划分出集合->对数据进行建模->清洗数据->写SQL->优化SQL- 这个全流程中,你认为ai可以协助数据开发工程师做哪一些工作  - 全部都可以协助,但是需要人工比对和把关- 那么如果AI可以做到整个全流程,数据开发工程师的价值又在哪里  - 目前已经有ai可以实现业务需求的全流程
查看22道真题和解析
0 点赞 评论 收藏
分享
- 腾讯会议,开摄像头- 面试官很友好,算法题我其实想了两分钟就放弃,他让我再想想,然后动笔就想出来了- 问的问题很广,很多是结合简历上的去延申问的,数开知识反而问的不多## 简历- 实验室经历## 项目- maxwell在项目里是怎么运行的?- 项目里如果出现数据倾斜,是怎么发现,怎么判断,怎么解决的  - 阿里判断规则,sparkUI- 问本科的java后端项目,人员组成  - 如果用户量激增导致数据库应付不过过来如何处理  - redis这些没用吗  - spring boot自定义starter- 如何去处理用户上传的图片的存储  - 利用阿里云OSS存储网址即可- 如何和前端对接的- 前端技术了解不- python了解吗  - 爬虫做过吗## 八股- hive里的排序函数  - 我说成了rank() row_number()  - 应该是orderby sortby distributeby clusterby- orderby和sortby的区别- 了解实时数仓吗,Flink大概是做什么的- left join和right join的区别## 算法- 任意一个正整数N的阶乘末尾有几个0?  - 判断这个阶乘中会出现多少个5(包括把所有5的倍数拆解得到的5),就有多少个0  - 如何用代码实现:直接遍历1到n,求5或者5的倍数包含的5的个数## 其他- 有了解大模型是怎么训练出来的吗- 了解激活函数吗,用过什么激活函数- 了解随机森林吗- 了解推荐系统吗- 介绍了我自己的科研工作
查看40道真题和解析
0 点赞 评论 收藏
分享
# 一面- 电话面## 面评- 丰富离线数仓的经验- 对自己的这个职业的规划是怎么规划的?## 项目- 这个项目是你是从0到1参与的吗?- Hadoop我有参与部署吗- 开发用的Spark SQL吗- 在用Hive on Spark的过程中有遇到什么问题吗?怎么解决的- 数据是怎么怎么来的?## 八股- 你对数仓是怎么理解的?就是什么情况下会用到数仓,就算他比如说我正常的数据库啥的也都能用,它有什么比较大的区别,或者它的优势是啥?  - 数仓的概念  - 数仓和数据库的比较- 数据倾斜都有哪些原因产生的,怎么解决?- SQL的优化有了解过吗  - 我说的是小文件的优化,应该说谓词下推等sql优化- 数仓的建模方法有了解过吗  - 维度建模简单的说一下  - 有没有尝试过其他的模型- hadoop什么HDFS读数据的一个流程  - block默认大小是多大?- shuffer的一个过那个原理能简单说一下吗?  - map阶段他都做了哪些事儿呢?  - 排序放在哪个阶段了?# 二面- 无八股,深挖项目亮点,交流课外经历## 项目- 这个项目是个什么性质?- 那你们这个团队有多少人?然后大概分工是怎么分工的?- 你们在日常使用的过程中有遇到一些问题吗?就是不管是故障,还是说需要去调优什么之类的。- 执行日常运行过程中有有会有故障什么之类的产生吗?或者问其他问题产生吗?- 关于本科课外实验室经历聊天- 那在这个实验室的两年多的时间,对你个人而言有什么影响吗?或者是说取得了什么样的成果?- 关于本科课外球队经历聊天- 现在整个AI这块特别火。我不知道你们对你们有没有一些你或者有些感触,或者说对你们在学校的学习有有一些什么影响。- 使用过什么ai工具,有什么对比区别
查看22道真题和解析
0 点赞 评论 收藏
分享
- 腾讯会议,没要求开视频## 项目- 没问项目,纯八股## 八股- Mapreduce的工作原理  - 详细讲了三阶段- Zookeeper的选举原理  - 只讲了第一次启动,**忘了讲leader挂掉的情况**- Zookeeper一般用在哪里  - HA,zookeeper负责监控HA里多个NN的情况(**ZKFC转换NN状态**),一旦NN发生故障,要启动自动故障转移,避免HA出现脑裂情况- HDFS读写流程- Spark算子  - 忘了讲两种算子的作用:    - Transformation(转换算⼦,即从现有的数据集创建⼀个新的数据集)    - Action(⾏动算⼦,即在数据集上进⾏计算后,返回⼀个值给 Driver 程序)  - **还可以延申讲分别有哪些算子,自己用过的算子**- 讲讲Spark的血缘关系  - **讲血缘关系应该这样梳理**:    - 什么是血缘关系:依赖关系反映了 RDD 是如何从其他 RDD 转换而来的,而多个连续的 RDD 的依赖关系,称之为⾎缘关系    - 为什么要有血缘关系:每个 RDD 记录操作历史,可以根据依赖关系重计算丢失的分区;他是Spark 实现容错和优化计算的重要基础,RDD的弹性一词的依仗也有他    - 怎么实现的重计算:往前找到宽依赖,宽依赖必有shuffle,有shuffle就有数据落盘,我们就可以避免从数据源开始重新执行计算(顺势提到宽窄依赖)    - 血缘关系中细分有哪两种:宽窄依赖,然后讲他们俩的区分(宽依赖的父RDD的一个分区的数据会被子RDD的多个分区所依赖,窄依赖的父RDD的一个分区只能被子RDD的一个分区依赖,这也导致窄依赖多分区可以并行计算,而宽依赖不行)  - 总结:血缘关系是Spark容错恢复的保障之一,也是优化计算的一种方式    - 有利于数据的重新分布和并⾏处理。通过宽依赖(本质上是通过shuffle),可以将数据按照特定的规则重新分配到不同的节点上进⾏处理,从⽽充分利⽤集群的计算资源。提⾼处理效率,具体而言是以下两点:    - **满足特定计算需求**:在很多数据处理场景中,需要将具有相同特征的数据集中在一起进行处理。例如,在进行**分组聚合操作**时,需要将相同键的数据分到同一个分区,以便在每个分区内进行聚合计算。宽依赖通过 Shuffle 操作可以实现这种数据的重新分布,将分散在不同节点上的相同键的数据收集到一起,为后续的计算提供便利。    - **优化数据布局(负载均衡)**:通过重新分布数据,可以使数据在集群中的分布更加均衡,避免某些节点负载过重而其他节点闲置的情况。例如,当数据初始分布不均匀时,通过宽依赖的操作进行 Shuffle,可以将数据均匀地分配到各个节点上,提高集群资源的利用率。- Kafka原理  - 只知道使用,并不了解原理,准备和实时的Flink一起学习- **窗口函数**讲一讲:  - 排名函数  - 跨行取值  - 聚合类- **Hive中怎么做到⾏转列和列转⾏?**  - 一下卡住了没答,其实很简单- 正则表达式知道吗  - 我只知道去边查边用,不会记规则
查看20道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客企业服务