字节大数据开发推荐架构(深圳)日常实习一面(凉)75min

9.20

24届非科班本发面筋攒好运!

第一次面+太紧张+基础不好+算法出没见过的hard = 寄

组是偏基础架构的

自我介绍到一半简介项目的时候就被打断了开始撕项目(乐

学习的方法

离线项目:

1.分层的好处,为什么分层

2.idmapping

3.拉链表的逻辑(用户活跃区间的中间表),下次还应该解释一下这个中间表的好处以及为什么方便。

实时项目:

1.维表动态注入的意义在哪里,为什么不直接写入存储介质?  答不上来,这里当时居然想确实是感觉某硅谷这个操作就是炫技,没什么实际的意义。把话题转到规则注入。

其实也不完全是,当时忘了很重要的一个点是维表那边更新是在业务库的,被面试官误导了以为维表信息是在流量域的数据流里面的就很尬。太紧张了。

其实消费的数据是mysql里面的,是由业务人员在mysql里面修改的,

而不是在数据流里面的。由flinkcdc监控到业务库的变化。可以实时地加载维表。

broadcast,connect,process这个顺序我都记不清哇塞我发现脑子真的好混乱。

2.flinkcdc深挖,如果修改删除怎么办?其实我不是用flinkcdc答不支持mysql层面的修改,过滤掉,只保留插入的数据,事实规则的插入还是删除在json里面在程序内部判断。

3.watermark是什么?

3.动态keyby要复制流,这个复制流有什么优化没有     答不上来,这个真的没办法太难了,事实上可以另外起一个job

4.flink的数据和redis和ck的数据一致性怎么保证  没答上来

其实设置redis的ttl到整点就会失效就可以了,跟那个分界点的设计其实是一个道理,唉临场感觉思维能力很捞。

5.flink的ck机制,两个流的数据先后到一个算子barrier怎么推进

6.flinkck预提交的时候sink具体做了什么(我直接???你要跟我说flinkck的整体流程我还能说,但是再往下问细节我就寄了)

7.对于复制流有什么优化 答不上来

流计算引擎项目

1.算子链如何构建,如何知道上下游。

答得一般,细节没答好。主要是对项目还不够熟组织语言组织不起来。从后往前构建,先初始化sink,Starter2层for先遍历算子再遍历机器。维护一个stage变量和oldstage变量。遍历机器的时候把创建在每台机器的算子添加进stage里面,维护一个变量oldStage存储下游的算子。每遍历完一轮把stage的值赋给oldStage,stage置为空用来接收当前这轮算子的actor。

2.akka你重写了哪些方法,只答上来createReceive其他的不记得了,SupervisorStrategy,开发时间?代码量?

3.有没有什么亮点设计?说了开窗的设计

4.节点挂了怎么办?答不上来

5.如何支持多种数据结构   其实只支持String,但他问支持多种怎么办?我又扯了泛型其实也不懂,瞎说一通java基础稀烂,回去好好补。

手撕:

"1-(2-1)"公式字符串求值,卡着了,事后看还是也不算简单当时肯定写不出来

算法也是稀烂

面试官说没思路就换一题换了题最后还是还是快排救了我,一边解说一边写

全部评论
学弟,建议不要把重心放在这些所谓的框架上,多看看基础,真的
2 回复 分享
发布于 2022-11-02 09:04 广东
准备充分自信满满
点赞 回复 分享
发布于 2022-09-30 17:21 河南
后来怎么办,老师同意放自习了吗,同24届今天刚参加蔚来的一面
点赞 回复 分享
发布于 2022-10-08 10:31 江苏

相关推荐

11-20 23:21
算法工程师
点赞 评论 收藏
分享
4 31 评论
分享
牛客网
牛客企业服务