我越来越喜欢Node.js岁了,而且很享受.我将更多地投身于Web应用程序开发.

我已经考虑了Node.js,目前使用Backbone作为前端.我正在制作一些应用程序,这些应用程序使用主干与使用RESTful API的服务器通信.在Node.js中,我将使用Express框架.

我已经到了需要在服务器上建立一个简单数据库的地步.我习惯了DjangoPostgreSQLMySQL,但我这里需要的是一些简单的数据存储等.我知道CouchDB,MongoDBRedis,但我就是不确定该用哪一个?

它们中的任何一个都更适合 node .js?对于初学者来说,从关系数据库转向其他数据库,有哪一个更好?我只是需要一些 Select 的指导,我已经走了这么远,但当涉及到这些数据库时,我只是不确定...

推荐答案

他们中有没有哪一个更适合 node JS?

更适合于node.js的可能不是,但是根据您的应用程序需求或用例,它们中的每一个都更适合某些场景.

Redis是一个高级键值存储,可能是三个NoSQL解决方案中速度最快的.除了basic key个数据操作之外,它还支持丰富的数据 struct ,如listssetshashespub/sub功能,这些功能非常方便,即在统计或其他实时疯狂方面.然而,它缺乏某种查询语言.

CouchDB是面向文档的存储,非常耐用,提供MVCC、REST接口、great replication系统和map-reduce查询.它可以用于大范围的场景,并替代您的RDBMS,但是如果您习惯于特殊的SQL查询,那么它的map-reduce视图可能会有某些问题.

MongoDB也是像CouchDB一样的面向文档的存储,除了map reduce之外,它还支持即席查询,这可能是搜索DRBMS替代方案的人 Select MongoDB而不是其他NoSQL解决方案的关键特性之一.

他们中有没有哪一个更适合 初学者,从关系型迁移 数据库?

既然您来自RDBMS世界,而且您可能已经习惯了SQL,那么我认为您应该使用MongoDB,因为与Redis或CouchDB不同,它支持即席查询,并且查询机制类似于SQL.但是,根据您的应用程序场景,在某些领域,Redis或CouchDB可能更适合做这项工作.

Database相关问答推荐

如何在 N1QL 查询(Couchbase 查询)中使用 LENGTH() 字符串函数

如何使用错误消息中指定的 tbspaceid tableid 在 DB2 中查找表和列

时间数据库设计,有一个转折(live vs draft rows)

数据库排序规则更改问题 (SQL Server 2008)

如何将 MySQL 5.5.40 升级到 MySQL 5.7

SQL 概念 LEFT OUTER JOIN 和 WHERE NOT EXISTS 基本相同吗?

数据库供应商如何实现事务?

NoSql DB 和 OO Db 有什么区别?

Postgresql 从多个表中删除多行

将实体框架中的字符串列映射到枚举

SQL查询7天前的数据

为 Java servlet 管理数据库连接的最佳方法

在 SQL Server 中,如何以类似于 Oracle 的SELECT FOR UPDATE WAIT的方式锁定单行?

从 postgresql 转储文件填充 MySQL 数据库

MongoDB中的数据库数据大小

复式记账的关系数据模型

XML、CSV 或数据库格式的 ICD-9 代码列表

如何以 SYS 身份在 Java 中连接到 Oracle?

由多个用户编辑数据库记录

位图索引有何帮助?