Redis非关系型数据库

非关系型数据库(NOSQL):

         为了处理海量数据,需要将关系型数据库的关系 去掉。

        

         非关系型数据库设计之初 是为了替代 关系型数据库的

         Redis

        

         优点:1、海量数据的增删改查,非常轻松应对

                     2、海量数据的维护非常轻松。

         缺点:1、数据和数据之间没有关系,所以不能一目了然

                     2、非关系型数据库,没有关系,没有强大的事务保证数据的 完整和安全

 

         适合处理海量数据,效率。不一定安全

         奥运健儿奖牌总数

 

 

关系型数据库+非关系型数据库 ====》项目

 重要数据      海量操作数据,不重要

Redis使用环境:

1、关系型数据库的缓存存在

2、可以做任务队列

3、大量数据运算

4、排行榜

Redis非常擅长做大量数据的排行榜

redis数据类型【重点】

redis 使用的是键值对 保存数据。(map)

 

key:全部都是字符串

value:有五种数据类型

 

Key名:自定义,key名不要过长,否则影响使用效率

 

Key名不要太短,最好是有意义。

 

4、redis命令-String命令【重点】

字符串类型是Redis中最为基础、常用的数据存储类型,字符串在Redis中是二进制安全的,这便意味着该类型存入和获取的数据相同。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。

 

二进制安全和数据安全是没有关系的。

MySQL-关系型数据库,二进制不安全。【乱码丢失数据】

 

Redis  二进制数据安全

 

 

赋值:

  1. set key value:设定key持有指定的字符串value,如果该key存在则进行覆盖操作。总是返回”OK”

                              如果赋予相同的key,新的value会覆盖老的value

 

取值:

  1. get key:获取key的value。如果与该key关联的value不是String类型,redis将返回错误信息,因为get命令只能用于获取String value;如果该key不存在,返回(nil)

 

删除:

  1. del key :删除指定key

返回值是数字类型,表示删了几条数据

 

 

扩展:

  1. getset key value:先获取该key的值,然后在设置该key的值。
  2. incr key:将指定的key的value原子性的递增1.如果该key不存在,其初始值为0,在incr之后其值为1。如果value的值不能转成整型,如hello,该操作将执行失败并返回相应的错误信息。

相当于 ++i

  1. decr key:将指定的key的value原子性的递减1.如果该key不存在,其初始值为0,在incr之后其值为-1。如果value的值不能转成整型,如hello,该操作将执行失败并返回相应的错误信息。

相当于 –i

Incr和decr 只能对字符串是数字的 进行操作。

  1. append key value:拼凑字符串。如果该key存在,则在原有的value后追加该值;如果该key不存在,则重新创建一个key/value

 

 

String使用环境:

         主要用于保存json格式的字符串

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/z_ssyy/article/details/82735183