米塔碳大数据开发面试经验 第1弹!!!

米塔碳的大数据开发面试其实总共分为两轮,其中都涉及到一些专业问题,在此我将拆分梳理为两篇文章,以便大家能更加深入地了解该公司的提问喜好和相关招聘要求!(以上仅为本人个人经历和回答思路,供大家参考~)

面试重点问题盘点

1.项目经验和技术栈(ps:面试官蛮关注项目经历的!) 。例如:

  • 你在项目中的具体角色是什么?
  • 遇到的技术难点是什么?
  • 是否有印象深刻的技术问题?比如日志延迟问题的处理、建模思路等。

-回答:针对项目的技术难点,我主要描述了如何优化数据清洗流程,以及如何利用分布式计算工具解决性能瓶颈,同时可以用调侃的语气提一下具体的工作选择和踩过哪些坑

2.数仓建模及优化思路,具体包括:

  • 如何设计DWD建模? 面试官喜欢追问统计周期、粒度的选取依据。
  • 历史累计指标的计算如何优化? 例如,分桶解决数据倾斜或构建历史快照事实表。

-回答:针对建模问题,我解释了如何根据业务需求选择粒度,比如日粒度和小时粒度的取舍,并通过实际案例阐述如何设计事实表和维度表。

3.Flink 相关问题,例如:

  • oFlink 中常用算子有哪些? 包括 map、flatMap、keyBy、reduce 等。

-回答:我列举了算子的使用场景,并结合具体的实时统计场景说明如何用 keyBy 和 window 进行聚合。

  • Watermark 和 Checkpoint 的原理? 面试官喜欢挖掘你对容错机制的理解。

-回答:这块我讲了下 Watermark 的延迟机制,以及如何通过 Checkpoint 实现故障恢复,并补充了在项目中调整 Checkpoint 间隔的经验。

  • 并行度、TaskManager、Slot 之间的关系。

-回答:这里我举了个现实中的具体例子哈~ 通过一个简单的类比(餐厅的桌子和服务员),解释了三者的关系以及如何调优。

  • 背压问题:如何通过 Web UI 定位背压点,并优化算子链或增加并行度。

-回答:我主要讲了一下如何通过观察 Web UI 的延迟指标定位问题,并结合具体场景调整并行度和算子链。

  • 流读 Hudi 的最佳实践:选择 MOR 表类型,通过 PrecombineField 优化增量读取。

-回答:可以说一下通过设置合理的 PrecombineField 来减少重复数据,以及 MOR 表在增量读取中的优势。

还有一些问题和回答,下一弹再整理出来~脑子转不动了hh

#大数据开发##你还有多少年退休?##牛客创作赏金赛##你今年的保底offer是哪家##米塔碳#
全部评论

相关推荐

评论
4
7
分享

创作者周榜

更多
牛客网
牛客企业服务