Redis-01-NoSQL简介及Redis数据库安装

一.NoSQL简介

1.1 NoSQL概述

NoSQL即not only SQL(不仅仅是SQL)的意思,学名叫做非关系型数据库,和我们常见的关系型数据库(如MySQL,Oracle)在原理上有很大差异
非关系型数据库能很好解决web2.0纯动态网站面对的高并发和规模大扩展性受限等问题。非关系型数据库可以解决三个关系型数据库难以解决的问题。1.数据库高并发读写。2.对海量数据的高效率存储和访问。3.数据库的高扩展性和高可用

1.2 NoSQL数据库的分类

关系型数据库有MySQL,Oracle等不同的种类。非关系型数据库也有很多不同的产品种类,所有这些产品根据其存储方式的不同主要分为4大类:

种类 典型产品 应用方向 数据模型 优势 劣势
键值(key-value) Redis,Voldemort,Oracle BDB 内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等。 key-value(键值对) 查询速度快 数据没有结构
列存储数据库 Cassandra,HBase,Riak 分布式文件系统 以列簇式存储,将同一列数据存在一起 查找速度快,可扩展性强,更容易进行分布式扩展 功能相对局限
文档型数据库 CouchDB, MongoDb web应用 key-value,value是结构化的数据 数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定义表结构 查询性能不高,而且缺乏统一的查询语法。
图形(Graph)数据库 Neo4J,InfoGrid,Infinite Graph 社交网络,推荐系统等。专注于构建关系图谱 图结构 利用图结构相关算法。比如最短路径寻址,N度关系查找等 很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案

1.3 NoSQL数据库的特点

NoSQL数据库最重要的优点就是在大数据的存取上具备关系型数据库无法比拟的性能优势。主要是因为其如下特点

1)易扩展

非关系数据库去掉了关系数据库的关系特性。数据之间无关系,这样就容易扩展。

2)高数据量时的高性能

非关系数据库在数据量非常大时依然能具有很高的读写性能

3)灵活的数据模型

非关系数据库无需实现为要存储的数据建立字段,随时可以存储自定义的数据格式。而建立字段在关系型数据库中确实一件必须的事情,在数据量比较大时,建立字段是一个相当麻烦的事情

4)高可用

非关系数据库在不影响性能的情况下可以方便的实现高可用的架构。

二.Redis简介

Redis是一个开源的使用C语言编写的Key-Value类型的非关系数据库,并提供多种语言的API。Redis是当前最流行的非关系数据库之一。
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。
在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
redis的官网地址:redis.io
目前,Vmware在资助着redis项目的开发和维护。

三.Redis安装

Redis一般安装在Linux系统上,Redis是C语言编写的,所以Redis的安装和运行需要C语言环境

Redis安装步骤:

1)安装C语言环境

使用yum自动安装:运行命令yum install gcc-c++

2)下载安装包

Redis官网下载最新的Redis安装包,我是用的版本是redis-3.0.0
也可以从CSDN下载:redis安装包

3)解压安装包到

解压文件到/usr/local目录下,也可以解压到别的目录
运行命令tar -xvf redis-3.0.0.tar.gz -C /usr/local

4)编译Redis

进入解压完毕的redis-3.0.0目录,运行make命令
redis-3.0.0目录目录下有一个Makefile文件,所以可以直接运行make命令使用C语言进行编译

Redis-01-NoSQL简介及Redis数据库安装

5)安装Redis

在redis-2.6.16目录中,运行make PREFIX=/usr/local/redis install命令安装redis到路径/usr/local/redis中,也可以安装到别的目录下

6)完善配置文件

拷贝redis-3.0.0中的配置文件 redis.conf 到Redis安装目录/usr/local/redis/bin中

7)启动Redis(前端模式)

在bin目录下执行命令redis-server redis.conf
显示如下表示安装成功可以使用,使用Ctrl+C退出

Redis-01-NoSQL简介及Redis数据库安装

8)远程连接redis

在linux防火墙中开放Redis的默认端口6379
运行命令:
/sbin/iptables -I INPUT -p tcp –dport 6379 -j ACCEPT 开放端口
/etc/rc.d/init.d/iptables save 保存配置

9)启动Redis(后端模式)

前端模式不易于操作,所以Redis启动常用后端模式,修改配置文件,redis.conf
进入redis.conf文件所在的目录:/usr/local/redis/bin,运行命令vi redis.conf,更改daemonize参数,默认是no,修改为yes,保存退出

Redis-01-NoSQL简介及Redis数据库安装

再次进入redis的bin目录,运行命令./redis-server redis.conf
没有任何显示表示后端模式启动成功

Redis-01-NoSQL简介及Redis数据库安装

四.Redis配置文件redis.conf

Redis最主要的配置都在它的配置文件redis.conf中,启动Redis时需要指定使用那个配置文件。redis.conf中有很多设置是在应用中需要根据情况更改的,以下展示redis.conf中各种配置的含义(按文件中的顺序列举)

Redis-01-NoSQL简介及Redis数据库安装
Redis-01-NoSQL简介及Redis数据库安装
Redis-01-NoSQL简介及Redis数据库安装
Redis-01-NoSQL简介及Redis数据库安装
Redis-01-NoSQL简介及Redis数据库安装