快手一面

📍面试公司:快手  
🕐面试时间:03/13  
💻面试岗位:java  

❓面试问题

1. 可以做个简单的自我介绍。
2. 问毕业时间
3. 问实习地点
4. 以后预期是在北京工作吗?
5. 你比较熟悉的是哪个项目?
6. 列一下你比较熟悉的一个项目的表名、索引、设计用意。
7. 为什么这两个表要分开?
8. 有没有可能没有user表的时候有user_info表?
9. 这两表的数据怎么生成的?从哪来的?
10. 注册的时候会怎么做?操作两个表吗?
11. 他可以不可以不绑定微信号?
12. 那他可以不可以不填nickname和name?
13. 所以你这个user_info表其实不能脱离user表存在,是不是?
14. 那种表在数据库设计里面它叫什么?
15. E-R两个字还记得吗?是什么的缩写?
16. 你的user表为什么需要有个ID字段?
17. 为什么不可以让user_info表里面有一个字段是user的ID?关联关系为什么反过来?
18. 两个表互相关联是最好的吗?你觉得哪种方式最好?
19. 那还需要ID这个字段吗?为什么选这种方案而不选你原来的设计?
20. 你的方案怎么选择?为什么选某一种?在什么场景下选?
21. 向量召回中,embedding是用什么做的?
22. 关键字加向量语义的混合是怎么混合的?
23. 搜索结果里面用哪个?
24. 你们会去干预排序算法吗?排序的分值?
25. 这个RAG检索底座是作为给大模型智能排错的一个工具使用的吗?
26. 从0到1构建以及增量更新,耗时大概什么量级?
27. 简易数据库是公司的项目还是学校的课程设计?
28. 说说PG SQL和MySQL的区别?
29. 可重复读隔离级别是怎么实现的?
30. 算法题:把二叉树用字符串存储,再写方法解回二叉树。(手撕)

🙌面试感想
感谢快手给我双非一次机会,虽然我也没把握住🥲,答得很烂,数据库理论什么的完全没准备,而且简直是死抓着数据库理论追着我杀啊。算法不是hot100但是不难,力扣原题。最后毫不意外的挂了。

#发面经攒人品#
全部评论

相关推荐

面的挺好的 十天后告知横向挂 伤心透了兄弟们一、 实习项目与场景深挖1. 大模型接口限流与熔断接口限流具体是怎么做的?如何控制模型的并发量?超过限流阈值后怎么降级?兜底策略是什么?熔断机制的阈值是怎么设置的?触发熔断后,流量全部切到备用服务商吗?服务恢复后流量怎么切回?极端追问:切全量流量过去时,如果备用服务商瞬间被打挂,架构上有什么解法?2. Redis 大Key排查与存储优化怎么排查和解决项目中 Redis 大Key问题的?除了内存溢出(OOM),大Key还会给 Redis 带来哪些风险?为什么会拖垮性能?把 Hash 拆分到了不同节点的 String,为什么后续依然有压力?数据迁移到 MySQL 后,能省多少成本?细节辨析:内存溢出(OOM)和内存泄漏的区别是什么?3. MySQL 主从延迟与缓存引入怎么解决 Session 创建时下游业务读不到数据的主从延迟问题?极端追问:单机 MySQL 随便抗几万 QPS,你们业务 QPS 才 50-200,性能极度冗余的情况下,为什么不直接读主库?为什么要增加系统复杂性和成本去引入 Redis?4. Redis 集合应用(Set/ZSet)怎么用 Redis 实现点赞排行榜?怎么按时间排序?怎么用 Set 实现关注和共同关注功能?极端追问:如果关注量上限放宽到5万,用 Set 存会有什么问题?二、 Java 并发基础多线程场景下,怎么实现一个线程安全的计数器?为什么直接用 i++ 不行?底层会发生什么导致记错?Atomic 包下的原子类底层是怎么解决并发安全问题的?除了 CAS,原子类底层还有使用其他的操作或机制吗?三、 MySQL 底层原理与索引MySQL 有哪四种事务隔离级别?分别解决了哪三个问题?底层深挖:不同隔离级别在底层 MVCC 的执行逻辑有什么区别?当前读和快照读的区别是什么?为什么 MySQL 索引底层用 B+树不用 B树?常规情况下,B+树的树高一般是几层?什么场景下用联合索引?MySQL 索引失效的常见场景有哪些?四、 算法手撕螺旋矩阵:给定一个 N,顺时针打印从 1 到 N^2 的正方形矩阵。
查看26道真题和解析
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务