我不认为我完全理解couchDB

时间:2011-05-06 09:21:10

标签: couchdb

我认为我不了解CouchDB的工作原理。我的印象是一切都在客户端运行,所以这并不意味着它对于存储用户数据毫无用处,因为任何人都可以编写一个简单的脚本来访问这些信息?这对我来说没有意义,我是否完全错了?

2 个答案:

答案 0 :(得分:4)

除了map-reduce和更新操作之外,CouchDB 中的所有内容都在客户端上运行。在此上下文中, client 表示客户端连接到数据库服务器,它通常是在 Web服务器上运行的应用程序或脚本。对于其他数据库系统也是如此:要从PHP脚本连接到MySQL数据库,您需要使用MySQL客户端库。

CouchDB的一个特殊之处在于,它不使用自己的传输协议(像其他系统一样使用MySQL),而是使用HTTP,这几乎是由每种可用语言实现的。这使得CouchDB客户端的开发变得非常容易。

CouchDB的另一个特殊之处在于它的安全模型允许您让最终用户直接连接到数据库。在这种情况下,您将编写一个完全在用户浏览器中运行的JavaScript应用程序,并通过AJAX查询数据库。然后,服务器将以只读或读写模式对用户进行身份验证,并仅授予用户被允许访问的那些数据库的访问权限。虽然这需要出价服务器端脚手架(注册新用户并为他们创建一个全新的数据库)。

但你不必。我的公司使用CouchDB作为通用持久存储,在互联网上完全不可见,只允许我们的Web服务器访问它。

答案 1 :(得分:1)

这里有一本关于CouchDb的好书:http://guide.couchdb.org/