【数据库】Redis数据库
1.NoSQL简介
NoSQL(NoSQL = Not Only SQL ),意为“不仅仅是SQL”,泛指非关系型的数据库。
NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储。
2.Redis简介
Redis(Remote Dictionary Server)远程字典数据服务的缩写,由意大利人开发的是一款内存高速缓存数据库。使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API并提供多种语言的 API的非关系型数据库。
为什么叫内存高速缓存数据库?
缓存有两种类型:
• 页面缓存经常会用在CMS(content management system)里面。
• 数据缓存经常会用在页面的具体数据里面。
京东商城页面适合做数据缓存:如果数据在短时间内不会发生变化,且频繁被访问, 为了提高用户的请求速度和降低网站的负载, 将数据放到一个读取速度更快的介质上,称为数据缓存。该介质可以是文件、数据库、内存。内存经常用于数据缓存。
Redis和Memcache对比
3.Redis安装与配置
Redis的安装
- 首先上官网下载Redis 压缩包,地址 http://redis.io/download
- 压缩包执行解压操作并进行编译
tar xzf redis-x.x.x.tar.gz
cd redis-x.x.x/
make && make install(或者直接第4步)
sh utils/install_server.sh
Redis的部署
- 执行Redis-server 命令,启动Redis 服务
redis-server - 客户端redisClient
redis-cli # 登录redis
set name potizo - 当添加键值后,发现在当前运行的目录下,创建了一个文件:dump.rdb,这个文件用于将数据持久化存储
Redis内置数据类型
- string 类型 是二进制安全的。可以包含任何数据(eg: jpg 图片或者序列化的对象)。
从内部实现来看其实 string 可以看作 byte 数组,最大上限是 1G 字节。 - hash类型 是一个 string 类型的 field 和 value 的映射表.它的添加、删除操作都是O(1)(平均)。
- list类型 是一个 string 类型的双向链表。最大长度是(232 )。
- set 类型 是 string 类型的通过 hash table 实现的无序集合。添加、删除和查找的复杂度都是 O(1)。最大长度是(232 )。
Redis内置指令
http://doc.redisfans.com/