Redis---1、介绍
Redis简介:
是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求。
优点:
- 对数据高并发读写
- 对海量数据的高效率存储和访问
- 对数据的可扩展性和高可用行
缺点:
- redis(ACID)处理非常简单
- 无法做到太复杂的关系数据库模型
Redis 是以key-value store存储,data structure service 数据结构服务器,键可以包含:(string)字符串、哈希、链表(list)、(set)集合。(Zset)有序集合。这些数据结合都支持pysh/pop、add/remove
及取交集和并集以及更丰富的操作,redis支持各种不同方式排序,为了保证效率,数据丢失缓存在内存中,它也可以周期性的把更新数据写入磁盘后者把修改操作写入追加到文件。
除了上述的5种数据结构,Redis还提供了许多额外的功能:
- 提供了键过期功能,可以用来实现缓存
- 提供了发布订阅功能,可以用来实现消息系统
- 支持Lua脚本功能,可以利用Lua创造出新的redis命令
- 提供简单的事务功能,能再一定程度上办证事务特性
- 提供了流水线(pipeline)功能,这样客户端能将一批命令一次性传到redis,减少了网络的开销
Redis速度快的原因:
- redis把所有数据都是存放在内存中的
- redis是用C语言实现的,一般来说C语言实现的程序"距离"操作系统最近,执行速度相对更快
- Redis使用了单线程架构,预防了多线程可能产生的竞争问题
Redis 的持久化:
redis提供两种持久化方式:RDB和AOF,即可以用两种策略将内存的数据保存在硬盘中,这样就保证了数据的可持久性。
高可用:
Redis从2.8 版本正式提供了高可用实现Redis Sentinel,它能够保证Redis节点的故障发现和 故障自动转移。Redis从3.0 版本正式提出了分布式Redis Cluster ,它是Redis真正的分布式实现,提供了高可用、读写和容量的扩展性。
redis有3种高可用:
1.主从
2.哨兵
Redis sentinel是一个分布式系统中监控redis主从服务器,并在主服务器下线时自动进行故障转移。其中有3个特性:
监控(Monitoring): Sentinel会不断地检查你的主服务器和从服务器是否运作正常。
提醒(Notification):当被监控的某个Redis服务器出现问题时,Sentinel可以通过API向管理员或者其他应用程序发送通知。
自动故障转移(Automatic failover):当一个主服务器不能正常工作时,Sentinel会开始一次自动故障转移操作。
3 集群
Redis---1、介绍的更多相关文章
- [转] Redis系统性介绍
Redis系统性介绍 http://blog.nosqlfan.com/html/3139.html?ref=rediszt 虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了 ...
- Redis安装介绍
Redis安装介绍 一.Linux版本及配置 1. Linux版本:Red Hat Enterprise Linux 6虚拟机 2. 配置: 内存:1G:CPU:1核:硬盘:20G 二.Redis ...
- Redis全面介绍
最近重新认识了一下Redis,借着这个机会,也整理一篇算是比较详尽和全面的文章吧. 缓存 缓存就是数据交换的缓冲区(称作Cache)——摘自百度百科.无论是在计算机硬件体系结构还是软件体系结构中, ...
- NoSQL数据库之Redis数据库:Redis的介绍与安装部署
NoSQL(NoSQL = Not Only SQL),它指的是非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的w ...
- 4 Redis 配置文件介绍
2016-12-22 14:28:39 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...
- 第五章· Redis主从复制介绍
一.Redis主从复制 二.Redis主从复制工作机制 一.Redis主从复制 Redis复制功能简单介绍 1)使用异步复制.2)一个主服务器可以有多个从服务器.3)从服务器也可以有自己的从服务器.4 ...
- redis cluster介绍
讲解分布式数据存储的核心算法,数据分布的算法 hash算法 -> 一致性hash算法(memcached) -> redis cluster,hash slot算法 一.概述 1.我们的m ...
- Python 基于python操纵redis入门介绍
基于python操纵redis入门介绍 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作R ...
- Python redis 简单介绍
Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...
- Redis数据库介绍
引言 redis是一个开源的.使用C语言编写的.支持网络交互的.可基于内存也可持久化的Key-Value数据库. redis数据结构 redis是一种高级的key:value存储系统,其中value支 ...
随机推荐
- css细节复习笔记——基本视觉格式化
css包含如此开放.如此强大的一个模型,对于这样一个模型,可以有无数种方法结合应用各种属性,可以得到的效果数不胜数. 基本框 css假定每个元素都会生成一个或多个矩形框,这称为元素框.各元素中心有一个 ...
- kolla-ansible 重新部署 ceph 遇到的问题
问题 TASK [ceph : Fetching Ceph keyrings] ******************************************* fatal: [controll ...
- BZOJ3786: 星系探索(伪ETT)
题面 传送门 题解 坑啊--我好像把\(Splay\)的东西全忘光了-- \(ETT\)(\(Euler\ Tour\ Tree\))是一种可以资瓷比\(LCT\)更多功能的数据结构,然而不管是功能还 ...
- Get 和 Post 方法的选择和URL的设计
原文链接:http://yifei.me/note/540 HTTP 中常用的方法有 GET/POST/PUT/DELETE 等,在设计API或者表单的时候我们需要选择合适的方法.一般有两种方案: 只 ...
- [Objective-C语言教程]Posing(29)
Posing,顾名思义,意思是“冒充”,它跟categories类似,但本质上不一样,Posing存在的目的在于子类可以冒充父类,使得后续的代码无需把父类修改为子类,就可以很方便的让父类表现成子类的行 ...
- Spring Boot 入门系列
本系列博文版权 简书 面皮大师 所有,转载请标明原文及出处: http://www.jianshu.com/u/062bd8f1299c 项目地址: https://github.com/daleiw ...
- 初始linux系统--ubuntu
ubuntu操作系统 1. Linux系统组成 Linux内核软件程序用于实现CPU和内存分配进程调度设备驱动等核心操作,以面向硬件为主 外围程序面向用户为主,包括分析用户指令的解释器网络服务程序图 ...
- Swift中的Weak Strong Dance
亲爱的博客园的关注着博主文章的朋友们告诉你们一个很不幸的消息哦, 这篇文章将会是博主在博客园发表的最后一篇文章咯, 因为之后的文章博主只会发布到这里哦 http://daiweilai.github. ...
- eclipse如何设置UTF-8
一.Eclipse设置utf-8编码包括两个方面,一方面可以设置workspace工作间编码,另一方面可以设置Android Project项目编码,设置步骤: 1)设置workspace工作间编码: ...
- Java NIO学习与记录(四): SocketChannel与BIO服务器
SocketChannel与BIO服务器 SocketChannel可以创建连接TCP服务的客户端,用于为服务发送数据,SocketChannel的写操作和连接操作在非阻塞模式下不会发生阻塞,这篇文章 ...