NoSQL设计原则

2022-04-13 00:00:00 数据 数组 引用 范式 内嵌

**特点 **

1.易扩展,高性能,高可用

2.较容易映射复杂数据(key-value)

3. 无事务特性要求(ACID特性)

数据库相关概念

关系型数据库,是指采用了关系模型来组织数据的数据库。

NoSQL是对不同传统的关系数据库的数据库管理系统的统称。

**内嵌:**内嵌是指在关联关系的文档,放在同一文档中,以数组的形式存放

1.内嵌设计:

减少了关联查询

适合于单类需要描述的属性

不经常变化的属性(扩展,嵌套关联)

**父引用: 指存在一对多的情况中,放在同一文档中,**以数组的形式存放

子引用: 指存在一对非常多的情况中,由于数据库存放限制,这个时候进行反向引用

2.父子引用设计

引用数据内容是否非常多

引用数据量是否非常庞大,而且在增加

数据是否需要单独访问

反范式

**范式:**指安既定的用法,范式就是一种公认的模型或模式

**反范式:**不走寻常路

3.反范式设计

是否有提升性能的区间

数据量的变化是否非常庞大,庞大到更新会异常低效

先考虑读写比,才考虑反范式

设计原则

优先考虑内嵌,如果单独访问,则不适合

数组不应该无限制增长

考虑读写比,考虑反范式,考虑应用场景

相关文章