一.nosql(非关系性数据库):

mongoDB
hbase
redis
nulch
hive
pig
mahout
zookeeper

二:redis 数据类型

1.存储string:

常用命令:
设置/取值:
set key value
get key
getset key value
del key
数值增减:
incr key
decr key
扩展命令:
incrby key increment
decrby key decrement
append key value

2.存储hash:键值对

常用命令:
赋值:
hset key field value
hmset key field value [field2 value2 ...]
取值:
hget key field
hmget key field field ...
hgetall key
删除:
hdel key field [field...]
del key
增加数字:
hincrby key field increment
自学命令:
hexists key field
hlen key
hkeys key
hvals key

3.存储list:有序可重复,按插入顺序排序的字符串链表

常用命令:
两端添加:
lpush key values[value1 value2 ...]
rpush key values[value1 value2 ...]
查看列表:
lrange key start end
两端弹出:
lpop key
rpop key
获取列表中元素的个数
llen key
扩展命令:
lpushx key value
rpushx key value
lrem key count value
lset key index value
linsert key before|after pivot value
rpoplpush resource destination
rpoplpush mylist1 mylist2
rpoplpush mylist1 mylist1

4.存储set:无序不重复

常用命令:
添加/删除元素:
sadd key values[value1,value2...]
srem key members[member1,member2...]
获得集合中元素:
smembers key
sismember key member
集合中差集运算:A-B
sdiff key1 key2...:
集合中交集运算:AnB
sinter key1 key2...:
集合中并集运算:AuB
sunion key1 key2...:
扩展命令:
scard key
srandmember key
sdiffstore destination key1 key2...
sinterstore destination key1 key2...
sunionstore destination key2 key2...

5.存储sortedset:有序不重复

常用命令:
添加元素:
zadd key score memeber score2 member2...
获得元素:
zscore key member
zcard key
删除元素:
zrem key member[member...]
zremrangebyrank key start stop
zremrangebyscore key min max
范围查询:
zrange key start end [withscores]
zrange myzset 0 -1 withscores
zrevrange key start stop [withscores]
扩展命令:
zrangebyscore key min max [withscores] [limit offset count]
zincrby key increment member
zcount key min max
zrank key member
zrevrank key member

6.keys值的通用操作:

keys pattern : *表示任意一个或多个; ?表示任意一个字符
del key1 key2...
exists key
rename key newkey
expire key
ttl key
type key

三:redis特性:

1.多数据库:

一个redis实例最多可提供16个数据库,下标从0到15,默认连接是第0号数据库,也可以通过select选择连接哪个数据库。

select 1
move key 2

2.服务器命令:

ping
echo
select
quit
dbsize :当前数据库中key的数目
info :服务器的信息和统计
flushdb :删除当前选择数据库中的所有key
flushall :删除所有数据库中的所有key

3.消息订阅与发布:

subscribe channel :订阅频道
subscribe mychat
psubscribe channel* :批量订阅频道
psubscribe s* :订阅以‘s’开头的频道
publish channel content :在指定的频道中发布消息
publish mychat 'today is a newday'

4.redis事务:

multi :开启事务
discard :事务回滚
exec :提交事务
multi
incr num1
incr num2
incr num3
discard/exec

四:redis持久化:数据从内存中同步到硬盘中

redis支持两种方式持久化:一种RDB;一种AOF.

1.RDB(默认支持,无需配置)

在指定时间间隔内将内存中的数据集快照写入磁盘

快照参数设置:
save 900 1 15分钟 至少1个key发生变化,即dump内存快照
save 300 10 5分钟 至少10个key发生变化,即dump内存快照
save 60 10000 1分钟 至少10000个key发生变化,即dump内存快照

2.AOF

以日志形式记录服务器所处理的每一个写操作,在redis服务器启动之初会读取该文件来重新构建数据库。

配置信息:
always 每次有数据修改发生时写入aof文件
everysec 每秒钟同步一次
no 从不同步

二:Redis数据类型的更多相关文章

  1. 二.redis 数据类型

    本文介绍下redis支持的各种数据类型包括string,list ,set ,sorted set 和hash 1. keysredis本质上一个key-value db,所以我们首先来看看他的key ...

  2. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

  3. Redis系列(二)—— 数据类型及其使用

    Redis数据类型及其使用 参考:http://www.cnblogs.com/jackluo/p/3173436.html Redis支持五种数据类型:string(字符串),hash(哈希),li ...

  4. Redis笔记(二):Redis数据类型

    Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...

  5. redis数据类型及使用场景

    Redis数据类型  String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令:  set,get,decr,incr,mge ...

  6. Redis-cluster集群【第一篇】:redis安装及redis数据类型

    Redis介绍: 一.介绍 redis 是一个开源的.使用C语言编写的.支持网络交互的.可以基于内存也可以持久化的Key-Value数据库. redis的源码非常简单,只要有时间看看谭浩强的C语言,在 ...

  7. 深入理解redis数据类型

    转载请注明出处:https://www.cnblogs.com/wenjunwei/p/9720033.html redis的存储模型 redis不是普通的键值对存储,它实际上是一个数据结构存储服务器 ...

  8. 缓存数据库-redis数据类型和操作(list)

    转: 狼来的日子里! 奋发博取 缓存数据库-redis数据类型和操作(list) 一:Redis 列表(List) Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素导列表的头部( ...

  9. Redis 数据类型分析 字符串 哈希 列表 集合 有序集合 优缺点 分析 注意事项 存储结构

    一.提高Redis使用性能秘诀 KEY尽量少的原则,能放在1个KEY的就放入1个KEY,KEY开销很大尽量减少与Redis发生的交互次数,能批量的就批量,能事务.管道的就事务.管道从业务架构分析确定使 ...

随机推荐

  1. code::blocks学习

    code::block不能调试问题 今天在codeblock不能进行调试,百度总结如下: 1 进行调试的必须是一个project而不能是一个单一的cpp文件. 2 project的路径不能包含中文,尽 ...

  2. linux修改用户名

      貌似只需要改红色的就行了,要保险就都改,比如阿里云服务器就要2个都改   ubuntu:修改 /etc/hostname               修改 /etc/hosts  比如:127.0 ...

  3. JPush Android 推送如何区分开发、生产环境

    我们 Android 开发者在使用极光推送时可能会发现,在通过官方控制台进行推送时.只有 iOS 区分了开发和生产环境,而 Android 则没有.但实际开发中又确实经常需要针对开发和生产环境分别来推 ...

  4. this指向的一个小总结

    凡是在函数内部调用的函数的this的指向都是window 定时器,延时器this的指向都是window 在事件中一般情况下this的指向都指向当前的DOM对象 在对象函数中this的指向一般情况下都指 ...

  5. P4093 [HEOI2016/TJOI2016]序列

    题目链接 题意分析 我们假设每一个数都有一个变动范围\([L_i,R_i]\) 那么我们令\(dp[i]\)表示以\(i\)结尾的最长不下降子序列的长度 那么就是\(dp[i]=max\{dp[j]+ ...

  6. 用IDA辅助分析grub的小技巧

    IDA可以辅助我们分析grub的代码,但是bootloader本身只是bin文件,为了让IDA能正确识别分析,我们还需要提供一些基本的参数,比如文件加载到内存的地址等. 图中MBR是加载到0x7C00 ...

  7. leetcode-137-Single Number II-第二种解法

    题目描述: 详细的题目描述见上一篇博客<leetcode-137-Single Number II-第一种解法>,这里简单说一下. 有一个数组,所有元素都出现了三次,除了一个元素只出现了一 ...

  8. 2016级算法第二次上机-E.AlvinZH的儿时梦想——运动员篇

    862-AlvinZH的儿时梦想--运动员篇 思路 难题. 应该想到,不管给出的数据如何,每一个淘汰的人不会对最终答案产生任何影响,所以每次淘汰就把人除掉就可以了,最后剩下的两个人计算它们从开始到相遇 ...

  9. 浅谈Object.create

    在网上发现了Object.create的用法,感觉很是奇怪,所以学习记录下 var o = Object.create(null); console.log(o); // {} o.name = 'j ...

  10. Linux Mint下FireFox安装Adobe Flash Player

    最近在为自己的家里一台很老的机子(由于微软不再支持windows,windows10什么的不是这个老机子可以带的起来的233)选择一个合适的linux系统安装.看来看去,最终选择了排行很靠前,感觉也不 ...