博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NoSQL精粹读书笔记-第2章
阅读量:5873 次
发布时间:2019-06-19

本文共 585 字,大约阅读时间需要 1 分钟。

hot3.png

关系数据库的数据模型:行,表

NoSQL数据库的数据模型:键值,文档,列族,图

NoSQL数据库的数据模型是面向聚合的

1.聚合

把一组相互关联的对象视为一个整体单元来操作,这个单元就叫聚合。

1.1 关系模型与聚合模型示例

聚合模型建模其实不是划分聚合边界,而是规划数据的访问方式。

1.2 面向聚合的影响

关系数据库的数据模型是聚合无知的。

聚合的边界一般都很难正确的划分,当不同场景要使用同一份数据时,更是如此。

在操作数据时,如果没有一种占主导地位的结构,那么选用聚合无知型的数据模型效果会更好(也就是关系数据库模型)

选用面向聚合模型的决定性因素,就在于它非常适合在集群上运行。

2.键值数据模型与文档数据模型

键值数据模型与文档数据模型的区别是:

键值数据库的模型的聚合不透明,只包含一些没有太多意义的大块信息,与此相反,在文档数据库的聚合中,可以看到其结构;键值数据库可以存储任意数据,没有什么限制,文档数据库则要限制其中存放的内容,比如存放的数据结构及数据类型等,这样做的好处是能够更加灵活的访问数据;键值数据库只能通过键来查找聚合内容,文档数据库则可以用聚合中的字段查询,还可以只获取一部分聚合,按聚合内容创建索引。

3.列族存储

列族模型是两级聚合结构。

转载于:https://my.oschina.net/u/914897/blog/483861

你可能感兴趣的文章
前端优化带来的思考,浅谈前端工程化
查看>>
Mina2.0框架源码剖析(一)
查看>>
BZOJ 2456: mode(新生必做的水题)
查看>>
第 7 章 RethinkDB
查看>>
JDBC连接Oracle数据库
查看>>
Centos7设置关闭防火墙
查看>>
Linux usleep for shell
查看>>
【SQL Sever】安装过程
查看>>
外部中断实验
查看>>
python 回溯法 子集树模板 系列 —— 19、野人与传教士问题
查看>>
多线程之GCD(一)
查看>>
7.3. postForObject
查看>>
Nginx 学习笔记(四)nginx-module-vts模块
查看>>
thinkphp怎么实现图片验证码
查看>>
iOS - UISegmentedControl
查看>>
Web APi之认证(Authentication)两种实现方式【二】(十三)
查看>>
PgSQL · 应用案例 · 海量用户实时定位和圈人-团圆社会公益系统
查看>>
leetcode二分查找问题整理
查看>>
设计模式——8代理模式(Proxy)
查看>>
Data Guard故障自动切换的想法(r11笔记第40天)
查看>>