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语言进行编译
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退出
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的bin目录,运行命令./redis-server redis.conf
没有任何显示表示后端模式启动成功
四.Redis配置文件redis.conf
Redis最主要的配置都在它的配置文件redis.conf中,启动Redis时需要指定使用那个配置文件。redis.conf中有很多设置是在应用中需要根据情况更改的,以下展示redis.conf中各种配置的含义(按文件中的顺序列举)
Redis-01-NoSQL简介及Redis数据库安装相关推荐
- Redis学习 - NoSQL简介、redis安装、redis基础知识、数据类型、持久化、订阅发布、主从复制、哨兵模式、缓存击穿和雪崩
学习视频地址:https://www.bilibili.com/video/BV1S54y1R7SB 完结撒花,感谢狂神 文章目录 1. NoSQL 1.1 单机Mysql的演进 1.2 当今企业架构 ...
- Redis和nosql简介,api调用;Redis数据功能(String类型的数据处理);List数据结构(及Java调用处理);Hash数据结构;Set数据结构功能;sortedSet(有序集合)数
1.Redis和nosql简介,api调用 14.1/ nosql介绍 NoSQL:一类新出现的数据库(not only sql),它的特点: 1. 不支持SQL语法 2. 存储结构跟传统关系型数 ...
- 【重难点】【Redis 01】为什么使用 Redis、Redis 的线程模型、Redis 的数据类型及其底层数据结构
[重难点][Redis 01]为什么使用 Redis.Redis 的线程模型.Redis 的数据类型及其底层数据结构 文章目录 [重难点][Redis 01]为什么使用 Redis.Redis 的线程 ...
- Redis -- 01 【简介,特点,搭建,shell,数据类型】
1.Redis的简介 Redis中文官网链接: 1.1.NoSql NoSql 是Not-Only Sql的简写,泛指非关系型数据库 关系型数据库不太适合存储非结构化的大数据(现在的非结构化的数据占比 ...
- 【Redis】Nosql引入、Redis的数据类型和常用指令
Redis 内容管理 NoSQL 现代互联网应用特点 RDBMS弊端 无法应对高并发 [磁盘IO瓶颈] 数据存储有限,横向扩展弱 硬件要求高 不易提高性能[解决单一架构] 单一架构解决方案 NoSQL ...
- 【Redis】NoSQL简介
文章目录 1. 简介 2. 分类 3. 特点: 4. 适用场景 5. ACID 6. CAP理论: 7. BASE 8. 思考题: 1. 简介 NoSQL最常见的解释是"non-relati ...
- redis学习-NoSQL简介
1.互联网时代背景下大机遇,为什么用NoSQL 1.1单机MySQL的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付. 在那个时候,更多的都是静态网页,动态交互类型的网 ...
- NoSQL和Redis简介及Redis在Windows下的安装和使用教程
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/103.html?1455869099 NoSQL简介 介绍redis前,我 ...
- 数据库介绍与数据库安装
一.课前介绍 数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件都运行在一台机器上,那么用文件 ...
- linux go redis,使用go来操作redis的方法示例
Redis简单介绍 简介 关于Redis的讨论,其实在现在的后台开发中已经是个老生常谈的问题,基本上也是后端开发面试的基本考察点.其中 Redis的背景介绍和细节说明在这里就不赘述.不管怎么介绍,核心 ...
最新文章
- linux学习笔记一
- 第二课.PyTorch入门
- 北京对无人车的热情,华尔街都感受到了
- rust实战入门到进阶(2)
- SAP Leonardo平台机器学习API的一些错误处理机制
- Django的View(视图)
- 启动马达接线实物图_电工外出接单从事配电柜接线、调试工作的三个要领
- 【重难点】【JVM 02】反射在 JVM 层面的实现流程、Class.forName() 和 ClassLoader.loadClass 的区别
- 复杂性思维第二版 二、图
- 关于滚动相关的属性【转】
- EasyGame网络游戏服务器解决方案
- 苹果Mac文件加速下载工具:Download Shuttle Pro
- stata输出相关系数表到word
- 解决Win7安装C++ Redistributable2015失败
- 斗鱼直播与熊猫直播竞品分析
- DIV根据里面文字自动撑开
- 电脑族科学护眼五常识
- 高品质回音消除 模块 : F-23
- halcon图像灰度操作
- 会声会影2022新版本视频图文教程介绍
热门文章
- 江西单招主计算机学校,2019年江西单招学校,江西单招信息技术试题,2019江西单招综合素质...
- HTML:在HTML前端界面中直接显示代码
- C#:DataTable查询结果判断某一列为空
- linux soc 程序崩溃,SOC、FLCK和内存之间的关系,以3900X+X570为例(更新PCIE4.0)
- 数据库截取字段 转换成int型函数
- datetime sql
- ORB-SLAM3 一张图梳理mono_kitti.cc主流程
- 论文笔记_S2D.06-2018-BMVC-用于实时语义分割的轻量级精细网络RefineNet
- 图像语义分割(13)-OCNet: 用于场景解析的目标语义网络
- 远程连接另一台电脑,如何用被远程的电脑听歌