NoSQL设计原则
**特点 **
1.易扩展,高性能,高可用
2.较容易映射复杂数据(key-value)
3. 无事务特性要求(ACID特性)
数据库相关概念
关系型数据库,是指采用了关系模型来组织数据的数据库。
NoSQL是对不同传统的关系数据库的数据库管理系统的统称。
**内嵌:**内嵌是指在关联关系的文档,放在同一文档中,以数组的形式存放
1.内嵌设计:
减少了关联查询
适合于单类需要描述的属性
不经常变化的属性(扩展,嵌套关联)
**父引用: 指存在一对多的情况中,放在同一文档中,**以数组的形式存放
子引用: 指存在一对非常多的情况中,由于数据库存放限制,这个时候进行反向引用
2.父子引用设计
引用数据内容是否非常多
引用数据量是否非常庞大,而且在增加
数据是否需要单独访问
反范式
**范式:**指安既定的用法,范式就是一种公认的模型或模式
**反范式:**不走寻常路
3.反范式设计
是否有提升性能的区间
数据量的变化是否非常庞大,庞大到更新会异常低效
先考虑读写比,才考虑反范式
设计原则
优先考虑内嵌,如果单独访问,则不适合
数组不应该无限制增长
考虑读写比,考虑反范式,考虑应用场景
相关文章