【旧文重新排版】重读 Amazon Dynamo 论文有感

文 | YoungChen

封面图片 | Unsplash

旧文重新排版,方便阅读

本文内容不仅仅局限于 Dynamo

1. 什么是 Dynamo

亚马逊在业务发展期间面临一些问题,主要受限于关系型数据库的可扩展性和高可用性,希望研发一套新的、基于 KV 存储模型的数据库,将之命名为 Dynamo

相较于传统的关系型数据库 MySQLDynamo 的功能目标与之有一些细小的差别,例如 Amazon 的业务场景多数情况并不需要支持复杂查询,却要求必要的单节点故障容错性、数据最终一致性(即牺牲数据强一致优先保障可用性)、较强的可扩展性等。

可以肯定的是,在上述功能目标的驱使下,Dynamo 需要解决以下几个关键问题:

  1. 它要在 CAP 中做出取舍,Dynamo 选择牺牲特定情况下的强一致性(这也是大多数新兴数据库的权衡)优先保障可用性

  1. 它需要引入多节点,通过异步数据流复制完成数据备份和冗余,从而支持单节点故障切换、维持集群高可用

  1. 它需要引入某种 “再平衡(rebalance)” 算法来完成集群的自适应管理和扩展操作,Dynamo 选择了一致性哈希算法

2. Dynamo 和 MySQL 的关系

有的人有这种疑问,其实二者没有什么关系,Dynamo 叙述的是一种 NoSQL 数据库的设计思想和实现方案,它是一个由多节点实例组

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值