文章分类 -  分布式

Dynamo一个缺陷的架构设计(译)
摘要:转:http://timyang.net/data/dynamo-flawed-architecture-chinese/在云计算的时代,Dynamo可以说是一本实现分布式存储的红宝书,借鉴Dynamo实现的产品如雨后春笋般冒出。前段时间本人曾在Twitter上戏称这年头,如果一个号称有“海量数据”的互联网公司,不做一个自己的Dynamo, 出去都不好意思跟人打招呼(http://twitter.com/xmpp/status/8023241449)另外一方面对于Dynamo设计思想也有不少反对的声音,比如2009/11/1在Hacker News上链接的一篇文章Dynamo: A flawe 阅读全文

posted @ 2013-06-08 17:04 Bo.Zhang 阅读(425) 评论(0) 推荐(0)

介绍Amazon分布式存储引擎Dynamo(Consistent-Hashing算法,NWR模型,Vector-Clock,论文pdf)
摘要:转:http://hi.baidu.com/beibeiboo/blog/item/5418ff35533b061b91ef3908.html Dynamo是个什么东东呢Dynamo 是个什么东东呢?他是 Amazon 公司的一个分布式存储引擎。那么这个什么引擎又是什么?首先,假设一个场景,你的网站要存储用户登陆的IP。这个问题怎么解决呢?传统的方法是用数据库。数据库提供了方便的操作接口,复杂的查询能力以及事物的保证。好,现在假设大家都很喜欢你的网站,访问的人越来越多。一个数据库已经处理不过来了。于是你安装了3台数据库主机,把用户分成了三类(男人,女人,IT人;总是有某种方法把用户分成数目大致 阅读全文

posted @ 2013-06-08 16:55 Bo.Zhang 阅读(333) 评论(0) 推荐(0)

NoSQL数据库 Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparison
摘要:NoSQL数据库 Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparisonNoSQL世界的几个重要理论1.CAP理论CAP理论无疑是导致技术趋势由关系数据库系统向NoSQL系统转变的最重要原因。CAP(Consistency,Availability,Patition tolerance)理论论述的是在任何分布式系统中,只可能满足一致性,可用性及分区容忍性三者中的两者,不可能全部都满足。所以不用花时间精力在如何满足所有三者上面。原理的证明简单的说就是,在保证分区容忍性的情形下,一致性和可用性是不可能同时达到的,高一 阅读全文

posted @ 2013-06-04 10:36 Bo.Zhang 阅读(360) 评论(0) 推荐(0)

False sharing问题及其解决方法
摘要:转载:http://webcache.googleusercontent.com/search?hl=zh-CN&newwindow=1&safe=strict&gbv=2&q=cache:-kZ77hm9shsJ:http://blog.yufeng.info/archives/tag/align+typedef+union+align&ct=clnk在做多线程程序的时候,为了避免使用锁,我们通常会采用这样的数据结构:根据线程的数目,安排一个数组, 每个线程一个项,互相不冲突. 从逻辑上看这样的设计无懈可击,但是实践的过程我们会发现这样并没有提高速度. 阅读全文

posted @ 2013-06-04 10:36 Bo.Zhang 阅读(277) 评论(0) 推荐(0)

探讨:分布式系统与集群的区别
摘要:转载:http://stor-age.zdnet.com.cn/stor-age/2011/0713/2046502.shtml简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。例如:如果一个任务由10个子任务组成,每个子任务单独执行需1小时,则在一台服务器上执行改任务需10小时。采用分布式方案,提供10台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。而采用集群方案,同样提供10台服务器,每台服务器都能独立处理这个任务。假设有10个任务同时到达,10个服务器将同时工作,10小后,10个任务同 阅读全文

posted @ 2013-06-04 10:36 Bo.Zhang 阅读(136) 评论(0) 推荐(0)

经典--浅析Erlang分布的核心技术
摘要:转载:http://developer.51cto.com/art/200812/100298.htm本文简单介绍了Erlang系统的核心技术和几个重要特性:分布、多核心支持、fp;并对erlang最强大的特性——分布特性做了重点介绍。Erlang系统在我看来有3个特性: 1. 分布 2. 多核心支持 3. fp。 这3个特性中分布我认为是erlang最强大的,从第一个版本就支持到现在,相对非常成熟,而多核心支持是这几年才加进去的。erlang的分布系统做到了2点:1.节点的位置无关性;2. 对用户分布式透明的。具体体现就是node是靠名字识别的, 进程也是靠pid来识别。分布系统就要实现节点 阅读全文

posted @ 2013-06-04 10:33 Bo.Zhang 阅读(189) 评论(0) 推荐(0)

Redis几个认识误区
摘要:转载:http://www.erlangsir.com/2011/05/31/redis%e5%87%a0%e4%b8%aa%e8%ae%a4%e8%af%86%e8%af%af%e5%8c%ba/前几天微博发生了一起大的系统故障, 很多技术的朋友都比较关心,其中的原因不会超出James Hamilton在On Designing and Deploying Internet-Scale Service(1)概括的那几个范围,James第一条经验“Design for failure”是所有互联网架构成功的一个关键。互联网系统的工程理论其实非常简单,James paper中内容几乎称不上理论, 阅读全文

posted @ 2013-06-04 10:33 Bo.Zhang 阅读(164) 评论(0) 推荐(0)

nutch+hadoop 配置使用
摘要:转:http://zbszone.iteye.com/admin/blogs/622228配置nutch+hadoop1,下载nutch。如果不需要特别开发hadoop,则不需要下载hadoop。因为nutch里面带了hadoop core包以及相关配置2,建立目录(根据自己喜好)/nutch/search (nutch installation goes here) nutch安装到这里,也就是解压到这里/filesystem hadoop的文件系统存放点/local /crawl后放置索引用来search用的/home (nutch user's home directory) 如 阅读全文

posted @ 2013-06-03 09:18 Bo.Zhang 阅读(1604) 评论(0) 推荐(0)