滴滴存储一二面

背景:

211本985硕非科班,项目一个NoSQL内核实现(6000行左右),一个15445通关(代码量等同);华为无关方向两个月实习;一篇无关SCI一区;

7.28投递

8.15一面,隔15分钟二面

一面

1. 自我介绍

2. 详细介绍NoSQL的项目(滴滴做的RocksDB二次开发?)

3. 讲讲LSM-Tree

4. MemTable直接到SST吗?(中间还有个immutable)

5. 你写的SST多大?大小怎么权衡

6. 还有一些项目问题想不起来了,问的还是比较多的,但是基本上都没问题,到这里大概20分钟

7. 手撕跳表(感谢赛码网平台过于简陋,不用Debug了)20到30分钟

8. vector的扩容策略

9. 智能指针,可以无脑shared_ptr吗?(不行,效率有问题,适时用unique_ptr或者普通指针)

10. 移动语义有什么用,怎么用?左移和右移语义(这还真是第一次听说,不过也答上来了,指的是std::forward和“右值引用本身是个左值”的问题)

11. explicit用过吗怎么用

12. 内存泄漏怎么解决

13. 看你用了lock_guard给跳表上锁,lock_guard基于什么机制实现?具体呢?(构造上锁析构解锁)有没有粒度更细的策略?(不会,忘了复习了,没追问)

大约一小时结束,10分钟约二面立即开始(但是面试官迟了差不多20分钟)

内存泄漏经典,每次都问。个人觉得这几个点要说到(即使没用过也要硬编):

1. 日志排查(我的项目自己做了一个小日志库集成进去了)

2. core dump可以用gdb打开,恢复现场状态;再说几个gdb命令,b(breakpoint),r(run),s(step in)等等

3. 内存泄漏检查工具(但是好像面试官不太爱听这个),Linux我用的Valgrind,g++12自带AddressSanitizer,Windows也有其他的工具

二面

项目问的很细

1. 自我介绍

2. 依然详细介绍NoSQL的项目

3. 布隆过滤器介绍一下,如果每个SST有一个BloomFilter,读盘还是有很大的开销,怎么办?(我说的全局BF,但是要考虑数据量大的时候BF的大小还有命中率)

4. 缓存粒度多大?DataBlock,KV还是SST,这几种粒度又各有什么问题,你为什么这么选择?

5. 并发策略的粒度,MVCC是针对KV还是SST

6. MemTable转Immutable没落盘时怎么读的?(糟了没考虑到,可能是整个面试里比较有问题的地方了,现场思考应对了一下)

7. 手撕链表题:123456->162534,思路是快慢指针断链,后半段倒序,然后和前半段归并即可,想了几分钟,面试官提示“前半段是正序,后半段是倒序”然后我就有思路了,但是!先写了快慢指针断链,面试官说只要写到倒序后半段就行不用归并,等我写完倒序(有bug的,他还看都没看),面试官直接:你还有什么问题吗我没什么问题了。我也没写5分钟啊?

面完很快发感谢信,寄了。不会是KPI吧

#滴滴信息集散地##本周投递记录#
全部评论
我擦 同部门
1 回复 分享
发布于 2023-08-16 16:29 上海
现在基本是手撕有点问题就寄 撕出来聊的有点瑕疵也寄😅
点赞 回复 分享
发布于 2023-08-16 11:45 北京
问的东西也太难了吧
点赞 回复 分享
发布于 2023-08-16 15:10 陕西
存储和数据库内核相关的都好难,岗位也少
点赞 回复 分享
发布于 2023-08-16 16:45 上海
老哥三面了吗?我是同岗位
点赞 回复 分享
发布于 2023-08-18 09:06 北京
佬,什么岗位
点赞 回复 分享
发布于 2023-08-18 12:30 广东
我去,问你的这些存储引擎的问题对于存储岗位而言是常规的吗?还没面过存储岗位。
点赞 回复 分享
发布于 2023-08-18 21:36 湖北
现在存储岗问的内容都更偏数据库方向一些么
点赞 回复 分享
发布于 2023-08-19 11:19 福建
哪儿的base,有笔试吗
点赞 回复 分享
发布于 2023-08-19 13:54 吉林
能加一下好友吗老哥
点赞 回复 分享
发布于 2023-08-19 13:58 吉林
师兄 你的nosql的项目具体是啥
点赞 回复 分享
发布于 2023-08-24 09:15 上海
有实习有项目有背景也刷啊,太哈人了
点赞 回复 分享
发布于 2024-05-07 13:40 上海

相关推荐

2024-12-30 22:31
吉首大学 Web前端
工字钢写代码:改成吉林就OK了
点赞 评论 收藏
分享
评论
10
46
分享

创作者周榜

更多
牛客网
牛客企业服务