CouchDB,MongoDB和Redis中的哪个数据库适合从Node.js开始?

我得到更多的Node.js,并享受它。 我正在更多地进入Web应用程序开发。

我已经把自己的头围绕着Node.js,并且目前使用Backbone作为前端。 我正在做一些使用Backbone的应用程序来使用RESTful API与服务器进行通信。 在Node.js中,我将使用Express框架。

我到了一个地方,我需要一个简单的数据库在服务器上。 我习惯于Django的 PostgreSQL和MySQL ,但我需要的是一些简单的数据存储等。我知道关于CouchDB , MongoDB和Redis ,但我只是不确定要使用哪一个?

其中的任何一个更适合Node.js? 对于初学者来说,从关系型数据库转向其中的哪一个更好? 我只需要一些指导就可以select,我已经走到了这一步,但是当它来到这些types的数据库,我只是不知道…

他们中的任何一个更适合Node JS?

尤其适用于node.js,可能不是,但它们中的每一个都更适合基于您的应用程序需求或使用情况的特定场景。

Redis是一个先进的键值存储,可能是三个NoSQL解决scheme中速度最快的一个。 除了基本的关键数据操作之外,它还支持丰富的数据结构,如列表 , 集合 , 散列或pub / subfunction,这些function可以非常方便,即统计数据或其他实时的疯狂数据。 但是它缺乏某种查询语言。

CouchDB是面向文档的商店,非常耐用,提供MVCC ,REST接口,强大的复制系统和map-reduce查询function。 它可以用于广泛的场景,并替代你的RDBMS,但是如果你习惯于临时的SQL查询,那么你可能会遇到一些map-reduce视图的问题。

MongoDB也是面向文档的商店,如CouchDB,除了map-reduce之外,它还支持ad hoc查询,这可能是人们searchDRBMSreplace的关键特征之一,因为他们select了MongoDB而不是其他的NoSQL解决scheme。

对于初学者来说,从关系型数据库转向其中的哪一个更好?

既然你来自RDBMS世界,那么你可能习惯了SQL,那么我认为,你应该使用Mongodb,因为与Redis或CouchDB不同,它支持即席查询,查询机制类似于SQL。 不过,根据您的应用场景,可能会有些区域可能更适合Redis或CouchDB的工作。