加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

NoSQL数据库服务之Redis

发布时间:2019-03-21 03:08:01 所属栏目:MySql教程 来源:民工哥
导读:一图详解DB的分支产品 Nosql数据库介绍 是一种非关系型数据库服务,它能解决常规数据库的并发能力,比如传统的数据库的IO与性能的瓶颈,同样它是关系型数据库的一个补充,有着比较好的高效率与高性能。 专注于key-value查询的redis、memcached、ttserver
副标题[/!--empirenews.page--]

一图详解DB的分支产品

NoSQL数据库服务之Redis

Nosql数据库介绍

是一种非关系型数据库服务,它能解决常规数据库的并发能力,比如传统的数据库的IO与性能的瓶颈,同样它是关系型数据库的一个补充,有着比较好的高效率与高性能。

专注于key-value查询的redis、memcached、ttserver

解决以下问题:

1)对数据库的高并发读写需求

2)大数据的高效存储和访问需求

3)高可扩展性和高可用性的需求

Nosql数据库的应用环境

1)数据模型比较简单

2)需要灵活性更强的IT系统

3)对数据库的性能要求较高

4)不需要高度数据一致性

5)对于给定KEY,比较容易映射复杂值的环境

Nosql软件的分类与特点

1)key-value键值存储数据库(redis、memcached)

  • 用于内容缓存,适合负载并扩展大的数据集
  • 数据类型是一系列的键值对
  • 有快速查询功能,但存储数据少结构化
  • 对事务的支持不好,数据库故障产生时不可进行回滚

2)列存储数据库(HBase)

  • 用于分布式的文件系统
  • 以列簇式存储,将同一列数据存在一起
  • 查找速度快,,可扩展强,更容易进行分布式扩展
  • 功能相对局限

NoSQL数据库服务之Redis

3)面向文件的数据库(mongoDB)

  • 用于WEB应用较多
  • 数据类型是一系列键值对
  • 查询性能不高,没有统一的查询语法

NoSQL数据库服务之Redis

4)图形数据库(Graph)

  • 社交网络应用较多
  • 不容易做分布式的集群方案

常用的Nosql数据库介绍

1)memcached

是一个开源高性能的,具有分布式内存对象的缓存系统

特点:

1、安装布署简单

2、支持高并发、高性能

3、通过程序或负载均衡可以实现分布式

4、仅为内存缓存,重启服务数据丢失

官方网站:http://memcached.org

2)memcacheDB

是新浪基于memcached开发的一个开源项目,具备了事务恢复功能

特点:

1、高并发读写

2、高效存储

3、高可用数据存储

官方网站:http://memcachedb.org/benchmark.html

生产环境如何选择Nosql数据库

1、最常规的缓存应用,memcached最合适

2、持久化存储方案memcacheDB

3、2000万以内数据量的小数据用memcached

4、大数据量可以用redis

redis持久化数据服务

REmote DIctionary server(redis)是一个基于key-value键值对的持久化数据库存储系统,对支持数据存储类型更多,包括字符串、列表、集合等

是一种持久化缓存服务,会周期的把更新的数据写入磁盘以及把修改操作记录追加到文件里记录下来,还支持主从同步模式,是一个开源的基于C语言编写的,支持网络、内存可持久化的日志型、key-value数据库

redis持久服务的特点

  • key-value键值类型存储系统
  • 支持数据可靠存储
  • 单进程单线程高性能服务器
  • 恢复比较慢
  • 单机qps(秒并发)可以达到10W
  • 适合小数据高速读写访问

redis存储系统优、缺点:

  • 可以持久化存储数据
  • 支持每秒10W的读写频率
  • 支持丰富的数据类型
  • 所有操作都是原子性的
  • 支持异机主从复制
  • 内存管理开销大(低于物理内存的3/5)
  • 不同命令延迟差别大

官方网站:http://www.redis.io

redis持久化介绍

redis将数据存储于内存中,通过快照、日志两种方式实现持久化存储,前者性能高,会有数据丢失的情况,后者相反。

redis应用场景

MYSQL+memcached网站架构的问题:数据量大就需要拆表,需要扩容,数据一致性是个问题

1)最佳应用场景就是内存服务

2)作为memcached替代方案

3)对数据一致性有一定要求但不高的业务

4)需要更多数据类型支持的业务

5)需要主从同步及负载均衡的业务

redis的安装

要进行主从同步配置,可以实现故障切换,主上禁用数据持久化,从上配置,内存要够大

  1. wget http://download.redis.io/releases/redis-2.8.24.tar.gz 
  2. [root@redis-m tools]#tar zxf redis-2.8.24.tar.gz 
  3. [root@redis-m tools]#cd redis-2.8.24 
  4. [root@redis-m redis-2.8.24]#make 
  5. [root@redis-m redis-2.8.24]#make PREFIX=/application/redis-2.8.24 install 
  6. [root@redis-m redis-2.8.24]#ln -s /application/redis-2.8.24 /application/redis 
  7. [root@redis-m tools]# tree /application/redis 
  8. /application/redis 
  9. `-- bin 
  10.     |-- redis-benchmark #性能测试工具 
  11.     |-- redis-check-aof #检测更新日志 
  12.     |-- redis-check-dump #检查本地数据库rdb文件 
  13.     |-- redis-cli #命令行客户端操作工具 
  14.     |-- redis-sentinel -> redis-server 
  15.     `-- redis-server #服务的启动程序 

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读