Nosql数据库服务之redis
一图解读DB的分支产品
Nosql数据库介绍
是一种非关系型数据库服务,它能解决常规数据库的并发能力,例如传统的数据库的IO与性能的困局,同样它是关系型数据库的一个补充,有着比较好的高效率与高性能。
专注于key-value查询的redis、、
解决以下问题:
1)对数据库的高并发读写需求
3)高可扩充性和高可用性的需求
1)数据模型比较简单
3)对数据库的性能要求较高
4)不须要高度数据一致性
5)对于给定KEY,比较容易映射复杂值的环境
1)key-value通配符储存数据库(redis、)
数据类型是一系列的通配符对
有快速查询功能,但储存数据少结构化
对事务的支持不好,数据库故障形成时不可进行回滚
2)列储存数据库(HBase)
以列簇式储存,将同一列数据存在一起
功能相对局限
3)面向文件的数据库()
用于WEB应用较多
数据类型是一系列通配符对
查询性能不高,没有统一的查询句型
4)图形数据库(Graph)
社交网路应用较多
常用的Nosql数据库介绍
1)
特征:
2、支持高并发、高性能
4、仅为显存缓存,重启服务数据遗失
官方网站:
2)
特征:
1、高并发读写
2、高效储存
3、高可用数据储存
官方网站:
生产环境怎么选择Nosql数据库
1、最常规的缓存应用,最合适
2、持久化储存方案
3、2000万以内数据量的小数据用
4、大数据量可以用redis
redis持久化数据服务
(redis)是一个基于key-value通配符对的持久化数据库储存系统,对支持数据储存类型更多,包括字符串、列表、集合等
是一种持久化缓存服务,会周期的把更新的数据写入c盘以及把更改操作记录追加到文件里记录出来,还支持主从同步模式,是一个开源的基于C语言编撰的,支持网路、内存可持久化的日志型、key-value数据库
redis持久服务的特征
key-value通配符类型储存系统
支持数据可靠储存
单进程单线程高性能服务器
恢复比较慢
单机qps(秒并发)可以达到10W
适宜小数据高速读写访问
redis储存系统优、缺点:
可以持久化储存数据
支持每秒10W的读写频度
支持丰富的数据类型
所有操作都是原子性的
支持异机主从复制
显存管理开支大(高于化学显存的3/5)
不同命令延后差异大
官方网站:
redis持久化介绍
redis将数据储存于显存中,通过快照、日志两种形式实现持久化储存,后者性能高,会有数据遗失的情况,前者相反。
redis应用场景
mysql+网站构架的问题:数据量大就须要拆表,须要扩容,数据一致性是个问题
1)最佳应用场景就是显存服务
2)作为代替方案
3)对数据一致性有一定要求但不高的业务
4)须要更多数据类型支持的业务
5)须要主从同步及负载均衡的业务
redis的安装
要进行主从同步配置,可以实现故障切换,主上禁用数据持久化,从上配置,显存要够大
wget
[root@redis-mtools]#tarzxfredis-2.8.24.tar.gz
[root@redis-mtools]#cdredis-2.8.24
[root@redis-mredis-2.8.24]#make
[root@redis-mredis-2.8.24]#make=//redis-2.8.24
[root@redis-mredis-2.8.24]#ln-s//redis-2.8.24//redis
[root@redis-mtools]#tree//redis
//redis
`--bin
|--redis-#性能测试工具
|--redis-check-aof#检查更新日志
|--redis-check-dump#检测本地数据库rdb文件
|--redis-cli#命令行顾客端操作工具
|--redis-->redis-
`--redis-#服务的启动程序
配置环境变量
[root@redis-mtools]#echo"PATH=//redis/bin:$PATH">>/etc/
[root@redis-mtools]#/etc/
[root@redis-mtools]#whichredis-
//redis/bin/redis-
查看帮助文档
[root@redis-mtools]#redis---help
Usage:./redis-[/path/to/redis.conf][]
./redis--(readfromstdin)
./redis--vor--
./redis--hor--help
./redis---test-
:
./redis-(runthewithconf)
./redis-/etc/redis/6379.conf
./redis---port7777
./redis---port7777--127.0.0.18888
./redis-/etc/.conf--
启动服务
[root@redis-m~]#cd//redis/
[root@redis-mredis]#ll
total4
drwxr-xr-x2rootroot4096Mar2204:50bin
[root@redis-mredis]#mkdirconf
[root@redis-mredis]#cp//tools/redis-2.8.24/redis.conf./conf/
[root@redis-mredis]#redis-//redis/conf/redis.conf&
[6072]22Mar05:00:51.373#,Redis2.8.24
[6072]22Mar05:00:51.374#issetto0!savemayfailunderlow.Tofixthisissueadd'vm.=1'to/etc/.confandthenorrunthe'vm.=1'forthistotake.
#显存不足的时侯,数据加载到c盘可能失效,可以使用命令解决或更改配置文件
[6072]22Mar05:00:51.375#:TheTCPoF511be/proc/sys/net/core/issettothelowervalueof128.
[6072]22Mar05:00:51.375*Theisnowreadytoonport6379
[root@redis-mredis]#lsof-i:6379
PIDUSERFDTYPESIZE/OFFNODENAME
redis-ser6072root242710t0TCP*:6379()
redis-ser6072root242730t0TCP*:6379()
vm.
1表示内核容许最大限度的的使用显存
关掉服务命令
[root@redis-mredis]#redis-cli
[6072]22Mar05:09:32.699#User...
[6072]22Mar05:09:32.699*thefinalRDB.
[6072]22Mar05:09:32.710*DBsavedondisk
[6072]22Mar05:09:32.711#Redisisnowreadytoexit,byebye...
[1]+Doneredis-//redis/conf/redis.conf
假如须要了解redis集群相关的知识可参考上面的文章