码迷,mamicode.com
首页 > 数据库 > 详细

BAT都在用的数据库

时间:2016-08-12 15:25:40      阅读:326      评论:0      收藏:0      [点我收藏+]

标签:数聚传媒   搜索引擎   云计算   nosql   大数据   

    在大数据高速发展的今天,数据量在不断的增加,特别是互联网web2.0应用的兴起及云计算所需要的海量存储和海量计算发展,传统的关系型数据库暴露了很多难以克服的问题,已无法满足这方面的需求。而非关系类型的数据库(NoSQL=Not Only SQL,意即“不仅仅是SQL”)则由于其本身的特点从而得到了非常迅速的发展,因为它的产生就是为了解决大规模集合和多重数据的存储和计算方面的大数据应用难题。
根据国际数据公司IDC检测统计,2011年全球数据总量已达1.8ZB (1ZB 等于1万亿GB),  且数据总量增长每两年翻一番,预计到2020年全球总量将达到40 ZB,地球上人均数据预计将达到5247GB.据统计,现在的谷歌搜索引擎每秒使用用户量已超过200万,Twitter每天就会生成超过10TB的数据,Facebook的数据为几十TB,一些特殊的企业在每小时就会产生TB级别的数据。
但是,如何利用这些数据 从中产生最大的商业价值,是所有公司和机构共同面临的挑战。这个问题比较复杂,虽然技术人员在技能提升和专业工具的帮助下,对数据越来越了解,但由于数据的增长速度越来越快,积累量越来越大,公司和机构可以利用的数据比例正在迅速下降。
    我们知道sql数据库可以存储数据和处理数据,但是NOSQL最大的一个优势就是在处理大数据这方面,能够深度处理大数据,分析数据,从大量的数据中获取有用的资源。

技术分享

 
而传统的关系数据库在大数据处理方面就显得力不从心,暴露出了很多难以克服的问题,例如:
1、对数据库高并发读写的需求


Web2.0应用要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了。其实对于普通的BBS网站,往往也存在对高并发写请求的需求,例如像一些网站的实时统计在线用户状态,记录热门帖子的点击次数,投票计数等,因此这是一个相当普遍的需求。

2、对海量数据的高效率存储和访问的需求

类似Facebook,twitter,Friendfeed这样的SNS网站,每天用户产生海量的用户动态,以Friendfeed为例,一个月就达到了2.5亿条用户动态,对于关系数据库来说,在一张2.5亿条记录的表里面进行SQL查询,效率是极其低下乃至不可忍受的。再例如大型web网站的用户登录系统,例如百度、阿里、腾讯,动辄数以亿计的帐号,关系数据库也很难应付。

3、对数据库的高可扩展性和高可用性的需求

在基于web的架构当中,数据库是最难进行横向扩展的,当一个应用系统的用户量和访问量与日俱增的时候,你的数据库却没有办法像web server和app server那样简单的通过添加更多的硬件和服务节点来扩展性能和负载能力。对于很多需要提供24小时不间断服务的网站来说,对数据库系统进行升级和扩展是非常痛苦的事情,往往需要停机维护和数据迁移,为什么数据库不能通过不断的添加服务器节点来实现扩展呢?
 

技术分享

因此,数聚传媒技术部门采用了非关系数据库中的MongoDB来存储数据。MongoDB的优点正是传统的关系数据库力不能及的。我们利用MongoDB解决了大规模集合和多重数据的存储和计算方面的大数据应用难题。
数聚传媒拥有精准的人群数据库,强大的人群cookie模型,通过分析,可以直接定位目标受众;近六千的用户标签,让广告智能的找用户;多重优化机制,渲染释放出最佳投放效果,得以构建全场景数据营销模式, 最后经过智能的算法以及竞价原理,实现广告投放效果最大化;合理的竞价模式使得广告主的广告投放即精准又有性价比。

技术分享

 

BAT都在用的数据库

标签:数聚传媒   搜索引擎   云计算   nosql   大数据   

原文地址:http://11926581.blog.51cto.com/11916581/1837247

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!