小红书 存储
一面 8/6
leveldb
- 导致 write stall 的原因
- leveldb 写入是顺序写入吗
- 多线程并发的时候,leveldb 能保证顺序写吗?
阿里实习
- 介绍顺序流识别的算法流程
- split/move 操作的实现,是原子的吗
- 为什么 bwtree 相比 lsmtree 的 list 性能好
天池比赛
- 对热点key缓存的实现
- hash table 的优化
- 读写流程?
raft
- 选主逻辑
- 出现网络分区,会脑裂吗
- 新 leader 上线怎么继续去日志复制
- raft 这种协议要满足奇数节点吗?面试官觉得是奇数,因为出现 2 2 的网络分区就不可用了,但其实 Quorum 不等于 majority,可以修改协议,实现偶数节点也能正常应对网络分区
- raft leader 接受读写请求,如何优化?
算法
- 实现一个拉链法的 hashTable
二面 8/6
阿里云实习
- 顺序流算法的实现
- 对随机读写导致的热点的partiiton调度?
- oss 的架构,讲了下基于 arkdb 做的一套新的分布式kv
阿里天池
- 比赛的分工
- 介绍了对 hashtable 的优化
算法
- 给一个字符串 “010101”,把它变成非递减的,比如 “000111”,最少需要多少次交换(一次快速选择)
三面 HR 8/16
四面 9/4
大概20min,主要问了下阿里实习经历和实验室项目
#小红书#