关于自动分裂的思考
浏览:1605次 出处信息
自动分裂是分布式系统中的一项重要技术,通常与自动迁移和负载均衡一起考虑,提供了系统的可扩展性和良好的性能。例如 Google 的 BigTable 和 Yahoo 的 PNUTS 都实现了类似的功能,我之前也认为这应该是一个好的分布式系统标配。
但读了 Facebook 关于实时 Hadoop 的文章后,结合我自己在工程上的实践,我开始反思这一想法,认识到了这个功能的一些局限性。
Facebook 在打造实时 HBase 系统时,放弃了 HBase 提供的自动分裂,而专门开发了手工分裂功能。对此, Facebook 的解释是:
Facebook 给出的三个原因是非常合理的,我也很赞同,但我想补充一下我对自动分裂局限性的两个考虑:
从上面列出的几点来看,使用、改造或者实现一个分布式系统时,不能仅仅考虑方案是否漂亮,还要考虑到该系统的具体应用场景。脱离了应用场景的系统实现,如同漂亮的水果,吃起来不一定甜啊!
建议继续学习:
- 分布式缓存系统 Memcached 入门 (阅读:14888)
- Zookeeper工作原理 (阅读:10665)
- GFS, HDFS, Blob File System架构对比 (阅读:9520)
- Zookeeper研究和应用 (阅读:8656)
- 分布式日志系统scribe使用手记 (阅读:8200)
- 一致性哈希算法及其在分布式系统中的应用 (阅读:8087)
- 分布式哈希和一致性哈希 (阅读:7829)
- HBase技术介绍 (阅读:6977)
- 分布式系统的事务处理 (阅读:6227)
- Memcache分布式部署方案 (阅读:5599)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:记录碰到的HBase问题
后一篇:【外刊IT评论网】关于node.js语言的讨论 >>
文章信息
- 作者:Solrex Yang 来源: Solrex Shuffling
- 标签: 分布式 分裂
- 发布时间:2011-11-04 21:53:57
建议继续学习
近3天十大热文
-
[63] memory prefetch浅析
-
[53] 转载:cassandra读写性能原理分析
-
[52] 深入浅出cassandra 4 数据一致性问
-
[41] MySQL半同步存在的问题
-
[39] 获取Dom元素的X/Y坐标
-
[39] 《web前端最佳实践》—高维护性css
-
[39] 字符引用和空白字符
-
[37] 基本排序算法的PHP实现
-
[36] javascript插入样式
-
[35] JS中如何判断字符串类型的数字