名称 | 类型 | 数据存储选项 | 查询类型 | 附加功能 |
Redis | 使用内存存储(in-memory)的非关系数据库 | 字符串、列表、集合、散列表、有序集和 | 每种数据类型都有自己的专属命令,另外还有批量操作(bulk operation)和不完全(partial)的事务支持 | 发布与订阅,主从复制(master/slave replication),持久化,脚本(存储过程) |
memchached | 使用内存存储的键值缓存 | 键值之间的映射 | 创建命令、读取命令、更新命令、删除命令以及其他几个命令 | 为提升性能而设的多线程服务器 |
MySql | 关系数据库 | 每个数据库可以包含多个表,每个表可以包含多个行;可以处理多个表的视图(view);支持空间(spatial)和第三方扩展 | SELECT/INSERT/UPDATE/DELETE函数/存储过程 | 支持ACID性质(需要使用InnoDB),主从复制和主主复制(master/master replication) |
PostgreSql | 关系数据库 | 每个数据库可以包含多个表,每个表可以包含多个行;可以处理多个标的视图(view);支持空间和第三方扩展;支持可定制类型 | SELECT/INSERT/UPDATE/DELETE内置函数/自定义的存储过程 | 支持ACID性质(需要使用InnoDB),由第三方支持的多主复制 |
MongoDB | 使用硬盘存储(on-disk)的非关系文档存储 | 每个数据库可以包含多个表,每个表可以包含多个无模式(no-schema)的BSON文档 | 创建命令、读取命令、更新命令、删除命令、条件查询等 | 支持MapReduce操作,主从复制,分片,空间搜索(spatial-index) |
命令 | 行为 |
RPUSH | 将给定值推入列表的右端 |
LRANGE | 获取列表在给定范围上的所有值 |
LINDEX | 获取列表在给定位置的单个元素 |
LPOP | 从列表的左端弹出一个值,并返回被弹出的值 |