您的位置: 新闻频道 新闻

原创新闻 用Erlang开发的文档数据库系统CouchDB

2007-11-27 by 见习编辑 robbin
评论(4) 有1453人浏览 erlang couchdb
http://code.google.com/p/couchdb/

CouchDB是用Erlang开发的面向文档的数据库系统,最近刚刚发布了0.7版本,这也是第一次公开发布的版本。CouchDB不是一个传统的关系数据库,而是面向文档的数据库,其数据存储方式有点类似lucene的inde文件格式,CouchDB最大的意义在于它是一个面向web应用的新一代存储系统,事实上,CouchDB的口号就是:下一代的Web应用存储系统,那么让我们来一一分析CouchDB的特点:

一、CouchDB是分布式的数据库,他可以把存储系统分布到n台物理的节点上面,并且很好的协调和同步节点之间的数据读写一致性。这当然也得以于Erlang无与伦比的并发特性才能做到。对于基于web的大规模应用文档应用,然的分布式可以让它不必像传统的关系数据库那样分库拆表,在应用代码层进行大量的改动。

二、CouchDB是面向文档的数据库,存储半结构化的数据,比较类似lucene的index结构,特别适合存储文档,因此很适合CMS,电话本,地址本等应用,在这些应用场合,文档数据库要比关系数据库更加方便,性能更好。

三、CouchDB支持REST API,可以让用户使用JavaScript来操作CouchDB数据库,也可以用JavaScript编写查询语句,我们可以想像一下,用AJAX技术结合CouchDB开发出来的CMS系统会是多么的简单和方便

其实CouchDB只是Erlang应用的冰山一角,在最近几年,基于Erlang的应用也得到的蓬勃的发展,特别是在基于web的大规模,分布式应用领域,几乎都是Erlang的优势项目。

评论 共 4 条 发表评论

stevendu 2007-11-30 22:21
lotus notes 不也是文档式数据库吗?
wainwen 2007-11-27 21:32
太好了,找了很久的东东,赶紧测试一下先
dogstar 2007-11-27 20:50
估计是说存储是文档格式,访问没有锁之类的复杂数据库操作。估计也没有完备的数据库事务保证。估计就是一个cache dump到磁盘上。但是,如果用来存储一下cms,静态文本资源的话,效率能够保证。而且,又支持分布式。那是不是意思是,它是一个分布式文件存储服务器了?不知道有没有其他语言的调用api,。。。
pi1ot 2007-11-27 17:53
没看懂面向文档的数据库是个什么门道,怎么就性能更好了?

发表评论

您还没有登录,请登录后发表评论