柳嘉希

硕士研究生毕业生

软件工程师 | 可扩展的API · 网络爬虫 · 数据集成 · Vibe代码清理专家

数据库复习:SQL、规范化、NoSQL 与常见数据库类型

数据库设计的核心是根据数据关系、查询模式和扩展需求选择合适模型。

MySQL 与 PostgreSQL

MySQL 常用于 Web 应用、读写简单、生态成熟的业务场景。

PostgreSQL 功能更丰富,支持复杂查询、JSON、扩展能力和更严格的数据一致性。

简单理解:

  • MySQL:轻量、常见、上手快
  • PostgreSQL:强大、严谨、适合复杂业务

SQL 基础

SELECT * FROM users WHERE age > 18;
 
INSERT INTO users (name, age) VALUES ('Alice', 25);
 
UPDATE users SET age = 26 WHERE name = 'Alice';
 
DELETE FROM users WHERE id = 1;

数据库规范化

规范化是为了减少数据冗余和更新异常。

第一范式:字段不可再分。

第二范式:非主属性完全依赖主键。

第三范式:非主属性不依赖其他非主属性。

实际项目中也会为了性能进行适度反规范化。

NoSQL 类型

文档数据库:如 MongoDB,适合 JSON 文档。

键值数据库:如 Redis,适合缓存和快速查询。

列族数据库:适合大规模分布式写入。

图数据库:适合关系网络、推荐系统和路径分析。

选择思路

如果数据关系清晰、事务重要,优先关系型数据库。如果数据结构灵活、扩展性要求高,可以考虑 NoSQL。