一面 6.5
1. 你的数据库的服务器是怎么和客户端连接的?
2. 你的数据库是怎么启动运行的?
3. 数据库的隔离级别有哪些?
4. 你的数据库的各个隔离级别是怎么具体实现的?
5. 你的数据库的bufferpool怎么实现的?
6. bufferpool的置换算法为什么用lru-k,和lru比好在哪里?
7. osi七层模型,每层干什么,有哪些协议?
8. arp协议在哪一层?干了什么?是什么播?确定是广播吗?(问这个是因为我自己给它起了个名字叫mac协议,我忘了它叫arp了,面试官估计听晕了,不知道我想说的是哪个)
9. 八个排序算法的介绍,时间复杂度什么的
10. 算法题:lc2 链表求和(面试官表示:给你找个简单的题)
11. 反问:这都晚上六点了,您也累了,赶紧吃饭吧!
二面 6.8
1. 数据库的隔离级别有哪些?
2. 你的数据库的各个隔离级别是怎么具体实现的?
3. 你的数据库是怎么进行死锁检测的?
4. 你的死锁检测算法有什么问题?怎么改进?
5. 机械硬盘,固态硬盘,内存,cache读取数据的原理?每次读取数据花费的时间是多少?读取速度的瓶颈在哪里?
6. 数据库为什么要自己有bufferpool?为什么不用操作系统直接提供的置换算法?
7. 了解虚拟内存吗?(我说我了解一些,结果没问)
8. 会网络编程吗?select,epoll啥的(我说的不会,尴尬了)
9. http版本变化
10. 详细讲一下http2(直接说不会,没背过详细八股)
11. 算法题:螺旋打印矩阵
12. 反问:这都中午十二点了,您也累了,赶紧吃饭吧!
三面 6.16
1. 给一个select*,where字段有普通的非唯一索引的查询语句,让自己估算一些数,算什么时候走索引查询,什么时候走全表扫描(我大概估算的数据有主键和索引的b+树高度,两个b+树叶子结点的页面大小,两个页面里每行数据的大小,全表的数据总数量,where对应字段的不同值的个数等,按经验随便编了个数据)
2. tcp挥手为什么比握手多一次?
3. tcp为什么握手三次,不是两次?
4. 算法题:二叉树结点的右邻居(就是层次遍历的变种)
5. 反问:这都晚上六点了,您也累了,赶紧吃饭吧!
提交审批 6.19
oc 6.25
#我的实习求职记录#