欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Apache CouchDB
您可以在Wikipedia上了解到此条目的英文信息 Apache CouchDB Thanks, Wikipedia. |
目录 |
简介
CouchDB是一个文档数据库;它是一个支持复制的(Replecated)文档数据库,具有REST接口,也就是说可以在HTTP上,用标准的GET、PUT、POST去访问。而且它用JavaScript作为查询语言去建立数据视图(View)。在SQL数据库里,你要定义各种表和表中的数据类型及大小,CouchDB不一样,它是没有Schema的。在CouchDB里,每个文档都是独立的对象,可以是任意的 JSON结构。这是技术上的表述。那么它的优点在哪里呢?它有利于构建很多协作型的应用,很多Web应用都是围绕着文档、上下文、任务、Bug报告,诸如此类的东西。这些就是CouchDB最擅长的方面。
功能
相似项目: MongoDB
CouchDB和Lotus Notes最接近, 其核心就是文档模型.
CouchDB创造者Damien Katz畅谈CouchDB
指南
Docker
Windows
先安装 Erlang, 再安装 CouchDB
启动 C:\erl5.7.2\bin\couch_start.bat
访问 http://localhost:5984/_utils/index.html
更多细节: http://wiki.apache.org/couchdb/Installing_on_Windows
Database
A CouchDB database is a flat collection of these documents.
CouchDB Document
A CouchDB document is simply a JSON object.
A CouchDB document is an object that consists of named fields. Field values may be strings, numbers, dates, or even ordered lists and associative maps. An example of a document would be a blog post:
"Subject": "I like Django" "Author": "Allen" "PostedDate": "5/23/2009" "Tags": ["Python", "Django", "Framework"] "Body": "Django is a high-level Python Web framework that encourages rapid development and clean, I like Django."
CouchDB Views
Views are the primary tool used for querying and reporting on CouchDB documents. There are two different kinds of views: permanent and temporary views.
Views are defined with Javascript functions. Here is the very simplest function:
function(doc) { emit(null, doc); }
Node.js
默认的查询服务器使用JavaScript编写,运行在 Mozilla SpiderMonkey。
MongoDB 也使用 SpiderMonkey 作为服务端 JavasScript 执行引擎。
Node.js查询服务器
npm install -g couchjs
Python
- CouchDB Python Library
- Couchdbkit
- Using CouchDB with Django
- An Introduction to Using CouchDB with Django
分发版
- BigCouch A Highly Available, Fault-tolerant, Clustered Version of Apache CouchDB,不再更新,代码合并到CouchDB。
- IBM Cloudant
用户
- Hyperledger Project 使用CouchDB作为状态存储
- IBM Cloudant
- dotCloud open-source cloud federation platform
- Ajatus CRM A CRM that runs as a local Ajax web application
- Couchit minimal site creator
- http://scratchpad.cmlenz.net/