欢迎投稿

今日深度:

初窥NoSQL世界 开源CouchDB新手入门(1)

初窥NoSQL世界 开源CouchDB新手入门(1)


NoSQL现在已经变成在IT界中十分热门的话题了,在本文中,将为你介绍NoSQL中的一员CouchDB的基本知识,带你开始走入NoSQL丰富多彩的世界。

 

什么是NoSQL

NoSQL(是not only SQL的缩写,也有说法认为是non-relational,即非关系型数据库)其实是不使用传统的关系数据库模型,而是使用如key-value存储、文档型的、列存储、图型数据库、xml等方式存储数据的模型统称。之所以不使用传统的范式,主要是在于它们存储数据的方式发生了变化。例如,当你需要存储发票的数据时,在传统的关系数据模型中,需要设计表的结构,然后使用服务器端语言将其转化为实体对象,再传递到用户端(这就是所谓的ORM对象关系映射),而在NoSQL中,你只要保存发票数据就可以了。 NoSQL不需要预先设计表和结构就可以储存新的数值。当然,请记住,NoSQL不是银弹。如果你的项目中要保存的数据的确需要关系型数据库模型才能完成,那么应该坚持使用关系型数据库。

NoSQL的特点

NoSQL的出现主要是为了解决数据库读写性能的问题,随着越来越庞大的Web应用系统的出现,如SNS,微博等应用需要大量对数据进行读和写,并且要求进行分布式的部署,而传统的关系数据模型在大数据访问量和分布式环境下,由于关系模型中经常要对多表进行连接操作,因此性能有时会有所降低,所以NoSQL的强调的是“非关系型”数据,NoSQL 数据存储不需要固定的表结构,通常也不存在连接 操作。在大数据存取上具备关系型数据库无法比拟的性能优势。

在http://nosql-database.org/中,对NoSQL的描述是:非关系的,分布式的,开源的而且可以垂直扩展的。并且大多数NoSQL数据库具有以下特点:Schema-free,方便的支持数据冗余,简单的API,基于最终一致性(eventually consistent)和BASE原则(而非ACID原则)。目前,Google 的 BigTable 与 Amazon 的 Dynamo 是非常成功的商业 NoSQL 实现。一些开源的 NoSQL 体系,如Facebook 的 Cassandra , Apache 的 HBase ,也得到了广泛认同。


www.htsjk.Com true http://www.htsjk.com/shujukujc/18881.html NewsArticle 初窥NoSQL世界 开源CouchDB新手入门(1) NoSQL现在已经变成在IT界中十分热门的话题了,在本文中,将为你介绍NoSQL中的一员CouchDB的基本知识,带你开始走入NoSQL丰富多彩的世界。 什么是NoS...
评论暂时关闭