基于SDN的容灾存储:保障数据安全与服务连续性
在当今数字化时代,数据的安全性和服务的连续性至关重要。尤其是在面对各种灾难(如自然灾害、网络攻击等)时,如何确保数据不丢失、服务能够快速恢复成为了亟待解决的问题。本文将介绍一种基于软件定义网络(SDN)的容灾键值存储方案,它能够有效应对各种故障和灾难,保障数据的安全和服务的连续性。
灾难后存储服务的恢复
键值存储是由NoSQL运动推广开来的云服务,它更注重数据访问的简单性而非表达性。键值存储提供了简单的接口来操作键值对,包括get(检索)、put(插入)和update(修改)等功能。为了实现容错,键值存储会确保对特定键值对的更新请求(put和update)的效果在多个服务器上进行复制。
然而,这种复制也带来了数据一致性的问题。为了确保数据的唯一性,所有服务器需要对同一键的并发更新请求(如put(k,v)和put(k,v’))进行一致排序。可以通过基于服务器唯一IP地址和本地计数器计算的时间戳来标记值的版本,从而实现这一点。
另一个一致性要求是,在对同一键的第一次更新完成后发出的第二次更新,其值应该带有更新的版本标记。这就要求每个请求(无论是只读的get请求还是更新的put请求)在传播最新版本的值之前,先向一组服务器(法定人数)请求当前的最高版本。例如,Dynamo会将对某个键的写请求传播到该键的两个副本的法定人数,以保证传播数据的容错性。
需要注意的是,数据中心内的法定人数系统可以重新配置以容忍无限制数量的孤立故障,但无法容忍灾难。
SDN - KVS:容灾键值存储
为了容忍故障和灾难,我们采取了双重策略。对于容错,我们在通信成本较低的数据中心内复制
超级会员免费看
订阅专栏 解锁全文
16万+

被折叠的 条评论
为什么被折叠?



