redis

不一样数据库存储系统比较redis

名称数据库

类型缓存

数据存储选项服务器

查询类型多线程

附加功能less

Redismemcached

使用内存存储(in-memory)的非关系数据库函数

字符串、列表、集合、散列表、有序集合性能

每种数据类型都有本身的专属命令,另外还有批量操做(bulk operation)和不彻底(partial)的事务支持spa

发布与订阅,主从复制(master/slave replication),持久化,脚本(存储过程,stored procedure)

memcached

使用内存存储的键值缓存

键值之间的映射

建立命令、读取命令、更新命令、删除命令以及其余几个命令

为提高性能而设的多线程服务器

MySQL

关系数据库

每一个数据库能够包含多个表,每一个表能够包含多个行;能够处理多个表的视图(view);支持空间(spatial)和第三方扩展

SELECT、 INSERTUPDATE、 DELETE、函数、存储过程

支持ACID性质(须要使用InnoDB),主从复制和主主复制 (master/master replication)

PostgreSQL

关系数据库

每一个数据库能够包含多个表,每一个表能够包含多个行;能够处理多个表的视图;支持空间和第三方扩展;支持可定制类型

SELECT、 INSERTUPDATE、 DELETE、内置函数、自定义的存储过程

支持ACID性质,主从复制,由第三方支持的多主复制(multi-master replication)

MongoDB

使用硬盘存储(on-disk)的非关系文档存储

每一个数据库能够包含多个表,每一个表能够包含多个无schema(schema-less)的BSON文档

建立命令、读取命令、更新命令、删除命令、条件查询命令等

支持map-reduce操做,主从复制,分片,空间索引(spatial index)

redis数据类型

结构类型

结构存储的值

结构的读写能力

STRING

能够是字符串、整数或者浮点数

对整个字符串或者字符串的其中一部分执行操做;对整数和浮点数执行自增(increment)或者自减(decrement)操做

LIST

一个链表,链表上的每一个节点都包含了一个字符串

从链表的两端推入或者弹出元素;根据偏移量对链表进行修剪(trim);读取单个或者多个元素;根据值查找或者移除元素

SET

包含字符串的无序收集器(unordered collection),而且被包含的每一个字符串都是独一无2、各不相同的

添加、获取、移除单个元素;检查一个元素是否存在于集合中;计算交集、并集、差集;从集合里面随机获取元素

HASH

包含键值对的无序散列表

添加、获取、移除单个键值对;获取全部键值对

ZSET(有序集合)

字符串成员(member)与浮点数分值(score)之间的有序映射,元素的排列顺序由分值的大小决定

添加、获取、删除单个元素;根据分值范围(range)或者成员来获取元素

一:字符串

二:列表

三:集合

命令

行为

SADD

将给定元素添加到集合

SMEMBERS

返回集合包含的全部元素

SISMEMBER

检查给定元素是否存在于集合中

SREM

若是给定的元素存在于集合中,那么移除这个元素

 

 四:散列

五:有序集合

相关文章
相关标签/搜索