NoSQL:Not only SQL!
NoSQL基于以下需求:
高并发读写;海量数据的高效率存储和访问;高可扩展性和高可用性;
NoSQL数据库的四大分类:
键值存储;列存储;文档数据库;图形数据库;NoSQL的特点:易扩展;灵活的数据模型;大数据量,高性能;高可用。
高性能键值对数据库,支持的键值数据类型包括:
字符串类型;string列表类型;list有序集合类型;zset散列类型;hash集合类型;setRedis最广泛的应用就是用于缓存;另外还应用于网站访问统计,任务队列,数据过期处理,应用排行榜,分布式集群架构中的session分离;
src目录下包括一些文件:
/redis-benchmark //用于进行redis性能测试的工具
./redis-check-dump //用于修复出问题的dump.rdb文件
./redis-cli //redis的客户端
./redis-server //redis的服务端
./redis-check-aof //用于修复出问题的AOF文件
./redis-sentinel //用于集群管理
五种数据结构:
字符串; 字符串列表; 有序字符串集合; 哈希; 字符串集合;
Key定义的注意点:
不要太长;不要过短;统一的命名规范;
赋值:set key value
获取值:get key
删除:del key
查看所有key:keys *
递增/递减:incr / decr
指定key增加/减少:incrby/decrby key num
值追加字符串:append
赋值:hset key key1 value1
取值:hget
多个赋值/取值:hmset / hmget
删除:hdel
hexists、hlen、hkeys、hvals、hgetall
两种存储数据的方式:
ArrayList使用数组方式;LinkedList使用双向链接方式;命令:lpush、rpush、lrange、lpop、rpop、llen、lpushx、rpushx、lrem、lset、linsert
不允许出现重复的元素;
命令:
sadd、srem、smembers、sismember、sdiff、sinter、sunion、scard、srandmember、sdiffstore、