redis学习(一)

redis 是一个远程内存数据库,是一款具有复制,持久化,分片等特性,并提供5种数据结构,不要求用户来适应数据库,数据格式可以可以是任意,并支持集群模式,常见的主从,副本,是一款高性能,高并发场景的技术。

一。redis与其他数据库的对比

1.使用内存存储in-memory的非关系数据库
2.支持的数据类型为5种,字符串,列表,集合,散列,有序集合。
3.每种数据类型都有自己的专属命令,另外还有批量操作和不完全的事务支持。
4.具有发布和订阅,主从复制,持久化,脚本。

二。使用redis的理由。

1.支持的数据结构满足需求,改变一个观念,从选择什么数据结构来实现需求。

2.因为放在内存里面,所以效率高。

三。5种数据结构简单介绍

1.String 可以是字符串,整数或者浮点数。
2.list 一个链表,链表上的每个节点都包含了一个字符串
3.set 包含字符串的无序收集器,并且被包含的每个字符串都是独立无二,各不相同的。
4.hash 包含键值对的无序散列表。
5.zset 有序集合,字符串成员与浮点数分值之间的有序映射,元素额排列顺序由分值的大小决定。


四,常见数据结构的基本命令。

1.String

set 设置存储在给定键中的值
  for example: set helloworld "你好世界"
get 获取存储在给定键中值。如果键不在了将返回一个nil
  for example: get helloworld
del 删除存储在给定键中的值
  for example: del helloworld

2.list


rpush 将给定值推入列表的右端。
  for example: rpush list-key item 值可以重复
lrange 获取列表在给定范围上的所有值。索引从0开始。
  for example: lrange list-key 0,1/0,-1 注: 0,1返回第一个到第二个的值,o,-1则返回所有的值。
lindex 获取列表在给定位置上的单个元素。
  for example: lindex list-key 0
lpop 从列表的左端弹出一个值,并返回被弹出的值。
  for example: lpop list-key

3.set


sadd 将给定元素添加到集合
  for example: sadd set-key item 值不能重复,如果重复将返回0
smembers 返回集合包含的所有元素
  for example:smembers set-key
sismember 检查给定元素是否存在于集合中
  for example: sismember set-key item 如果存在返回1,不存在返回0
srem 如果给定的元素存在于集合中,那么移除这个元素。
  for example: srem set-key item 如果存在这个值,则移除元素,并返回移除元素的数量

4.hash

hset 在散列里面关联起给定的键值对
  for example: hset hash-set sub-key1 value1 注: 类似map 但是如果key存在,存无法插入。
hget 获取指定散列键的值
  for example:hget hash-set sub-key1
hgetall 获取散列包含的所有键值对
  for example: hgetall hahs-set
hdel 如果给定键存在于散列里面,那么移除这个键
  for example: hdel hash-key sub-key1

5.zset

zadd 将一个带有给定分值的成员添加到有序集合里面
  for example:
    zadd zset-key 721 member1
    return: 1
    zadd zset-key 721 member1
    return : 0

zrange 根据有序排列的所处的位置,从有序集合里面获取多个元素
  for example:
    zrange zset-key 0,-1 withscores
    return:"member1" "721"
zraangebyscore 获取有序集合在给定分值范围内的所有元素
  for example:
    zrangebyscore zset-key 0 800 withscores
    return: "member1" "721" 指定分数之间没有值则返回空
zrem 如果给定成员存在于有序集合,那么移除这个成员
  for example:

    zrem zset-key member1 返回移除元素的数量。

 

posted on 2018-07-17 11:14  找到属于自己的天空  阅读(130)  评论(0编辑  收藏  举报

导航