加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

分布式CAP&蒙代尔不可能三角

(2012-03-15 17:30:51)
标签:

cap

分布式

蒙代尔

不可能三角

it

分类: 分布式
最近在看《管理3.0》这本书,荷兰的这哥们把敏捷和复杂理论整到一起引入管理,很有开创性。
开篇提到了一般性系统理论General System Theorm的关联性,让我想起了分布式cap和金融学的不可能三角,记录下

关于汇率政策与货币政策的协调问题,在20世纪60年代初,弗莱明和蒙代尔认为:
资本的自由流动
货币完全独立
汇率稳定
三项目标中,一国政府最多只能同时实现两项。这一结论被后人称为“蒙代尔三角”
想要控制货币主权,又想要资本可以自由进出,那汇率就不能保了;
如果要保汇率稳定和资本自由进出,货币主权就不要想了。事实也是如此


在分布式数据系统中,有一个cap原理(CAP Theorem)。CAP原理中,有三个要素:
一致性(Consistency)
可用性(Availability)
分区容忍性(Partition tolerance)
CAP原理指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。因此在进行分布式架构设计时,必须做出取舍。而对于分布式数据系统,分区容忍性是基本要求,否则就失去了价值。因此设计分布式数据系统,就是在一致性和可用性之间取一个平衡。对于大多数web应用,其实并不需要强一致性,因此牺牲一致性而换取高可用性,是目前多数分布式数据库产品的方向。

从客户端角度,多进程并发访问时,更新过的数据在不同进程如何获取的不同策略,决定了不同的一致性。对于关系型数据库,要求更新过的数据能被后续的访问都能看到,这是强一致性。如果能容忍后续的部分或者全部访问不到,则是弱一致性。如果经过一段时间后要求能访问到更新后的数据,则是最终一致性。


可以简单的类比下
货币完全独立 == 一致性
资本的自由流动 == 可用性
汇率稳定 == 分区容忍性

类比分析
按现阶段互联网的发展现状,需要高可用性和分区容忍性,那么就要适当放弃一致性,通过最终一致性来保障(异步延迟),但要采取措施避免和防止异步数据的丢失
最近,互联网技术社区有些人在反思最终一致性和nosql的滥用问题,我觉得关键要看业务特点来决定。
比如sns类的应用,完全可以采用最终一致的方式来解决,没必要我发的微薄,你要第一时间看到,那不成监控系统和直播系统了,呵呵
再比如在线股票和在线直播,想牺牲一致性,提高可用性(并发人多、方便操作),估计股民就要骂娘了
总要平衡下,舍得一些


现阶段要保持资本的自由流动和汇率稳定,那么就要适当放弃货币完全独立,让外人可以小操控一下,最终通过其他利益来补贴(军政啦,比如抢个油田,打个产业链啥的),但要避免补贴搞不成,反丢了夫人又折兵
最近,货币主权的问题被人关注了,要回收了,又不能立马失去外资的支撑,ok,你的汇率是不是要动动了,不能一直只涨不跌啊,官方的说法是要扩大浮动范围

在两个阶段切换当中,实际就是熵的变化和引入,系统状态要达到新的平衡,才能降低熵,复杂系统升级进化啦

一般性系统理论 (General System Theory) 研究复杂系统的一般规律的学科,又称普通系统论。现代科学可按所研究的对象系统的具体形式划分成各门学科,如物理学、化学、生物学、经济学和社会学等;也可按研究方法划分成两大类别,即简单系统理论和复杂系统理论。一般系统论是研究复杂系统理论的学科,着重研究复杂系统的潜在的一般规律。
系统思想是一般系统论的认识基础,是对系统的本质属性(包括整体性、关联性、层次性、统一性)的根本认识。系统思想的核心问题是如何根据系统的本质属性使系统最优化。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有