加载中…
个人资料
害洋局
害洋局
  • 博客等级:
  • 博客积分:0
  • 博客访问:9,590
  • 关注人气:2
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

Twitter:为何弃用MySQL转而使用NoSQL

(2011-01-10 19:45:43)
标签:

nosql

cassandra

twitter

it

分类: WEB技术

导语:2009年开始掀起的“NoSQL革命”在Web领域造成了极大的反响,Twitter也在2010年对 其Tweets数据类型引进新生的NoSQL数据库。近日,国外知名网站readwriteweb.com企业频道作者Klint Finley撰写了一篇有关“Twitter放弃MySQL转而使用NoSQL缘由”的文章。

Twitter:为何弃用MySQL转而使用NoSQL

以下为文章摘要:

InfoQ在今年早些时候发布了一个演讲视频,在该视频中,Kevin Weil谈到了公司应如何使用NoSQL。Weil指出Twitter严重依赖于MySQL。然而,当MySQL在许多用途上表现的并不理想的时候 Twitter使用了NoSQL解决方案。据威尔介绍,在2009年里,Twitter用户数从1月份的每天约200万人,激增至12月份的每天近 5000万人。每天登陆Twitter的用户数量增长已经超过了20倍。目前Twitter每天产生的用户数据在12TB左右,而每年约产生4PB的数 据。

Scribe

Twitter的系统日志在一段时间后停止记录转而进行压缩,鉴于此,Facebook开始使用Scribe来替代它。Scribe创建在 Facebook开源框架上,Twitter已经发布了一些Scribe的程序以便完善它。现在Twitter使用Scribe来记录Hadoop的日 志。Scribe使Twitter记录日志数据变得简单。Scribe还可以比以前记录更多的数据,现在数据日志已经分成了80个不同的类别。

Hadoop

Twitter每天都需要将更多的数据可靠的写入到一个硬盘驱动器上,然而这是不现实的,所以像Twitter这样每天都产生大量数据的机构需要把 数据存储在集群之中才能满足其业务需求。Twitter使用了Cloudera的Hadoop为其分配集群。Weil指出,MySQL不能满足 Twitter在大规模做需求分析时所要求的效率,为了满足需求,Twitter使用了Hadoop及自己拥有的开源项目,他们称之为FlockDB。 Hadoop可以运行分析并找到在FlockBD中相似的社交图数据集合。

Pig

Twitter:为何弃用MySQL转而使用NoSQL

这种Pig脚本可以帮您找到其网站年龄在18至25岁访问者中访问量排名前五位的网页

Weil说Hadoop是通过Java语言实现的,但是Java相对复杂,这使得它很难快速的重复执行。相反,Twitter使用Pig脚本语言,这种脚本语言可以运行在Hadoop之上。

Yahoo创造了Pig脚本语言并使其快速发展,Weil表示,Pig非常易学并且容易理解。他说,你将受益于Pig的方便,并且它缩短了执行时间。

HBase

HBase是建立在Hadoop的之上的,并且具有低延时和数据可变性的设计。 Twitter的使用它来增强人们对搜索功能的需求。

FlockDB

FlockDB是一个实时的、分布式的数据库。如上所述,它的建立和开源由来自Twitter。Twitter使用它的分析社交图,它的速度非常快。

对于希望更多了解Twitter如何分析社交图的资料请点这里

Cassandra



Twitter:为何弃用MySQL转而使用NoSQL

Twitter至今仍然在尝试并使用Casandra。但对Twitter而言,Cassandra也非万能,首先在于Cassandra代码或许 还存在不少问题,Twitter如果投入大量的精力来改进Cassandra和比较优化MySQL的投入来看有点得不偿失。Weil也提到 Cassandra在Twitter的内部测试中曾经暴露出不少严重的问题。

Twitter拿所有的这些数据都用来做什么?

Twitter对它收集的所有数据有各种各样的用途。有些只是简单的计数问题,如计算出有多少请求它的服务,每天有多少搜索服务等等。

其他用途更为复杂。例如,不同类型用户的运行比较。Twitter的分析数据,以确定是否为移动用户,用户中谁使用了第三方客户短或“超级用户”与普通用户使用Twitter的不同。

韦伊最后指出,Twitter的其他问题包括:确定转推的话题中哪些类型是人们最感兴趣,最成功的网络需要什么样的社会效果图结构,以及如何区分不同类型的人。

原文地址:http://www.readwriteweb.com/
引用地址:http://cloud.csdn.net/a/20110106/289641.html

知名NoSQL数据库:
Cassandra
CouchDB
Drizzle
Membase
MongoDB
Neo4j
SimpleDB
FlockDB
Project Voldemort
Riak

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

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

    新浪公司 版权所有