redis

文章目录

Redis 是一个高性能的key-value数据库

特点

  • 支持数据持久化,可以将内存中的数据保存在硬盘中,重启中再次加载可用。
  • 不仅仅提供key-value类型的数据,还支持list、set、zset、hash等数据结构的存储
  • 支持数据备份,即master-slave模式的数据备份
  • 性能极高
  • 丰富的数据结构
  • 原子操作
  • 丰富的特性:key过期等等

数据类型

Redis支持五种数据类型,string、hash、list、set、zset(有序集合,sorted set)

string 字符串

string值是redis中最基本的值,一个key对应一个value。
string类型是二进制安全的,这意味着可以包含任何数据,比如jpg图片或者序列化对象。
string类型最大能够存储512M的数据

hash 哈希

hash是一个键值对集合(key => value)集合

1
2
3
4
5
6
7
8
9
10
HMSET myhash field1 value1 field2 value2

HGET myhash field1
// value1

HGETALL myhash
1) field1
2) value1
3) field2
4) value2

list 列表

Redis列表是简单的字符串列表,按照插入的顺序排序。可以添加一个元素到列表的头部和尾部

1
2
3
4
5
6
7
lpush mylist value1
lpush mylist value2

lrange mylist 0 10
//result:
// 1) "value2"
// 2) "value1"

set 集合

set是string类型的无序集合。
set通过哈希表实现,所以添加,删除,查找的复杂度都是O(1)

1
2
3
4
sadd myset member1 member2

smembers myset

zset 有序集合

与set一样是string类型的集合,且不允许重复成员。
不同的是每一个元素都会关联一个double类型的分数。redis通过分数来为集合中的成员从小到大来排序。
zset中的成员是唯一的,但分数(score)可以重复。

1
zadd key score member

commands

命令大全

分享到: