乐思软件

提交需求|联系我们|请电400-603-8000

淘宝构建20节点RAC系统 处理海量数据

  “面对淘宝业绩的倍数成长,我们深刻地感到基于Oracle RAC构建企业级数据仓库是一个正确的选择,Oracle解决方案为淘宝数据仓库提供了支持未来持续成长的延展空间,使我们能够随着业务的发展不断提升数据仓库环境的性能,满足公司在市场分析和预测方面迅速增长的业务需求。” ——汪海 淘宝网资深总监

  淘宝网(www.taobao.com)由阿里巴巴集团于2003年5月10日投资创办,淘宝的业务范围跨越了C2C(个人对个人)和B2C(商家对个人)两大部分,是亚洲最大的购物网站。

  淘宝于2004开始基于Oracle产品构建企业级数据仓库(EDW),并于2007年、2008年和2009年三次利用Oracle RAC 10g和Oracle RAC 11g对数据仓库系统进行了升级和扩充,将数据仓库部署在全球领先的RAC系统——由20个节点组成的单一数据库集群——之上,使淘宝在数据仓库规模每年成倍扩大的情况下,实现了数据处理和分析时效性的不断提升,过去需要数天才能完成的计算现在当天能完成,部分以前属于小时级别的计算更是提高到了分钟级别。目前,淘宝数据仓库能够每天处理几亿次的用户行为,日处理的数据量接近30TB,堪称目前国内每天数据处理量最大、最忙的数据仓库。

  淘宝首席DBA、资深技术专家陈吉平指出:“淘宝数据仓库不仅仅是一套数据存储和管理系统,更是一套与业务数据紧密结合的动态数据仓库系统,系统需要每天甚至每小时动态地处理海量的增量数据和全量数据,Oracle RAC无论是在基础架构方面和还是在性能方面都非常适合我们实施高效的海量数据处理。”

  构建数据仓库,续写电子商务传奇

  淘宝通过搭建一个完全自由竞争的互联网交易基础设施,创造出了一个包括了买家、卖家、支付、物流、金融、广告、搜素等环节在内的商业生态系统。然而面对淘宝所创造的电子商务传奇,淘宝的管理层清醒地认识到:尽管淘宝的快速发展揭示了中国的确存在巨大的电子商务潜在用户基础,但是在另一方面,中国电子商务市场目前还是一个年轻的、还远没有成熟的市场,因此淘宝需要为店铺和消费者不断提供更新、更全面的服务,从而全面促进客户体验,通过企业级数据仓库来洞察与了解客户的需求则是实现以上目标的最有效手段之一。

  利用Oracle的数据仓库技术,淘宝实现了将分散在不同业务系统中的业务数据高效地抽取到集中的数据仓库平台,这些完整记录了访问点击、交易过程、商品类目属性以及呼叫中心客服内容等方面信息的海量数据,通过数据仓库的各种技术手段进行综合的处理,并生成反映最新状况的统计分析数据、指标和报表,可以精确地反映出在浏览、交易、商品等方面的最新用户行为和业务趋势,使淘宝能够及时了解和掌握用户的核心兴趣和消费特征,在交易中提供精准的个性化服务,同时在店铺的各个发展阶段有针对性地设计增值服务,全方位增强了企业的市场竞争能力。

  利用高性能平台应对海量数据处理的挑战

  目前淘宝数据仓库的数据量接近30TB,但与大多数数据仓库不同的是,淘宝这30TB数据基本上都是需要每天进行动态分析的。例如,为了达到监控虚假的交易信息和评价,淘宝数据仓库需要每天查询和分析用户的评价及其星级变换情况,确保淘宝星级诚信体系的权威性。再例如《i淘宝》——淘宝的个性化推荐平台——可以根据用户在淘宝上的历史行为习惯,直接给用户推荐适合的商品、店铺、好友等。然而要得出个性化的推荐结果,需要将每天大量的客户行为轨迹信息与会员信息、商品属性信息结合起来进行综合分析处理,看似简单的个性化推荐其背后是极为庞大的数据计算。淘宝数据仓库不仅计算量十分巨大,且计算实效性要求很高,这就决定了它对于数据处理能力的需求远高于一般的数据仓库。

  陈吉平表示:“Oracle RAC 强大的并行处理能力为我们应对处理海量数据的挑战提供了极大的帮助,在单个节点内部,并行计算和非并行计算的效率差别是很大的。在一次性处理特别大量数据的时候,Oracle RAC的跨节点并行计算功能则体现了更大的作用。”

  在《i淘宝》实现个性化推荐的计算中,通过使用Oracle RAC 跨节点并行技术,淘宝数据仓库实现了相关模块计算时间的显著缩短,最多的缩短了2小时以上,最少的也缩短了30分钟,为淘宝成功实施个性化推荐提供了重要保障。

  陈吉平进一步指出:“除了《i淘宝》的个性化推荐之外,淘宝数据仓库还提供了店铺内推荐、精确邮件定向营销以及购物风尚榜等服务项目,同时每天出具400张左右的报表,这些服务项目和数据指标使用起来非常简单,其实它们都是来自于海量数据的高度浓缩,基于Oracle RAC的高性能平台很好地支持了这些非常复杂的计算过程。”

  系统可轻松扩展,支持业务的高速发展

  从2004年开始构建企业级数据仓库以来,淘宝数据仓库不仅所处理业务数据每年增长数倍,更是需要不断完成新的业务需求。利用Oracle RAC能支持线性扩展的特点,淘宝轻松完成了数据仓库平台由Oracle RAC 4节点环境到12节点环境再到20节点环境的扩展,使数据仓库能够从容应对业务需求快速变化和业务数据爆炸式增长的挑战,过去需要数天才能完成的计算现在当天就能完成,部分以前属于小时级别的计算更是提高到了分钟级别。

  陈吉平表示:“Oracle RAC 支持线性扩展的能力对我们来说特别重要,在大多数情况下,Oracle RAC 能够实现计算能力和节点数按照线性比例增加,基本上是节点数的翻倍,处理同样数据量的计算时间减半,这对于我们根据业务的发展趋势和需求变化,经济合理地进行IT扩容有非常大的帮助。”

  利用Oracle RAC,淘宝实现了根据业务发展需要的对系统进行“按需扩展”。例如,将系统从12节点扩展到20节点,使近500个ETL任务能够在每天的0:30-9:00之间全部准时完成,保证了数据集市中数据的新鲜度可以到最近的一天,同时实现了在新业务上线后的第一时间内就能够分析出业务的合理估值和效果。

  为什么选择 Oracle:

  陈吉平表示:“淘宝数据仓库是典型的互联网数据仓库,源头业务变化非常快,这对于数据仓库平台的基础架构和性能方面都构成了极大的挑战,我们之所以选择Oracle RAC构建淘宝数据仓库,主要考虑该系统在以下三个方面的优势能够帮助我们应对挑战:

  1、并行处理能力:

  淘宝数据仓库中的许多业务查询与分析都是动态的,数据处理量十分巨大,且实效性要求很高,Oracle RAC具有非常好的并行处理能力,这对动态查询和模糊查询有很大帮助,能够有效满足淘宝数据仓库这种复杂和动态的海量数据分析处理需求。

  2、可线性扩展能力:

  对于淘宝这样处于新兴行业中且高速发展的企业来说,Oracle RAC 良好的线性扩展能力极为重要,它使得淘宝可以在需要的时候通过向集群中增加低成本的普通服务器来满足高性能的数据处理需求,从而获得在目前市场环境下尤为重要的经济性。更为重要的是,Oracle RAC的线性扩展能力能够保证我们始终提供整个企业统一的信息视图和数据集市。

  3、高效的系统管理能力:

  对于大型的数据仓库应用系统而言,如何能有效而简单地进行系统管理是非常重要的。特别是当数据量不断扩大时,如果没有一种有效而且简单的系统管理措施,那么系统的运行费用将会很高。Oracle ASM提供了磁盘管理、数据流量平衡,空间管理以及自动创建和删除数据文件等自动化的存储管理功能,可以有效增加数据仓库系统管理动态数据库环境的灵活性,提高存储管理效率并降低管理成本。

集成系统网络情报信息数据库

CIO频道人物视窗
CIO频道方案案例库
大数据建设方案案例库
电子政务建设方案案例库
互联集成系统构建方案案例库
商务智能建设方案案例库
系统集成类软件信息研发企业名录