Redis数据库介绍(1)

本文介绍了Redis,一种高性能的Key-Value数据库,详细阐述了Redis的五种数据类型:String、Hash、List、Set和Sorted Set,并列举了各种类型的应用场景,如缓存、任务队列、排行榜等。同时,对比了Redis与MySQL的关系型数据库优缺点。
摘要由CSDN通过智能技术生成

1、 Redis概述

什么是Nosql:Nosql叫做非关系型数据库,为了解决高并发、高可用、高可扩展,大数据存储等一系列问题而产生的数据库解决方案。

Redis是使用ANSI C语言开发的一个高性能Key-Value数据库,是当今速度最快的内存型非关系型(NoSQL)数据库,可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合。

Redis 支持很多特性,例如将内存中的数据持久化到硬盘中,使用复制来扩展读性能,使用分片来扩展写性能。

2、Redis数据类型

  • 2.1、 String 字符类型

String数据结构是简单的Key-value类型,value可以是String也可以是数字。

常用命令
get:获取key对应的vlaue
set:为一个key设置value,可配合ex/px参数设置key的有效期
getset:为一个Key设置value,并返回该key的原value
mget:获取多个key对应的value
mset:为多个key设置value
incr/incrby:将key对应的value自增1(或者指定的整型数值),并返回自增后的值。
decr/decrby:同上,自减。

应用场景:String是最常用的一种数据类型,普通的key/value存储都可以化为此类,即可以完全实现目前Memcached的功能,并且效率更高。还具有Redis的持久化,操作日志以及Replication等功能。除了和Memcached一样有get set incr decr等操作外,Redis还具有如下操作:

  • 获取字符串长度
  • 对字符串append内容
  • 设置和获取字符串的某一段内容
  • 设置和获取字符串的某一位bit
  • 批量设置一系列字符串的内容

使用场景:常规key-value缓存应用。常规计数:微博数、粉丝数。

实现方式:String在redis内部存储默认就是一个字符串,被redisObject所引用,当遇到incr ,decr等操作时会转成数值型进行计算,此时redisObject的encoding字段为int

  • 2.2、Hash 散列类型

key-value ,单点登录时采用这种数据结构存储用户信息,key为cookieId,value存放结构化对象。

常用命令
hset:将Key对应的hash中的field设置为value。如果该hash不存在,会自动创建一个。
hget:返回指定hash中field字段的值。
hmset/hmget:同hset和hget,可以批量操作同一个key下的多个fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值