学习Redis之前,需要先了解NoSQL:
1.传统的关系型数据库满足不了数据的高并发读写
2.传统的关系型数据库满足不了海量数据的高效率存储和访问
3.NoSQL有高可扩展性和高可用性
4.NoSQL的主流产品:Redis MongoDB ......
NoSQL数据库的四大分类:
1.键值(Key-Value)存储,如Redis(优势:快速查询 劣势:存储数据缺少结构化)
2.列存储,如HBase(优势:快速查询,扩展性强 劣势:功能相对局限)
3.文档数据库,如mongoDB(优势:数据结构要求不严格 劣势:查询性能不高,确实统一查询的语法)
4.图形数据库,如InfoGrid(优势:利用图结构相关算法 劣势:需要对整个图做计算才能得到结果,不容易做分布式的集群方案)
NoSQL的特点:
1.易扩展
2.大数据量,高性能
3.灵活的数据模型
4.高可用
Redis是什么
NoSQL(not only sql)数据库的一种,主要以键值(Key-Value)的形式来存储数据,支持的键值数据类型有字符串类型、列表类型、有序集合类型、散列类型、集合类型,应用场景有缓存、排行榜、任务队列、网站访问统计、数据过期处理、分布式集群架构中的session分离。
如何安装Redis
1.安装环境:需要安装在Linux系统中,由于Redis是有c语言编写,所以需要在linux系统中安装gcc服务
2.下载redis压缩包并解压
3.进入redis解压文件并进行编译(执行make)
4.执行make PREFIX=/path(安装路径) install进行安装
5.进入安装目录下的bin路径,会有几个文件:redis-server(启动文件)、redis-cli(命令行客户端)、redis-benchmark(性能测试文件)、redis-check-aof(aof文件修复工具)、redis-check-dump(rdb文件检查工具)
6.拷贝解压包的redis.conf文件到安装目录下
7.启动redis(启动redis-server文件,这个方法为前端启动;若要后端启动,需要将redis.conf文件的daemonize改为yes,并执行 ../redis/redis-server ../redis/redis.conf命令)
8.停止redis(进入命令行客户端,执行shutdown命令)
Jedis(官方首选的JAVA客户端开发包)的使用
1.需要的jar包:jedis-x.x.x.jar和commons-pool2-x.x.jar
2.创建JAVA类去连接Redis(1.Jedis jedis = new Jedis("IP", port); 2.使用连接池的方式连接:设置JedisPoolConfig,获取连接池JedisPool,通过连接池获取Jedis)
Redis的一些常用操作
1.存储/获取字符串类型数据:set key value(如 set name fly)/get key(如get name)