Search

11/26/2009

The CouchDB Project

The CouchDB Project

Apache CouchDB is a document-oriented database that can be queried and indexed in a MapReduce fashion using JavaScript. CouchDB also offers incremental replication with bi-directional conflict detection and resolution.

CouchDB provides a RESTful JSON API than can be accessed from any environment that allows HTTP requests. There are myriad third-party client libraries that make this even easier from your programming language of choice. CouchDB’s built in Web administration console speaks directly to the database using HTTP requests issued from your browser.

CouchDB is written in Erlang, a robust functional programming language ideal for building concurrent distributed systems. Erlang allows for a flexible design that is easily scalable and readily extensible.

See the introduction and the technical overview for more information.

CouchDB了解(-) 特性及实现
CouchDB内部默认使用JavaScript作为View的编写语言,之所以采用Javascript,是和CouchDB一种半结构化面向文档的分布式,高容错的数据库系统,其提供RESTFul HTTP/JSON接口。其拥有MVCC特性,用户可以通过自定义Map/Reduce函数生成对应的View。

在CouchDB中,数据是以JSON字符的方式存储在文件中。

CouchDB面向Web开发相关的。CouchDB使用Mozilla的spidermonkey作为JavaScript的解析运行平台,为了和Erlang进行交互,其使用c书写了一个Port程序couchjs,/server/main.js作为View Server服务器。

CouchDB: The Definitive Guide
  • get a list of databases: curl -X GET http://127.0.0.1:5984/_all_dbs

  • create a database: curl -X PUT http://127.0.0.1:5984/baseball

  • delete a database: curl -X DELETE http://127.0.0.1:5984/plankton

  • tag: couch

    沒有留言: