一,关于nosql
NoSQL,指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。(来自百度百科哈)
二,nosql数据库的分类
1,键值对存储(值的类型主要以哈希表为主) Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB
2,列存储Cassandra, HBase, Riak
3,文档形式存储CouchDB, MongoDb,SequoiaDB(国内的,已经开源)
4,图形数据库Neo4J, InfoGrid, Infinite Graph。
三,Redis历史
2008年,意大利的一家公司Merzia推出了一款基于MySQL的网站实时统计系统LLOOGG,然而没过多久该公司的创始人 Salvatore Sanfilippo便对MySQL的性能感到失望,于是他决定亲自为LLOOGG量身定做一个数据库,并于2009年开发完成,这个数据库就是Redis。 不过Salvatore Sanfilippo并不满足只将Redis用于LLOOGG这一款产品,而是希望更多的人使用它,于是在同一年Salvatore Sanfilippo将Redis开源发布,并开始和Redis的另一名主要的代码贡献者Pieter Noordhuis一起继续着Redis的开发,直到今天。
Salvatore Sanfilippo自己也没有想到,短短的几年时间,Redis就拥有了庞大的用户群体。Hacker News在2012年发布了一份数据库的使用情况调查,结果显示有近12%的公司在使用Redis。国内如新浪微博、街旁网、知乎网,国外如GitHub、Stack Overflow、Flickr等都是Redis的用户。
VMware公司从2010年开始赞助Redis的开发, Salvatore Sanfilippo和Pieter Noordhuis也分别在3月和5月加入VMware,全职开发Redis。
四,Redis的概念
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:字符串类型、散列类型、列表类型、集合类型、有序集合类型。
五,Redis的应用场景
1,缓存(数据查询、短连接、新闻内容、商品内容等等)。(***多使用)
2,分布式集群架构中的session分离。
3,聊天室的在线好友列表。
4,任务队列。(******、抢购等等)
5,应用排行榜。
6,网站访问统计。
7,数据过期处理(可以******到毫秒)
六,Redis的安装 (单机版安装)
a,访问redis官网下载安装包 https://redis.io/
b,文件上传 在root用户下使用快捷键 Alt+p ,使用put命令上传文件
c,解压安装包 如图
解压后
d,进入解压后的目录进行编译(耐心等待...)
e,安装到制定目录
f,拷贝配置文件到安装目录下
g,启动测试
若正常启动则为安装成功
dump.rdb为数据存储的文件,在bin同级目录下启动服务,该文件会在此生成
七,前端启动与后端启动
直接运行bin/redis-server将以前端模式启动,前端模式启动的缺点是ssh命令窗口关闭则redis-server程序结束,不推荐使用此方法
后端启动需要修改配置文件,启动方式如下图