为什么在某些情况下要做数据库反范式化(denormalization)?有哪些收益与代价?
Why would it make sense to denormalize a database?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: Carsales Interview, SQL
标签: Denormalization, Database
目标公司: carsales
参考答案摘要
答案 反范式化常用于读多写少、Join 成本高、需要更低延迟的场景:通过冗余字段/预聚合表减少 Join、提升查询速度、降低查询复杂度。 代价:写入变复杂(需要同步多处数据)、一致性风险(更新漏掉导致脏数据)、存储成本上升。 实践建议:先用索引/查询优化;确实是性能瓶颈再反范式化,并用事件/触发器/应用层写入策略保证一致性。 Answer Denormalization helps in read...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。