雷姆 Agent·念念工作台
首页文章项目

concept / stage 5

数据建模

从业务对象、关系和访问方式出发,把现实问题转成可维护的数据结构。

数据建模Intermediate已完成40 分钟#data-modeling#schema#normalization#database
BEFORE YOU START

学习前置

SQLSQL 数据库基础先学习 ↗

一、这个技术是什么?

现实业务中的用户、文章、标签和学习记录之间有关系。如果直接把所有字段堆在一张表里,修改、查询和数据一致性都会变得困难。

数据建模就是把业务概念、关系、约束和访问方式设计成可以长期维护的数据结构。

二、没有它之前发生了什么?

按页面临时设计数据字段
↓
同一信息在多处重复保存
↓
修改一个业务规则需要同步多个地方
↓
数据结构、关系和约束被显式设计

三、核心概念

1. Entity

Entity 是需要长期保存并被识别的业务对象,例如 User、Note 和 Project。

2. Relationship

关系描述对象之间如何关联,例如一个用户收藏多篇笔记。

3. Normalization

规范化通过拆分重复信息降低数据冗余和更新异常。

4. Denormalization

反规范化为了读取速度或简单查询,允许有意复制部分数据,但必须有同步策略。

5. Access Pattern

数据模型不能只看“数据长什么样”,还要考虑系统最常见的查询方式。

四、运行流程

五、面试复习

一句话回答

数据建模是把业务实体、关系、约束和主要访问方式设计成可维护的数据结构,目标是在正确性、查询效率和演进成本之间取得平衡。

高频追问

  • 一对多和多对多如何建模?
  • 什么时候需要反规范化?
  • 为什么要设计索引?
  • 如何处理历史数据和软删除?

容易答错

不要只背范式。真实系统需要结合查询模式、数据量、写入频率和一致性要求做取舍。

六、项目展示

知识平台可以把 Note、Tag、Project 和 InterviewQuestion 设计为不同实体,通过关系连接知识、项目和面试题,为知识图谱提供稳定的数据基础。

INTERVIEW MODE

面试复习

把知识讲给面试官听
ANSWER

数据建模是把业务实体、关系、约束和主要访问方式设计成可维护的数据结构,目标是在正确性、查询效率和演进成本之间取得平衡。

FOLLOW-UP
  • 一对多和多对多如何建模?
  • 什么时候需要反规范化?
  • 为什么要设计索引?
  • 如何处理历史数据和软删除?
WATCH OUT

不要只背范式。真实系统需要结合查询模式、数据量、写入频率和一致性要求做取舍。

PROJECT PRACTICE

把 数据建模 放进项目里

用真实项目验证概念,再把架构、取舍和结果整理成面试时可以讲清楚的案例。

Hermes AgentAgent 工作流与工具调用
个人博客技术文章与工程实践展示
AI 知识平台当前 Markdown 驱动的知识系统
KEEP EXPLORING

相关知识

3 个推荐节点
SQL · BeginnerSQL 数据库基础40 分钟 · 继续学习 ↗ORM · IntermediateORM 基础与使用边界35 分钟 · 继续学习 ↗Node.js · IntermediateExpress 与 Fastify 接口设计40 分钟 · 继续学习 ↗
← 上一篇ORM 基础与使用边界下一篇 →Git 版本控制基础

课程目录

  1. 1. Entity
  2. 2. Relationship
  3. 3. Normalization
  4. 4. Denormalization
  5. 5. Access Pattern
  6. 一句话回答
  7. 高频追问
  8. 容易答错

学习关系

  • 阶段:5
  • 顺序:3
  • 前置知识:1
  • 相关知识:3
  • 更新时间:2026-08-02