存储中间件

  1. 服务器对存储系统的要求
    1. 必须是增量级存储系统,不能是
    2. 开始时保证高性能,稳定的,不要求容灾,选这个低峰事情备份就行了
    3. 随着互联网的普及,容灾级别要求变高,单机变多机器互相热备,这就是数据库主从结构的由来
    4. 然后,单机存储量有限,开始手工分库分表,最后分布式数据库出现了
    5. 单机可靠性不够,开始两地三中心
  2. 存储即数据结构
    1. 业务服务器无状态
  3. 数据库的种类
    1. 关系型数据库:MySQLOracleSQLServer,强schema约束
    2. 文档型数据库:MongoDB,无schema
    3. 键值存储:Cassandra ,只有明确唯一索引
  4. 事务
    1. ACID
      1. 原子性:
      2. 一致性
      3. 隔离性
      4. 持久性
    1. 乐观锁:先进行冲突检查,如果没有冲突直接提交,否则放弃本次修改
    2. 悲观锁:先互斥,在修改数据,不管是否发生了冲突,都会互斥
  5. 主从结构
    1. 为了数据库业务的可用性和数据持久性,我们需要考虑多副本存储,这就引发了数据一致性的问题,我们可以才有主从结构,主负责提供读和写,从提供读,同时主负责把最新数据同步到从从上,为了保证主失败后,从可以替换,需要才有集群结构,我们才从重新选举,必须大于半数节点统一才可以,所以需要集群为奇数个,为了保证选举的从未最新数据,必须保证主写入从至少一个最新的数据。
  6. 分布式
    1. 多副本可用性和持久性得到了解决,
      1. 数据规模大了,单个物理节点放不了那么大的数据量
      2. 主承受的读写压力太大,单台节点承受不来这么高的吞吐能力
    2. 采用分布式,把数据分片到多台设备上,一起构成一个单副本的数据库,同时还要有每个分片的副本,存放在不同的机器,保证备份
      1. 哈希分片(一致性hash)
      2. 范围分类
    3. CAP理论(只能选择二,必须保证P,否则就不是分布式了)
      1. 数据一致性
      2. 服务可用性
      3. 分区容错性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值