Amazon Aurora:OLTP cloud-native relational Database阅读笔记

1.前言 & 摘要

Amazon aurora是针对OLTP、云原生关系型数据库
对于高吞吐量的数据处理,目前的主要矛盾已经转变为网络IO
将redo操作推到了多租户水平拓展存储服务

关键词:quorum model、OLTP、log process

vpc:virtual private cloud,虚拟私有云
使用多阶段同步协议(如 2-parse-commit)解决事务提交的问题在云环境下是困难的
这些协议不能容忍大型分布式系统持续的硬故障和软故障,由于大型分布式系统有很多数据中心,他们也有很高的延时

Amazon aurora借助跨分布式云环境的redo log解决上述问题

2.持久性

quorum model,分段存储,segmented storage

2.1复制和相关故障

AZ(available zone)是一个可用区,AZ之间是隔离的(包括:电源、网络、软件部署等),同一AZ内延迟低,许多AZ组成AZs(AZ集群),许多数据备份分散在各个AZ中,保证大规模故障只影响一个数据备份

使用基于quorum的投票协议来容忍故障

quorum协议简介:
如果V份备份数据都有投票权,读取、写入必须各自得到Vr和Vw票,为了达到一致性,必须遵循两个规则:

  • Vr+Vw > V
  • Vw > V/2

保证读取的节点数和写的节点有交集,并且包含了最新版本的数据

为什么认为2/3quorum模型不可靠?
如果有大规模火灾、洪水,摧毁了两个AZ,那么我们就丢失了两份副本,并且无法确定第三份数据是否最新

在Aurora,我们的设计模式是(i)可以丢失一整个可用区AZ,外加一个附加节点,而不会丢失数据;(ii)或丢失一整个可用区AZ,还可以继续写入数据

解决措施:每份数据复制6次,放到三个可用区AZ中,每个AZ放两个备份,即

  • V=6
  • 写入 Vw=4
  • 读取 Vr=3

这样(i)和(ii)都能满足
(i)AZ+1 node = 3节点失效,还有3个可用,由于写入4个节点,剩下3个节点一定有一个包含最新数据,也没有丢失数据
(ii)丢掉一整个AZ,还剩4个节点可用,可用满足Vw=4,可用继续写入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值