redis_NoSql入门概述数据模型简介
以下面的背景去对比关系型数据库和非关系型数据库的差异(一个电商客户、订单、订购、地址模型来对比以下关系型数据库和非关系型数据库)
传统数据库一般设计会使用ER图(1:1/1:N/N:N,主键等)
而NoSql使用的是BSON
一、什么是BSON
BSON是一种类json的一二进制形式的存储格式,简称Binary JSON,它和json一样,支持内嵌的文档对象被数组对象。(看下面例子)
{
"customer":{
"id":1136,
"name":"Z3",
"billingAddress":[{"city":"beijing"}],
"orders":[
{
"id":17,
"customerId":1136,
"orderItems":[{"productId":27,"price":77.5,"productName":"thinking in java"}],
"shippingAddress":[{"city":"beijing"}]
"orderPayment":[{"ccinfo":"111-222-333","txnid":"asdfadcd334","billingAddress":{"city":"beijing"}}],
}
]
}
}
上面的json类型的字符串就是一个Bson,这样可以处理多样的数据结构。
二、传统的关系型数据库与非关系型数据库查询的差异
传统的系统在查询多张表的关联时都使用关联查询来处理,但是在分布式开发时非常忌讳这样的关联查询,高并发的操作时不太建议有关联查询的,互联网公司用冗余数据来避免关联查询,分布式事务是支持不了太多的并发的。
而在Redis中使用的是KV键值对实现的,使用key直接就可以查询出来整个关联的数据。
三、聚合模型
1.KV键值对
2.列族(纵向关系)
3.Bson
4.图形(复杂的关系,网状关系)
- redis之NoSQL数据模型简介与分类
- NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
- redis_NoSql入门概述(三)
- Redis 视频教程 大数据 高性能 集群 NoSQL 设计 实战 入门 命令
- Redis 讲解系列之 NoSql入门和概述(一)
- Redis入门-1-数据模型List
- redis_NoSql入门概述(一)
- NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
- NoSql数据模型简介
- Redis总结--nosql入门以及概述
- 框架 day53 BOS项目练习(权限概述,权限数据模型,shiro入门{bos中应用})
- Redis 讲解系列之 NoSql入门和概述(二)
- BOS项目练习(权限概述,权限数据模型,shiro入门{bos中应用})
- redis_NoSql入门概述(二)
- 04-NoSQL数据模型简介学习
- Redis和nosql简介,api调用;Redis数据功能(String类型的数据处理);List数据结构(及Java调用处理);Hash数据结构;Set数据结构功能;sortedSet(有序集合)数
- redis之NoSQL入门和概述及应用
- Redis和nosql简介,api调用;Redis数据功能(String类型的数据处理);List数据结构(及Java调用处理);Hash数据结构;Set数据结构功能;sortedSet(有序集合)数
- NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
- Redis--NoSQL入门概述