ERP俱乐部
ERP爱好者、ERP从业者互相交流、互相学习的乐园;我们的愿景是成为全球一流的中文ERP(Enterprise Resource Planning)交流平台
网站首页 论坛首页 搜索 用户列表 FAQ 注册 登录  
ERP俱乐部 -> 信息化建设讨论组 -> 数据仓库与数据挖掘 -> 淘宝海量数据库之一:来自业务的挑战
  淘宝海量数据库之一:来自业务的挑战
帖子发起人: 半神   发起时间: 2012-02-14 10:32 上午   回复数: 0
? 上一主题 下一主题 ?
楼主
  2012-02-14, 10:32 上午
半神 离线,最后访问时间: 2013/6/5 18:59:05 半神

发帖数前25位

超级管理员
职务: 超级管理员
80级
等级: 80级
注册: 2008年1月6日
区域: 华南
经验: 1,267
积分: 1,131
精华: 2
发贴: 590
排名: 26
Site AdministratorsGlobal ModeratorsSite ModeratorsSite Registered Users培训学员(MM学员服务区-北京200708班) 培训学员(FI学员服务区-深圳200805班) 每日发帖之星
淘宝海量数据库之一:来自业务的挑战
 
作为一个电子商务企业,从一开始,数据库及其事务能力在淘宝就扮演着十分关键的角色,淘宝也积累了丰富的数据库的架构和规划等方面的经验,产生了众多优秀的DBA。

   淘宝是一家迅速发展的公司。全球网站排名公司Alexa提供的数据显示,2010年4月27日,Amazon、Ebay的用户占全球互联网用户的百分比 分别为3.47%和2.68%,而淘宝的用户占全球互联网用户的百分比则达到了4.1%,淘宝网日独立访问量从此超过了Amazon和Ebay。

  淘宝的数据规模及其访问量对关系数据库提出了很大挑战:数十亿条的记录、数TB的数据、数千TPS、数万QPS让传统的关系数据库不堪重负,单纯的硬件升级已经无法使得问题得到解决,分库分表也并不总是凑效。下面来看一个实际的例子。

  淘宝收藏夹是淘宝线上应用之一,淘宝用户在其中保存自己感兴趣的宝贝(即商品,此外用户也可以收藏感兴趣的店铺)以便下次快速访问、对比和购买等,用户可以展示和编辑(添加/删除等)自己的收藏。

  淘宝收藏夹数据库包含了收藏info表(一条一条的收藏信息)和收藏item表(被收藏的宝贝和店铺)等:

  •   收藏info表保存收藏信息条目,数十亿条
  •   收藏item表保存收藏的宝贝和店铺的详细信息,数亿条
  •   热门宝贝可能被多达数十万买家收藏
  •   每个用户可以收藏千个宝贝
  •   宝贝的价格、收藏人气等信息随时变化

   如果用户选择按宝贝价格排序后展示,那么数据库需要从收藏item表中读取收藏的宝贝的价格等最新信息,然后进行排序处理。如果用户的收藏条目比较多 (例如1000条),那么查询对应的item的时间会较长:假设如果平均每条item查询时间是5ms,则1000条的查询时间可能达到5s,若果真如 此,则用户体验会很差。

  如果把收藏的宝贝的详细信息实时冗余到收藏info表,则上述查询收藏item表的操作就不再需要了。但是,由于许多热门商品可能有几千到几十万人收藏,这些热门商品的价格等信息的变动可能导致收藏info表的大量修改,并压垮数据库。

   OceanBase是淘宝自主研发的海量数据库,并且已经开源( http://oceanbase.taobao.org/ )。在应用团队和OceanBase团队的共同努力下,上述问题得到了很好地解决:平均响应时间几十毫秒,最长响应时间一百多毫秒。与先前使用的关系数据 库相比,系统QPS和TPS提升了几倍,服务器数量反而减少了。


开源时代的到来,对与技术人员是一个巨大的考验



QQ:876162454


分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
 第 1 页 总共 1 页 [共有 1 条记录]
ERP俱乐部 -> 信息化建设讨论组 -> 数据仓库与数据挖掘 -> 淘宝海量数据库之一:来自业务的挑战
(C)Copyright 2005-2020 www.erpclub.org All Rights Reserved.
Tel:+86-755-26444630
Email:webmaster@yok.com.cn