Published on

2024-10-03

Authors

数据库篇章


NoSQL数据库设计 糟糕的索引,所有域值,错误的命名约定,糟糕的文档,用字符来存日期 设计工具

NoSQL意义 1、易扩展,高性能,高可用 2、较容易映射复杂数据(key-value) 3、无事务特性要求(ACID特性)

数据库相关概念 关系型数据库,是指采用了关系模型来组织数据的数据库 NoSQL是对不同于传统的关系数据库的数据库管理系统的统称

NoSQL设计

1、常见的场景及设计方法(内嵌、父/子引用、反范式) 内嵌: 是指存在关联关系的文档,放在同一文档中,以数组的形式存放

{ "name": "张三", roles:["admin","user"] }

减少了关联查询 适合单类须要描述的属性 不经常变化的属性(扩展、嵌套关联)

父引用: 是指存在一对多的情况中,放在同一文档中,以数组的形式存放 { "id":"1", "comments":["commontID1","commentID2"] } 子引用: 是指存在一对非常多的情况下,由于数据库文档存放限制,这个时候进行反向引用

什么是反范式 范式是指按照既定的用法,范式就是一种公认的模型或模式。 先考虑读写比,才考虑反范式 2、双向关联的场景及设计原则

MongoDB 安装、配置、GUI工具 Nodejs中的Mongoose库