字节Tiktok 后端一面面经
个人bg 二本九硕,目前研一,一段数据库初创实习,一篇sys 的 A(非一作),简历上还有一些实验室的项目但是还没投出去的
部门应该是在业务角度上做一些性能优化工作,但是不会涉及到infra 部分,一面面试官人很好,会去引导思考问题,也完全不会压力人,聊下来收获很多
面完十几分钟就告知结果了,说是反馈很不错,约的年后二面。
- 自我介绍
- 实习中最有收获的部分
- 介绍一下 prepared statement 的实现方式和流程
- sql engine 是怎么实现的
- 介绍一下 AST, Logical plan, Physical plan 之间的联系和总的生成过程
- explain 命令是如何实现的
- rust 内存管理,介绍一下所有权的机制
- 从内存分配的角度介绍一下 rust 的所有权,包括栈/堆相关的内容
- 说一下 Box
- rust 并发,async/await 关键字的意义和机制
- 比较一下 rust 的协程和 gorountine
- 协程为什么轻量
- 有栈协程和无栈协程的区别
- 如何排查一个系统的性能,rust 业务中发现有 cpu 打不上去的情况,如何分析和定位问题
- 介绍一下 leveldb
- 说一下 leveldb 的 trade-off
- SST 的结构
- 读写放大和解决方式
- leveldb 的整个写入流程
- 题:Leetcode 复制随机链表