Facebook为什么选择了Hadoop和HBase

这篇文章主要介绍Facebook为什么选择了Hadoop和HBase,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  横向扩展性强。对Facebook这种海量数据存储场景来说,扩容几乎是家常便饭,HBase能够使数据扩容非常容易。

  支持很高的写吞吐。Facebook的消息数据很庞大,每天的写量也很大。

  在同一个数据同中心,能够保证有较强的一致性。Facebook用HBase来存储消息数据,业务上需要一个能够保证一致性的数据存储(这也是Facebook并没有采用Cassandra的原因之一["WefoundCassandra'seventualconsistencymodeltobeadifficultpatterntoreconcileforournewMessagesinfrastructure"fromquora])

  有良好的随机读性能。消息系统的业务逻辑导致会有很多穿透缓存层的随机读操作。

  高可用性,故障可恢复性。由于数据量大,分布的机器也可能很多,出故障或者进行一些日常升级工作会比较频繁,需要能够有很高可用性的系统。

  错误隔离性。一个结点的错误不会影响到其它结点,磁盘故障只会对相应的小规模的数据产生影响。

  提供原子性的read-modify-write操作。原子性的increment或者对比后修改的操作,对很多业务上的处理非常方便。

  提供获取某个范围的数据的功能。比如像获取某人最近100条消息这样的功能,在消息系统里是很常见的需求。

  当然,下面几个Hadoop和HBase不太擅长的方面也值得一说:

  同一个数据中心网络割裂下的容灾性。同一个数据中心的网络出现问题了,导致各结点之间无法正常沟通,这种情况通常可以通过配置一些备用的网络设备来避免。

  某个数据中心故障不会影响服务。这个情况更是少之又少。

  在多个数据中心间的实时数据交换。这个不太现实,通常这一点是用Cache层来实现用户对无端数据的实时访问的。

以上是“Facebook为什么选择了Hadoop和HBase”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注蜗牛博客行业资讯频道!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接