Redis 学习笔记

1.NOSQL 概述

1.什么是nosql?

       no only sql  非关系型数据库

2.为什么 需要nosql、

        High performance  高并发读写

        huge storage 海量数据的高效率个存储和访问

        high scalability && high availability 高可扩展性和高可用性

3.redis mongoDb 

4.Nosql 数据库的四大分类

        键值(key-value)存储    

        列存储

        文档数据库

        图形数据库

5.特点

        易扩展

        灵活的数据模型

        大数据量,高性能

        高可用

2.redis 概述

1.redis的由来

作为一个开发人员来说,如果你对某一个应用软件敢于不爽,,一般你会怎么做呢。。。。。那么一般你就忍了。。不能忍,就有了redis

2.高性能键值对数据库,支持的键值数据类型(读:11w/s 写:8.8w/s)

        字符串类型

        列表类型

        有序集合类型

        散列类型

        集合类型

3.redis的应用场景

        缓存

        任务队列

        网站访问统计

        数据过期处理

        应用排行榜

        分布式集群架构中中session分离

3.redis安装  jedis入门  

环境:

    虚拟机:VMware

    Linux:centos-6.5


客户端:Xshell

lnmp环境

4.redis 数据结构

1.jedis介绍

        jedis是redis官方首选的java客户端开发包

https:://github.com/xetorthio/jedis


1.五种数据类型:

        字符串    string

        哈希        hash 

string key 和 string value的map容器

        字符串列表    list

ArrayList使用数组方式

LinkedList使用双向链接方式

双向链表中增加数据

双向链表中删除数据

        字符串集合  set

和list类型不同的是,set集合中不允许出现重复的元素

set可包含的最大元素数量是4294967295

跟踪一些唯一性数据

用于维护数据对象之间的关联关系

        有序字符串集合  sorted set

sorted-set和set的区别

sorted-set中的成员在集合中的位置是有序的

如大型在线游戏积分排行榜

构建索引数据

2.key定义的注意点:

        不要过长

        不要过短

        统一的命名规范


3.存储string  max 512m 常用的命令

        赋值    set  getset

        取值    get

        删除    del

        数值增减    incr  decr

        命令扩展     

4.存储Hash  常用命令:

        赋值              hset    hmset

        取值              hget   hmget    hgetall

        删除              hdel    

        增加数字       hincrby 

        自学命令       hexists    hlen    hkeys    hvals  

5.存储list  常用命令:

        两端添加        lpush rpush

        查看列表        lrange    

        两端弹出        lpop    rpop

        获取列表元素个数        llen

        扩展命令          lpushx  rpushx  lrem  lset  linsert  rpoplpush

6.存储set  常用命令:

        添加/删除元素             sadd    

        获得集合中的元素        smembers  sismember

        集合中的差集运算        sdiff

        集合中的交集运算        sinter

        集合中的并集运算        sunion

        扩展命令    scard    srandmember    sdiffstore    sinterstore    sunionstore    

7.存储sorted-set  常用命令

        添加元素        zadd

        获得元素        zscore    zcard

        删除元素        zrem

        范围查询        zrange

        扩展命令        zrevrange    zremrangebyrank    zremrangebyscore    zrangebyscore    zincrby    zscore    zcount

5.keys的通用操作

keys my? 

del key 

exists key

rename key

expire key 1000

ttl key

type key

6.redis的特性

最多支持16个数据库

select 0  选择数据库

redis事务:

multi      开启事务

exec       提交事务

discard   事务回滚 

7.redis持久化

            数据同步到硬盘上;

            持久化使用的方式:

rdb持久化

aof持久代

无持久化

同时使用RDB和AOF

RDB方式:                  

                              优点:

可将数据库保存为一个文件,便于备份;

可方便移植;

性能最大化,可开启小的进程处理持久化操作;

                                缺点:

 不能保证数据完整性;

 当数据过大,进程处理将会延迟几百到一千毫秒;

                                配置过程:

编辑redis.conf文件:vim redis.conf

save 900 1 每900秒至少有一个修改,记录一次快照,同步到磁盘上

save 300 10 每300秒至少有10个修改,记录一次快照,同步到磁盘上

save 60 10000 每60秒至少有10000个修改,记录一次快照,同步到磁盘上

找到时间戳,可配置秒、分、时与之存储量

rdb文件默认保存在redis安装目录                  

               2.AOF方式:               

                                优点:

同步写入频率高;

不破坏写入日志数据;

当数据过大,可启动修改重写机制,保证修改数据的更新;

                                缺点:

 效率低于RDB;

 文件偏大于RDB文件;

                                配置过程:

编辑redis.conf文件:vim redis.conf

找到appendonly no 修改为yes

修改策略:

配置文件:

appendfsync  always  每修改一次都记录,同步到磁盘中;

appendfsync everysec 每秒中同步一次;

appendfsync no           不同步到磁盘中

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355