2021.6.28
大数据开发提前岗位
字节
一面
1、自我介绍
2、谈一下项目中有什么难点
3、维度建模 如何建 确认主题 确认粒度 确认度量 确认事实表 确认维度表
4、Hive shuffle 和 spark shuffle的区别
5、Spark 为什么快
6、Spark任务是怎么执行的
7、转化率如何计算
8、缓慢变化维怎么处理
9、Flink 的四大基石都有哪些?
10、Flink状态
11、Flink窗口
12、Flink广播流
13、watermark 的作用是啥?如何保证数据不丢失?
算法:
14.1、两个升序链表 合并后仍然升序
14.2、给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。
你可以对一个单词进行如下三种操作:插入一个字符、删除一个字符、替换一个字符
Sql题
15、一个lag解决的问题
16、你有什么要问我的?
二面
1、自我介绍
2、介绍一下你简历中做的第一个项目
3、Hive count(distinct)有几个reduce 海量数据会有什么问题
4、Spark 有什么优化
5、Flink 精确一致怎么保证
6、Flink 实时topN
7、Flink 写入redis怎么保证精确一致
8、Flink流批处理介绍一下
9、事实表分类
10、Spark hive 用过的解决数据倾斜的方案
11、事实表分类
12、累积型快照事实表做法
13、Hdfs读数据流程 源码级别(要回答出来 rpc)
14、Hdfs写数据流程 源码级别(要回答出来rpc)
15、Mapreduce shffule原理 源码级别(要回答出来锁 多线程 以及缓存写磁盘交换)
16、数仓为什么要分层
17、实时比起来离线 要注意啥
18、特征挖掘 是怎么做的 怎么管理的
算法:
19、给一个字符串检测是否能重新排布字符串让相邻不同
如bba 能改成bab 返回true
aaaac 返回false