NoSQL = Not Only SQL(不仅仅是SQL) ,泛指non-relational(非关系型数据库),而redis就是非关系型数据库的一种,NoSQL数据库的典型特点就是去掉了关系数据库的关系型特性,数据之间一旦没有关系,使得扩展性能读写性能都大大提高。
Redis的数据类型
redis的数据类型有5种,分别是String、hash、list、set、zset。
String类型:
Redis
中最基本的数据类型,它能存储任何形式的字符串,包括二进制数
据,序列化后的数据,
JSON
格式数据。它是以key=value的键值对存储数据的。
eg:
hash类型:
语法:
hset hash
表的
key field value
作用:将哈希表
key
中的域
field
的值设为
value
,如果
key
不存在,则新建
hash
表,执行
赋值,如果有
field ,
则覆盖值。
我的理解是:在每个key下存储一个hash表以(field:value)的形式存储的散列表。
eg:
list类型:
Redis
列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左
边)或者尾部(右边)
我的理解是:在每个key值下存储一个list,而且list元素的顺序就是元素放入的相对顺序(从左往右放,或者从右往左放)
eg:
set类型:
redis
的
Set
是
string
类型的无序集合,集合成员是唯一的,即集合中不能出现重复的数据
eg:
zset类型:
redis
有序集合
zset
和集合
set
一样也是
string
类型元素的集合,且不允许重复的成员。
不同的是
zset
的每个元素都会关联一个分数(分数可以重复),
redis
通过分数来为集合中的
成员进行从小到大的排序。
eg: