zoukankan      html  css  js  c++  java
  • redis

    不同数据库存储系统比较

    名称

    类型

    数据存储选项

    查询类型

    附加功能

    Redis

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

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

    每种数据类型都有自己的专属命令,另外还有批量操作(bulk operation)和不完全(partial)的事务支持

    发布与订阅,主从复制(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),并且被包含的每个字符串都是独一无二、各不相同的

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

    HASH

    包含键值对的无序散列表

    添加、获取、移除单个键值对;获取所有键值对

    ZSET(有序集合)

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

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

    一:字符串

    二:列表

    三:集合

    命令

    行为

    SADD

    将给定元素添加到集合

    SMEMBERS

    返回集合包含的所有元素

    SISMEMBER

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

    SREM

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

     四:散列

    五:有序集合

  • 相关阅读:
    css 水平垂直居中总结
    计算机网络之应用层详解
    WPF 中 InitializeComponent 不存在解决方案
    [翻译]lithium 快速上手(QuickStart)
    [翻译]lithium 安装
    [翻译]lithium介绍
    [模板]离散化
    [总结]中位数及带权中位数问题
    [总结]Floyd算法及其应用
    [模板]SPFA判负环
  • 原文地址:https://www.cnblogs.com/echoshao/p/6560797.html
Copyright © 2011-2022 走看看