Dynamo-Amzaon's Highly Available Key-value Store阅读笔记

介绍亚马逊的Dynamo系统,一种高可用的实时在线键值存储系统。为应对大规模分布式环境,Dynamo综合多种技术实现可扩展性和可用性,并保证最终一致性。支持无网状态下的读写操作,并使用多种冲突解决机制。

摘要

      亚马逊平台,基于成百上千万,分布于世界各地的服务器和网络组件,为众多网站提供服务。
      本文呈现了Dynamo的设计与实现,亚马逊部分核心业务所使用的高度可用的实时在线键值存储系统。在特定的场景下牺牲了一定的一致性来维护可用性,对对象版本,冲突解决做了拓展,为开发者提供了新式的接口。

引言

Amazon:
高度去中心化,松散耦合(联系紧密却独立),面向服务的架构。
Dynamo:
1.综合多种知名技术来实现可拓展性和可用性;
2.保证最终一致性。

背景

现有的复制架构技术,过于局限,且太重视一致性,而导致可用性不高。
满足ACID性质的,可用性都不高。Dynamo不提供任何分离保证,且只允许单键更新。
亚马逊服务架构图

Dynamo:
1.增量式拓展性
单次可以加入一台主机(节点)。
2.对称性
每个节点上的职责是一致的。
3.去中心化的
更偏向于点对点的去中心化技术。
4.异质性
可以根据机器的能力,分配相应比例的工作负载。

相关工作

P2P系统
- Freenet,Gnutella,P2P文件分享系统。
- Pastry,Chord,使用特定的路由机制,确保查询可以在一定的条数内得到回应。
- Oceanstore,提供在分布式数据上支持序列化更新,全局事务持久性存储服务。

分布式文件系统/数据库
- Ficus,Coda,牺牲了一致性来提高可用性。
- Farsite,通过复制架构来完成高度可用性和可拓展性。
- Google File System(GFS),单一中心服务器,多分支服务器分割存储。
- Bayou,分布式关系型数据库,支持无网操作,保证最终一致。

Dynamo:
支持无网状态下读写操作,高速读写,使用多种冲突解决机制,维护最终一致性,基于可靠网络环境设计。

架构

分布式架构要处理的问题:

  1. 负载均衡
  2. 错误检测
  3. 错误恢复
  4. 架构同步
  5. 过载处理
  6. 状态转换
  7. 并发控制
  8. 工作计划
  9. 请求编组
  10. 请求路由
  11. 系统监测与警报
  12. 配置管理
  13. 身份信息
    本文专注于Dynamo的核心技术,如下表所示
ProblemTechniqueAdvantage
PartioningConsistent HashingIncremental Scalability
High Availability for writesVector clocks with reconciliation during readsVersion size is decoupled from update rates
Handling temporary failuresSloppy Quorum and hinted handoffProvides high availability and durability guarantee when some of the replicas are not available.
Recovering from permanent failuresAnti-entropy using Merkle treesSynchronizes divergent replicas in the background.
Membership and failure detectionGossip-based membership protocol and failure detection.Preserves symmetry and avoids having a centralized registry for storing membership and node liveness information.
系统接口

get(key),返回内容,及与内容冲突矛盾的对象。
put(key,context,object),根据key确定确认对象写入位置,再将副本写到磁盘上。

分配算法

一致性哈希,分配到一个首尾相接的环空间上。一个节点对应环上多个位置节点。
一对多好处:
1.如果节点故障,可以将工作均派给相同节点。
2.新加入节点,可以从其他节点中获取工作内容。
3.满足了异质性。

复制架构

每个数据对象在多个站点上备份。

数据版本

Dynamo保证最终一致性,故而更新操作可以同时传播到全部站点。

内容概要:本文档详细介绍了基于直驱永磁同步发电机(PMSG)的1.5MW风力发电系统在Simulink环境下的建模与仿真全过程,涵盖了风力机空气动力学模型、PMSG电磁特性建模、不可控整流与逆变电路、直流环节、空间矢量脉宽调制(SVPWM)技术以及核心控制策略的设计。重点实现了最大功率点跟踪(MPPT)控制以提升风能捕获效率,并构建了电压外环与电流内环协同工作的双闭环控制系统,通过仿真验证了系统在不同风速条件下稳定运行的能力及动态响应性能。; 适合人群:适用于具备电力系统、电机控制理论基础及Simulink仿真操作经验的研究生、科研人员和从事新能源发电系统开发的工程技术人员;特别适合正在进行风电系统建模、控制算法研究或完成相关毕业设计的专业人士。; 使用场景及目标:①深入理解直驱式PMSG风力发电系统的整体架构与工作机理;②掌握从物理部件建模到控制策略实现的完整Simulink仿真流程;③学习并复现MPPT控制、双闭环控制等关键技术方案;④为后续开展低电压穿越、并网稳定性分析、故障诊断等高级课题提供可靠的仿真平台支撑。; 阅读建议:建议结合Matlab/Simulink软件动手实践,逐模块搭建模型,重点关注各控制环节的参数设计与调试方法,同时可参照文中提供的其他风电相关资源进行拓展学习与对比分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值