欢迎点击右上角"NoSQL漫谈"关注我们
在云服务中, 为了提高数据的持久性和可用性,通常将数据存储在多个AZ(Availability Zone)之中,每一个AZ拥有独立的供电系统和网络设备,这样,单AZ的故障并不会导致数据的丢失或服务的不可用。 对于云服务而言,如果拥有了跨AZ 的数据同步和业务多活能力,就可以宣称,该服务按年计算可以达到4个9的可用性和11个9的持久性。本文主要介绍跨AZ数据复制方案中所涉及的 EC 与 XOR 技术。
跨AZ数据复制
如何将数据同步到多个AZ中,有多种做法,一种比较流行的方案,就是将数据的多个副本放置在不同的AZ中,如下图所示:
至于如何实现数据复制,有两种方式:
Master-Slave复制
Quorum复制
这两种方式均能达成跨AZ的数据同步复制能力以及数据的强一致性语义保障,只是在架构上存在比较大的差异。但无论哪个方案,在 网络带宽 上,都存在一个比较显著的问题:如果进行全量数据的复制,对带宽的挤占就非常严重,尽管AZ之间会设有专线连接,带宽也很大。因此, 如何缩减同步的数据量,减少对网络带宽的挤占,就显得至关重要 。另外, 如何降低整体的存储空间占用 ,也是一个非常重要的问题。
常用的方法有如下两种:
但如果碰到图片和视频数据,上面两种方法就基本失效了,这时,需要引入另外两种技术: EC与XOR 。
EC技术
EC(英文全称为 " Erasure Code " )本质上是一种编码技术,它在n份原始数据的基础上,增加m份数据,并能通过n+m份中的任意n份数据,还原为原始数据。即如果有任意小于等于m份的数据失效,仍然能通过剩下的数据还原出来。
举例:
Data 首先被均分成 {D1,D2,D3,D4},计算出 {C1,C2}两个校验分片。 将6份分片数据存储在不同的地方, 即使任意两个分片数据被损坏了,都可以还原出原始数据Data。 假设共有三个AZ,那么,每一个AZ中只需要存储2个分片的数据即可:
这样就可以 显著减少跨AZ数据传输 , 降低数据复制对带宽的占用 (AZ的出口带宽减少了一半)。
但EC会带来如下问题:
增加了CPU消耗,用于计算校验分片
读取时需要从多个AZ中获取数据,时延敏感型业务将会受到明显的影响。
一个数据分片出现问题时,需要跨AZ读取数据进行修复。
下图简单描述了如何进行数据修复的原理:
关于对EC的改进,业界也有一些解决方案, 如 LRC码 和 蝴蝶码 。EC可以有效减少跨AZ之间的网络带宽占用,对于很多应用场景,它的缺点其实也是完全可以容忍的。
但在真正实现该方案的时候,在架构、组网、安全方面会有很大的挑战。因为每一个AZ都是独立的存在,他们之间除了在大二层网络上互通以外,在四层网络上通常是隔离的,因此需要打通不同AZ的数据存储服务器之间的网络。至于EC的分片如何进行合理放置,也需要设计合理的 布局和分配算法 。在工程实现上,会有很大的挑战。
XOR技术
XOR 的含义,等同于我们所理解的同名位操作符,即,异或操作。
EMC第一次将XOR应用在了" 消减 " 跨AZ间的多副本数据,它的原理分步介绍如下:
AZ1中的 主副本1 与AZ2中的 主副本2 (主副本1与主副本2不相关),在AZ3中分别拥有一个 备副本1 、 备副本2 。
将AZ3中的备副本1与备副本2进行XOR操作后,得到 副本3 。
清除 备副本1 与 备副本2 的数据,仅保留异或后的 副本3 。
如果AZ1中的 主副本1 发生故障,将AZ2中的 主副本2 与AZ3中的 副本3 进行XOR操作,即可还原出AZ1中的 主副本1 。
可以看出来,XOR主要用来 减少备副本所占用的存储空间 ,而不是减少网络传输的数据量。对于跨Region间的数据复制,它是非常适用的。
总结
本文简单讨论了跨AZ数据复制方案中的EC与XOR技术,EC技术不仅可以 有效减少网络传输数据量 ,也能够 有效降低因为多副本带来的存储空间冗余 ,而XOR技术则主要为了 减少存储空间冗余 。
《一条数据的HBase之旅》系列连载文章:
简明HBase入门教程-开篇
简明HBase入门教程-Write全流程
简明HBase入门教程- Flush与Compaction
《OpenTSDB技术原理》系列连载文章:
OpenTSDB原理系列-元数据模型
OpenTSDB原理系列-TSDB数据表设计
OpenTSDB原理系列-线程模型
OpenTSDB原理系列-读取流程
其它精彩文章:
从扩线查询能力分析图数据库Titan的设计改进点
从HBase中移除WAL?3D XPoint技术带来的变革
号称十倍性能于Cassandra的ScyllaDB,究竟祭出了哪些技术"利器"?
NewSQL是否是NoSQL的取代者?
阅读开源项目源码的建议姿势
关于"NoSQL漫谈"
NoSQL主要泛指一些分布式的非关系型数据存储技术,这其实是一个非常广泛的定义,可以说涉及到分布式系统技术的方方面面。随着人工智能、物联网、大数据、云计算以及区块链技术的不断普及,NoSQL技术将会发挥越来越大的价值。 请长按下面的二维码关注我们 更多NoSQL技术分享,敬请期待!
玻璃钢生产厂家浦东优良玻璃钢雕塑玻璃钢雕塑属于哪个项目大类开县玻璃钢伟人像雕塑濮阳园林景观玻璃钢仿铜雕塑榕城玻璃钢雕塑厂家江门能透光玻璃钢雕塑生产厂家百色玻璃钢塑料雕塑宁波玻璃钢孔子雕塑商场门口美陈隔离带聊城玻璃钢企鹅雕塑圣诞节商场美陈禹州玻璃钢雕塑厂家汕头玻璃钢仿砂岩雕塑衢州玻璃钢陶瓷雕塑设计沁阳商场美陈透明玻璃钢雕塑工艺深圳节庆商场美陈厂家直销安徽玻璃钢卡通雕塑商场中庭美陈方案商场美陈 软件玻璃钢雕塑有哪些模具临河玻璃钢景观雕塑宿迁玻璃钢仿铜雕塑定制陕西抽象玻璃钢雕塑图片信阳玻璃钢雕塑雕刻价格景观玻璃钢卡通雕塑设计云南设计雕塑玻璃钢福建玻璃钢雕塑多少钱商场店庆6周年活动美陈瑞丽市玻璃钢雕塑设计哪里有卖香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万