第一章 NoSQL之Redis配置与优化

关系数据库与非关系型数据库

关系型数据库

  • 一个结构化的数据库,创建在关系模型基础上
  • 一般面向于记录
  • 包括Oracle、MySQL、SQLServer、Microsoft Access、DB2等

非关系型数据库

  • 除了主流的关系型数据库外的数据库,都认为是非关系型
  • 包括Redis、MongoDB、Hbase、CouhDB等

非关系型数据库产生背景

  • High performance——对数据库高并发读写需求
  • Huge Storage——对海量数据高效存储与访问需求
  • High Scalability && High Availability——对数据库高可扩展性与高可用性需求

Redis

  • Redis基于内存运行并支持持久化
  • 采用 key-value(键值对)的存储形式
  • 优点
    • 具有极高的数据读写速度
    • 支持丰富的数据类型
    • 支持数据的持久化
    • 支持数据备份
    • 原子性

Redis持久化

  • 持久化概述
    • Redis是运行在内存中,内存中的数据断电丢失
    • 为了能够重用Redis数据,或者防止系统故障,需要将Redis中的数据写入到磁盘空间中,即持久化
  • 持久化分类
    • RDB方式:创建快照的方式获取某一时刻Redis中所有数据的副本
    • AOF方式:将执行的写命令写到文件的末尾,以日志的方式来记录数据的变化

RDB

  • Redis的默认持久化方式
  • 默认文件名dump.rdb
  • 触发条件
  • 优缺点
    • 适合大规模的数据恢复
    • 如果业务对数据完整性和一致性要求不高,RDB是最好的选择

AOF

  • Redis默认不开启
  • 弥补RDB的不足(数据的不一致性)
  • 采用日志的形式来记录每个写操作,并追加到文件中
  • Redistribution重启会根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作

Redis命令

命令

说明

 redis-server

用于启动 Redis 的工具

redis-benchmark

用于检测 Redis 在本机的运行效率

redis-check-aof

修复 AOF 持久化文件

redis-check-rdb

修复 RDB 持久化文件

 redis-cli

本机连接数据库

redis-cli -h 192.168.10.101 -p 6379

远程连接数据库

redis-benchmark工具

redis-benchmark 是官方自带的 Redis 性能测试工具,可以有效的测试 Redis 服务的性能。

命令

说明

-h

指定要连接的Redis服务器的主机名

-p

指定要连接的Redis服务器的端口号

-s

指定要连接的Redis服务器的Unix域套接字路径

-c

指定并发连接数

-n

指定每个客户端发送的请求总数

-d

以字节为单位指定SET/GET操作的值的大小

-k

1=keep alive 0=reconnect

-r

SET/GET/INCR使用随机key, SADD使用随机值

-P

通过管道传输指定数量的请求

-q

强制安静模式,仅显示每秒查询数(query/sec)的值

--csv

以CSV格式输出测试结果

-l

生成循环,永久执行测试

-t

仅运行以逗号分隔的测试命令列表

-I

Idle模式。仅打开N个idle连接并等待

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值