美文网首页
《从零开始学习架构》之存储高可用读书笔记

《从零开始学习架构》之存储高可用读书笔记

作者: 蘑菇均 | 来源:发表于2019-01-05 12:40 被阅读0次

在前一篇读书笔记中,介绍了设计高可用相关的理论。接下来几篇文章分别从存储高可用、计算高可用和业务高可用三个方面具体阐述如何在架构中设计高可用。今天这篇文章主要讲的是存储高可用。

考虑到硬件可能会发生故障的情况,为了让系统能正常运转,于是在设计系统时,会通过将数据复制到多个存储设备,即通过数据冗余的方式来实现高可用。这种实现方式带来的复杂性问题就是,如何应对复制延迟和中断导致的数据不一致问题。所以在设计系统 数据如何复制、各个节点的职责是什么、如何应对复制延迟和如何应对复制中断。

常见的高可用存储架构有主备、主从、主主、集群和分区。其中,主备、主从、主主这三个架构主要针对业务量较小的系统,即单个主机就能够存储所有数据。而集群,则是针对海里数据。

主备复制是最常见和最简单的一种存储可用方案。由主机和备机组成,其主要实现方式是,主机存储数据,通过复制通道将数据复制到备机;正常情况下,客户端通过主机进行读写操作,备机不承担实际的业务读写操作;当主机发生故障时,需要人工将备机升级为主机;需要有复制延迟的监控措施,当延迟的数据量较大时及时报警,由人工干预处理。

主从复制架构,一般由主机和从机组成。主机负责读写操作,从机只负责读操作,不负责写操作;主机存储数据,通过复制通道将数据复制到备机;当主机发生故障时,写操作相关业务不可用,读操作业务不影响,需要人工将从机升级为主机;需要有复制延迟的监控措施,当延迟的数据量较大时及时报警,由人工干预处理。

主从倒换或者主备倒换架构,与前两个架构的主要区别是,倒换架构支持系统自动决定主机角色,并完成角色切换。当然设计时需要考虑:主备间状态判断(状态传递的渠道和状态检测的内容)、倒换决策(倒换时机、倒换策略、自动程度)和数据冲突解决。

主主复制架构是两台机器都是主机,互相将数据复制给对方,客户端可以任意挑选其中一台机器进行读写操作。不过,主主复制架构对数据的设计有严格的要求,一般适合于那些临时性、可丢失、可覆盖的数据场景。

集群架构,首先集群就是多台(至少三台)机器组合在一起形成一个统一的系统。作者将集群架构分为数据集中集群和数据分散集群。但是我觉得数据中的数据集中集群和主从复制或者主备复制没有本质区别,所以暂时不写了。

数据分散集群指多个服务器组成一个集群,每台服务器都会负责存储一部分数据;同时,为了提升硬件的利用率,每台服务器又会备份一部分数据。由于其良好的可伸缩性,所以这种架构适合业务数据量巨大的场景。

数据分区指将数据按照一定的规则进行分区,不同分区分布在不同的地理位置上,每个分区存储一部分数据,通过这种方式来避免地理级别的故障所造成的巨大影响。常见的分区复制规则有:集中式、互备式和独立式。

集中式备份指存在一个总的备份中心,所有的分区都将数据备份到备份中心;互备式备份指每个分区备份另外一个分区的数据;独立式备份指每个分区自己有独立的备份中心。

相关文章

网友评论

      本文标题:《从零开始学习架构》之存储高可用读书笔记

      本文链接:https://www.haomeiwen.com/subject/esurrqtx.html