一、概念:

Redis:一个开源、支持网络、基于内存、键值对存储数据库。

特点:它可以支持多种数据类型。

二、数据类型

1)Redis String

具体说明:

一般的普通的k到v一个映射是String到String类型的一个映射,而redis的k到v的映射,其中的Redis可以是任意类型,另外,Redis

keys是采用二进制序列的。

特点:

Redis 的字符串可以支持任意形式的数据,但是它的单次储存量有限,仅512M字节。

启动redis-cli来看看Redis strings数据类型。

$ sudo service redis-server start
$ sudo su
$ cd
$ redis-cli
$ set mykey somevalue
$ get mykey

前三行怎么理解?查看一下linux命令。

一般set命令下key的不可以相同,但是可以在其后面加参数之后就可以相同。

 set mykey somevalue nx
set mykey somevalue xx

特点2:

String有加法和减法的功能,incr具有加法具有加法功能,如果加多个则用incrby;类似的还有decr和decrby,这则是减法功能。

 >set count
>incr count
>incr count
>incrby count
 >set count
>decr count
>decr count
>decrby count

自己再测试一次上面的减法。

 >mset a  b  c
>mget a b c

2)List

key和list列表是相互依存的,当一个空表插入key,则不是空表,反之如果将表删除则key不存在。

 >rpush mylist a
>rpush mylist b
>lpush mylist first
>lrange mylist -

push压栈  pop弹栈  range显示

阻塞操作:

它有类似java里面的加锁功能,另外由于它的特性,就应用场景而言,容易想到聊天软件的聊天记录。

3)Redis Hashes

它是字符串的字段和字符串的值的映射。你可以将其存在很多其他的对象存储在一个Redis实例中。

 >hmset user:  username antirez birthyear  verified
>hmset user: username
>hmset user: birthyear
>hmsetall user: 1000
 verified 1 是什么意思?
> hincrby user: birthyear 

这个hincrby是什么意思?

hincrby: 返回哈希表key中域的值。

参看: http://doc.redisfans.com/hash/hincrby.html

4)无序集合

特点:和java里面的集合类似,具有无序性和互异性,所以它对于元素可以去重,并且也可以合并求交集,找出共同元素。

     >sadd myset   

     >smembers myset

sadd命令:产生无序集合,返回集合的元素的个数。

smembers命令:用于查看集合的元素。

sismember命令:查看集合是否存在,匹配项包含集合名和集合元素。

5)有序集合

zadd命令:用于添加元素,另外每个元素有一个权重的概念,并从高到低地排出来,另外它可以看做是一个无重复的列表。

作用: 有序的元素,快速的存在性测试,快速访问集合的中间元素!

 zadd hackers  "Alan"
zadd hackers "Blue" 疑问:hackers 和 1940这两个有什么含义? 百度一下。 zadd
 zrange hackers  -
zrevrange hackers -1
zrange是正序查看 zrevrange是反序查看

可以返回结果相应的记录参数。

zrange hackers  - withscores

东西不在学多,重在学进去,当然能够多学点更好,但是最好能学透,如果你花了时间和没花时间一样的话,

则很可惜,就像linux一样,你以前学过,另外,还有java,这个你要注重学习方法,另外也要注意方法。

学完之后要用脑袋总结一下,然后根据脑袋里面的东西进行写博客,你会学得更透,温故知新。

最新文章

  1. 安卓中級教程(5):ScrollView與refreshable之間的設置
  2. Swift:闭包
  3. php正则表达式、数组
  4. Swift3.0语言教程使用Unicode范式标准化获取字符串
  5. 关于最近在做的一个js全屏轮播插件
  6. 开发工具 之 PowerDesigner
  7. [Hive - LanguageManual] GroupBy
  8. python join和split和strip用法
  9. Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
  10. openStack images概念及维护
  11. 创建简单的MVC项目
  12. python入门基础
  13. 记录一次widora sdk编译ipk 实战编译redis
  14. http-server让你在任何目录下都可以创建web服务
  15. redis学习 (key)键,Python操作redis 键 (二)
  16. QT使用SQLite
  17. 9月list
  18. SMS
  19. android WebView中js的alert()失效
  20. OpenProcess、GetExitCodeProcess、TerminateProcess

热门文章

  1. MySQL高可用架构之MySQL5.7.19 PXC
  2. 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_05 List集合_4_Vector集合
  3. .Net Core 使用 System.Drawing.Common 在CentOS下报错
  4. 把数据库中的数据制作成Excel数据
  5. assert 与if
  6. Smashing Nodejs 读书笔记(一)
  7. python控制流-提前结束进程
  8. 洛谷 - P4008 - 文本编辑器 - 无旋Treap
  9. Hdu 4578 Transformation (线段树 分类分析)
  10. asp.net Base64加解密