- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实用文档
实用文档
文案大全
文案大全
关系型数据库和非关系型数据库
自 1970 年,埃德加·科德提出关系模型之后,关系数据库便开始出现,经
过了 40 多年的演化,如今的关系型数据库具备了强大的存储、维护、查询数据的能力。但在关系数据库日益强大的时候,人们发现,在这个信息爆炸的“大数据”时代,关系型数据库遇到了性能方面的瓶颈,面对一个表中上亿条的数据, SQL 语句在大数据的查询方面效率欠佳。我们应该知道,往往添加了越多的约束的技术,在一定程度上定会拖延其效率。
在 1998 年,Carlo Strozzi 提出 NOSQL 的概念,指的是他开发的一个没有 SQL 功能,轻量级的,开源的关系型数据库。注意,这个定义跟我们现在对 NoSQL 的定义有很大的区别,它确确实实字如其名,指的就是“没有 SQL” 的数据库。但是 NoSQL 的发展慢慢偏离了初衷,CarloStrozzi 也发觉,其实我们要的不是nosql,而应该是norelational,也就是我们现在常说的非关系型数据库了。
在关系型数据库中,导致性能欠佳的最主要因素是多表的关联查询,以及复杂的数据分析类型的复杂 SQL 报表查询。为了保证数据库的 ACID 特性,我们必须尽量按照其要求的范式进行设计,关系型数据库中的表都是存储一些格式化的数据结构,每个元组字段的组成都一样,即使不是每个元组都需要所有的字段,但数据库会为每个元组分配所有的字段,这样的结构可以便于表与表之间进行连接等操作,但从另一个角度来说它也是关系型数据库性能瓶颈的一个因素。
非关系型数据库提出另一种理念,他以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。使用这种方式,用户可以根据需要去添加自己需要的字段,这样,为了获取用户的不同信息,不需要像关系型数据库中,要对多表进行关联查询。仅需要根据 id 取出相应的 value 就可以完成查询。但非关系型数据库由于很少的约束,他也不能够提供想 SQL 所提供的 where 这种对于字段属性值情况的查询。并且难以体现设计的完整性。他只适合存储一些较为简单的数据,对于需要进行较复杂查询的数据, SQL 数据库显得更为合适。
目前出现的 NoSQL(Not only SQL,非关系型数据库)有不下于25 种,除了 Dynamo、Bigtable 以外还有很多,比如 Amazon 的 SimpleDB、微软公司的 AzureTable、Facebook 使用的 Cassandra、类 Bigtable 的 Hypertable、Hadoop 的 HBase、MongoDB、CouchDB、Redis 以及 Yahoo!的 PNUTS 等等。这些NoSQL 各有特色,是基于不同应用场景而开发的,而其中以MongoDB 和 Redis 最为被大家追捧。
以下是 MongoDB 的一些情况:
MongoDB 是基于文档的存储的(而非表),是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支 持的数据结构非常松散,是类似 json 的 bjson 格式,因此可以存储比较复杂的数据类型。模式自由(schema-free),意味着对于存储在 MongoDB 数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构 的文件存储在同一个数据库里。Mongo 最大的特点是他支持的查询语言非常强大,
其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
Mongo 主要解决的是海量数据的访问效率问题。因为 Mongo 主要是支持海量数据存储的,所以 Mongo 还自带了一个出色的分布式文件系统GridFS, 可以支持海量的数据存储。由于 Mongo 可以支持复杂的数据结构,而且带有强大的数据查询功能,因此非常受到欢迎。
关系型数据库的特点
关系型数据库
关系型数据库,是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。常见 的关系型数据库有 Oracle、Mysql、sql server 等等。
关系型数据库瓶颈高并发读写需求
网站的用户并发性非常高,往往达到每秒上万次读写请求,对于传统关系型数据库来说,硬盘 I/O 是一个很大的瓶颈
海量数据的高效率读写 网站每天产生的数据量是巨大的,对于关系型数据库来说,在一张包含海量数据的表中查询,效率是非常低的
高扩展性和可用性
在基于 web 的结构当中,数据库是最难进行横向扩展的,当一个应用系统的用户量和
您可能关注的文档
最近下载
- 最新人教版六年级数学上册教案全册.doc VIP
- 《中华民族大团结》(初中)第10课伟大梦想共同追求教案.pdf VIP
- 中外教育理论名著选读.docx VIP
- 专业音响完整系统的安装与调试.doc VIP
- 西门子12001500PLC用触摸屏按钮触发启动PID的自整定编写方法程序示例.docx VIP
- 《中外教育名著选读》模拟试题.docx VIP
- 中兴接入网和epon b ch zxa10f822产品介绍23p.pdf VIP
- 平型关大捷和台儿庄战役.ppt VIP
- 环境学第2版-左玉辉-教学课件-第2讲 水环境.ppt VIP
- 小米质量保证工程师岗面试题库参考答案和答题要点.docx VIP
文档评论(0)