Redis知识整理(一) -- unix机器指标及基础知识

本文主要介绍了Redis的基础知识,包括磁盘和内存指标、IO Buffer、时间单位等,并探讨了数据存储的发展,从文件到数据库再到缓存。重点讨论了Redis与Memcached的区别,指出Redis的类型丰富和对客户端更友好的特性。同时提到了SAP公司的HANA数据库作为内存级别的关系型数据库的示例。
摘要由CSDN通过智能技术生成

Redis知识整理(一)

相关基础知识

磁盘指标

  • 寻址(ms)
  • 带宽(G/M)

内存指标

  • 寻址(ns)
  • 带宽很大

IO Buffer

  • 磁盘有磁道和扇区
    • 一个扇区 512Byte,小带来一个成本变大:索引
    • 读写4K 操作系统无论读多少,都是最小单位为4K从磁盘拿

时间单位

秒 >> 毫秒 >> 微秒 >> 纳秒

内存磁盘对比

磁盘比内存慢了十万倍(寻址)

数据存储发展进程

数据存储在文件中
  • 查看数据
    • grep awk
    • java的io流
  • 随着文件变大,速度变慢
    • 文件变大,硬盘(io)成为瓶颈
数据存储在DB中
  • 减少了IO的流量
  • data page 4K(对应磁盘的最小读取单位 4K)
  • 数据库由多个data page组成
  • 通过索引标记数据实际的存储地址(同样4K为单位)
    • 索引:B+树 存储在内存
    • 从B+树 节点读取到索引值入内存 进而读取到data page入内存
  • 关系型数据库建表
    • 必须有schema
    • 类型:字节宽度
    • 存储时倾向于行级存储
  • 表变大的时候,数据库变慢
    • 在有索引的情况下
      • 增删改会变慢(维护索引带来IO)
      • 查询:少量时依然很快;并发大或者复杂查询时会变慢(硬盘带宽影响速度)
缓存
  • 部分内存 + 部分磁盘
  • memcached redis …
SAP公司 HANA数据库
  • 内存级别 关系型数据库
  • 数据在内存和磁盘中体积不一样
    • 数据在磁盘中比内存中大:磁盘中不存在指针的概念,所以id对应是在两个地方有两个相同的id

数据库引擎

https://db-engines.com/en/

在这里插入图片描述

在这里插入图片描述

Redis相关

https://redis.io/

Redis数据类型

模型是key-value,数据类型指的是value类型

  • String 字符 数值…
  • hash 散列
  • list 列表
  • set 集合
  • sorted set 有序集合
  • bitmaps

在这里插入图片描述

Memcached相关

  • 也是key-value型
  • value没有数据类型的概念
  • 之所以慢慢被淘汰就是因为value没有类型的概念,获取数据时网络IO压力大且需要client做对应解码

知识整理

计算机发展到今日的两个瓶颈

  • 冯诺依曼计算机体系的硬件(性能制约)
  • 以太网、tcp/ip的网络(不稳定)

Memcached与Redis

  • Json可以表示很复杂的数据结构
    • 世界上有三种存储数据的方式
      • k = a , k = 1
      • k = [1,2,3]
      • k={x=y}
  • client从缓存中获取数据
    • memcached需要返回所有数据,client做解码
      • 网络IO的瓶颈,client要做解码
    • redis存储的话,类型反而不是特别重要,重要之处在于对于每个类型都有对应的方法
      • client端代码就会轻量很多,网络IO压力也小一些
  • 计算向数据移动

linux安装常用命令

// 安装wget命令
yum install wget

// wget获取安装包
wget http://xxx

// 新建目录
mkdir soft

// 一般linux的安装包都是c语言编写,注意查看ReadMe
// 编译&&安装 读取Makefile
make install PREFIX=/opt/soft/redis5

// 修改redis的环境变量到系统
vi /etc/profile
export REDIS_HOME=/opt/soft/redis5
export PATH=$PATH:$REDIS_HOME/bin
source /etc/profile

// 安装redis到系统
./utils/install_server.sh

Makefile文件内容(做跳转)

在这里插入图片描述

开启自启动的软件

在/etc/init.d目录下都一定存在一个文件

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值