1.NoSQL概述
什么是NoSQL?
NoSQL = Not Only SQL
非关系型的数据库
为什么需要NoSQL?
High performance -高并发读写
Huge Stotage -海量数据的高效率存储和访问
High Scalability && High Availbility -高可扩展性和高可用性
主流NoSQL有哪些?
Redis mongoDB
NoSQL数据库的四大分类
键值(Key-Value)存储:Redis
列存储:Hbase
文档数据库:mongoDB
图形数据库:Neo4j
NoSQL的特点:
易扩展
大数据量、高性能
灵活的数据模型
高可用
2.Redis安装
安装环境:
1.服务器环境(cat /etc/centos-release):Centos Linux release 7.4
2.Redis版本(http://download.redis.io/releases/)
3.预装软件(gcc,tcl):yum install tcl
服务端安装使用:
1.tar -xf redis-stable
2.make
3.make install
4.cp redis.conf /home/zhangyingjie/config/redis/redis.conf
5.vim /home/zhangyingjie/config/redis/redis.conf(将daemonize改为yes,端口号改为7200)
6.启动redis-server:/usr/local/bin/redis-server /home/zhangyingjie/config/redis/redis.conf
7.查看是否启动成功:ps aux|grep redis-server
客户端登录:
1.redis-cli -h 127.0.0.1 -p 7200
2.用info命令查看目前的信息
Redis数据类型:
String:
set string1 zhangyingjie
get string
set string2 4
get string2
incr string2 //加1
decrby string2 2 //减2
List(先入先出,不一定唯一):
lpush list1 12
lpush list1 13
rpop list1
llen list1 //查看元素的个数
Set(无序、集合中元素唯一):
sadd set1 12
sadd set1 13
scard set1 //查看集合中元素个数
sismember set1 13 //判断13是否在集合中
srem set1 13 //删除13
Hash:
hset hash1 key1 12
hget hash1 key1
hset hash1 key2 13
hset hash1 key3 13
hlen hash1 //查看个数
hmget hash1 key1 key2 //同时获取key1和key2的值
Sort Set:
zadd zset1 10.1 val1
zadd zset1 11.2 val2
zadd zset1 9.2 val3
zcard zset //查看个数
zrange zset1 0 2 withscores //排名从小到大的顺序
zrank zset1 val2 //查看val2的排名
如果两个元素的score一样,就按照该元素的字典顺序排