第1个回答 推荐于2017-09-10
nosql是not only sql的意思。是近今年新发展起来的存储系统。当前使用最多的是key-value模型,用于处理超大规模的数据。
以下是摘自百度百科中的一部分
NoSQL 是非关系型数据存储的广义定义。它打破了长久以来关系型数据库与ACID理论大一统的局面。NoSQL 数据存储不需要固定的表结构,通常也不存在连接操作。在大数据存取上具备关系型数据库无法比拟的性能优势。该术语在 2009 年初得到了广泛认同。
当今的应用体系结构需要数据存储在横向伸缩性上能够满足需求。而 NoSQL 存储就是为了实现这个需求。Google 的BigTable与Amazon的Dynamo是非常成功的商业 NoSQL 实现。一些开源的 NoSQL 体系,如Facebook 的Cassandra, Apache 的HBase,也得到了广泛认同。从这些NoSQL项目的名字上看不出什么相同之处:Hadoop、Voldemort、Dynomite,还有其它很多。
NoSQL与关系型数据库设计理念比较
关系型数据库中的表都是存储一些格式化的数据结构,每个元组字段的组成都一样,即使不是每个元组都需要所有的字段,但数据库会为每个元组分配所有的字段,这样的结构可以便于表与表之间进行连接等操作,但从另一个角度来说它也是关系型数据库性能瓶颈的一个因素。而非关系型数据库以键值对存储,它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。本回答被提问者和网友采纳
第2个回答 2020-09-16
什么是NoSQL数据库?从名称“非SQL”或“非关系型”衍生而来,这些数据库不使用类似SQL的查询语言,通常称为结构化存储。这些数据库自1960年就已经存在,但是直到现在一些大公司(例如Google和Facebook)开始使用它们时,这些数据库才流行起来。该数据库最明显的优势是摆脱了一组固定的列、连接和类似SQL的查询语言的限制。有时,NoSQL这个名称也可能表示“不仅仅SQL”,来确保它们可能支持SQL。 NoSQL数据库使用诸如键值、宽列、图形或文档之类的数据结构,并且可以如JSON之类的不同格式存储。
第3个回答 2013-12-24
非关系型数据库,主要是解决是海量数据下的数据库性能和扩展能力。
传统关系型数据库单表支撑到千万级基本上就达到了瓶颈,要通过分库,分表,多副本等多种方式来解决,典型的如淘宝的生成库,但是这需要有强大的数据库团队支撑,成本较高。NoSQL就为了解决在数据增长过程中面临的性能,水平扩展问题。当然选用NoSQL系统在查询复杂度等多个维度都会受到约束,选用关系型数据库分库分表后其实也是一样,复杂查询排序等能力是不能直接使用了。
第4个回答 2018-07-31
您好
虽然关系数据库已有诸多不便,但以NoSQL目前的发展状况要代替他还为时过早,并且至少从目前来看,他们也各有所长,谁也替代不了谁。SQL语句的方便在许多情况下还是相当实用,SQL数据库软件的强壮程度度也是NoSQL数据库软件目前无法达到的。NoSQL在许多领域,比如高速缓存,高速消息队列方面有着传统关系数据库无法比拟的优势,他们将在今后一些年并驾齐驱,至于未来的方向还得看在实际使用和进一步开发中遇到的问题。这里有一篇译自Redis(一种近年来发展迅速的NoSQL数据库)官方网站的介绍文章,对NoSQL的特性可窥一斑。
这个要看你的应用范围、场景