淘宝大数据之路 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
aliyun123
V2EX    请不要再发这样的文章

淘宝大数据之路

  •  
  •   aliyun123 2017-05-12 15:57:08 +08:00 3886 次点击
    这是一个创建于 3144 天前的主题,其中的信息可能已经有所发展或是发生改变。

    免费开通大数据服务: https://www.aliyun.com/product/odps

    转载 yanchun

    2003 年至今淘宝网从零开始飞速发展,走过了 13 个年头,支撑淘宝业务野蛮式生长背后是一套不断完善的技术平台,淘宝大数据平台,就是其中非常重要的一个组成部分,承担了数据采集、加工处理、数据应用的职责,淘宝大数据平台一路到今天,总共经历了三个大的阶段(如图 1 ),不同阶段面临了不一样的战,随着我的理解回顾下这些年大数据所经历过的故事:

    第一个阶段:RAC 时代

     2008 年前的单节点 ORACLE,这个时候还称不上数据仓库,只能承担简单的数据处理工作,也基本上没有数据仓库架构,随着业务的飞速发展,很快单节点的 ORACLE 因无扩展能力,计算存储能力就应付不了了; 2008 年之后,为了应对日益增长的数据量,RAC 集群应运而生,从一开始的 4 个节点逐步发展到 20 个节点,成为当时号称全球最大的 RAC 集群,在 ORACLE 官网上也作为了经典案例,RAC 集群当时不管在稳定性、安全性、存储能力还是计算能力都表现非常优秀,随之而来第一代数据仓库架构也逐步形成; 这个阶段数据的 ETL 过程主要通过 ORACLE 的存储过程实现,大量的 SQL 脚本任务运行在集群上,任务运行的调度过程是通过 Crontab 来进行控制管理,随着任务数的不断增长,这时面临最大的问题是如何保证这成千上万的脚本每天是正常运行,出错后如何及时发现解决,这在当时天天困扰着开发,一直处于每天救火的状态,也就是这个时候,为了解决这个难题,数据团队开始自主研发调度系统,并将之命名为天网调度系统,形成了如下第一代调度系统的架构和原型: 

    第二个阶段:HADOOP 时代

     调度系统的上线很好的解决了每天救火的状态,但是好景不常在; 2008 年,淘宝 B2C 新平台淘宝商城(天猫前身)上线; 2009 年,淘宝网成为中国最大的综合卖场; 2010 年 1 月 1 日 淘宝网发布全新首页,此后聚划算上线,然后又推出一淘网;业务的飞速发展给数据带来的挑战,就是每天处理的数据量也在不断的翻倍,首先碰上瓶颈的是 RAC 集群针对网站的访问日志数据已经搞不定了,RAC 集群虽然有一定的扩展能力,但是无法无限制的线性扩展,并且扩容就意味着高昂的机器成本和软件成本,为了应对日益增长的数据量,2009 年数据团队开始探索新的技术领域,同时探索应用了两个方向的技术:Greenplum 和 Hadoop,主要的场景就是用来解决海量的日志数据,Hadoop 因其良好的线性扩展能力,并且是开源的系统,能够基于官方版本二次开发适合淘宝的特性功能,逐渐占据了优势; 2010 年初,最终确定放弃 Greenplum 和 RAC,全面使用 Hadoop,也就是这个时候我加入了淘宝数据团队,之后不久数据团队启动了去 O 项目,整个数据团队历经一个多月时间,风风火火将所有 RAC 上的存储过程,改写成 HIVE 和 MR 脚本,并将所有的数据都搬到了 Hadoop 上,Hadoop 集群命名为云梯 1,形成了 Hadoop 时代的数据仓库架构,如下图 4: 进入 2010 年底,数据应用场景越来越多,2010 年底发布了量子统计(淘宝官方版),2011 年 4 月 1 日淘宝发布了数据魔方,将数据对外进行开放,广告和搜索团队也大量将数据应用到业务系统中,对内的淘数据产品也越来越成熟,数据的大量应用,带来的一个问题是如何保证数据的准确性和稳定性,需要从数据采集到数据加工及最终的数据应用全流程的保障; 这时第一个环节就碰到了问题,数据同步,业务系统有各种各样的数据源,ORACLE、MYSQL、日志系统、爬虫数据,当时有多种同步的方式,有通过 SHELL 脚本的、也有通过 Jdbcdump 的、还有别的方式,当时负责数据同步的同学,最痛苦的事情莫过于,业务系统进行数据库变更时,各种同步任务需要不断的调整,每次调整几百个任务极其容易出错,当时为了解决数据同步的问题,数据工具团队开始研发专门的同步工具 DATAX,也就是现在同步中心的前身,同时还研发了针对 DB 的实时同步工具 Dbsync 和针对日志的 TT,现在统一叫 TT,如图 5: 天网调度系统也不断进行完善,开始支持小时调度、甚至分钟调度,并且集成了自动告警等一系统功能,升级为在云端,相关的 DQC 系统、数据地图、血缘分析等周边系统在这个时期不断推出,数据团队也不在断壮大。 在这期间,双十一网购狂欢节的影响力不断放大,已成为中国电子商务行业的年度盛事,并且逐渐影响到国际电子商务行业,不断刷新的成交记录刺激着所有人的神经。这时为了直观的提供第一线的数据给到决策层,产生了数据直播间的数据应用,需要活动当天及统计相关的数据,2013 年前,采用的方式都是基于 Hadoop 一个小时计算一次的方式进行数据计算,数据存在一定的延迟性,从 2013 年开始,数据团队开始投入研发实时计算平台,也就是现在的 galaxy,并在当年的双 11 上线了第一个应用,双 11 数据直播间实时版本。 

    第三个阶段:MaxCompute (原 ODPS )自主研发的大数据平台时代

     就在 Hadoop 大量应用的同时,另外一个项目正在悄悄进行,那就是阿里云团队自主研发的 ODPS 系统,ODPS 所有的代码都由阿里自己完成,在统一、安全、可管理、能开放方面相比于 Hadoop 做了大量的完善,ODPS 系统命名为云梯二,从 2010 年开始,在很长一段时间内,一直处于云梯一和云梯二并存的状态; 这期间,集团为更好的打造数据生态,成立了 CDO,统一数据平台事业群,专门投入研发大数据平台的相关工具,包含计算存储平台、周边的调度系统、元数据血缘系统、数据质量管理系统、还有 DQC 等; 这个状态持续到 2013 年 4 月, 这时出现了一个新的挑战,Hadoop 集群的上限是 5000 个节点,按照当时数据增长数据的推算,集群存储即将撞墙,但是基于当时的状况,ODPS 无法完全替代 Hadoop,于是当时启动了一个规模非常庞大的项目,叫做“ 5K 项目”,同时进行云梯一和云梯二的跨机房集群项目,当时世界上没有任何一家公司具备跨机房的能力,存在非常大的技术挑战,最后项目历经近 5 个月的周期,攻克大量技术难点,项目取得了成功; 在“ 5K 项目”成功的同时,ODPS 架构逐步成熟,于是全集团又启动了一个规模更庞大的项目,叫做“登月项目”,将全集团的数据加工应用全部搬移到 ODPS,项目一直持续到 2015 年,Hadoop 正式下线,淘宝大数据彻底进入 ODPS 时代,整个数据的生态圈也越来越丰富,同时,阿里云开始对外提供云服务,其中大数据解决方案作为其中重要的组成部分,也开始对外提供; 时间回到 2013 年时,当时淘宝数据团队的每个成员都在忙于应对各类需求,每天都有做不完的各类报表,当时为了解救自己,数据团队开始摸索探索新的数据服务模式,思考如何解决数据冗余、口径统一、数据交换、用户自助等一系统问题,最终通过一段时间思考和摸索,开始研发孔明灯产品,针对不同的数据角色形成了一套完整的数据解决方案,如下: 孔明灯产品的出现,对传统的开发模式做了个升级,对整个大数据建设也起到了非常好的管理作用,当时在淘宝内部,覆盖了大部分的业务 BU,对数据使用成本的降低,释放了大量的人力,同时也吸引了外部用户高德地图、阿里健康基于这套体系进行大数据建设; 2014 年,集团公共层项目启动,集团内的各个数据团队,开始进行数据内容重构和整合,同时,CCO 正式成立,七公来到 CCO 带领技术团队,薛奎来到 CCO 带领数据仓库团队,CCO 也基于 ODPS 启动公共层建设项目,集成了包括淘系、1688、ICBU、AE 相关的服务数据,公共层建设的同时完成了登月项目,并且与 DIC 团队、RDC 团队协同建设了服务数据门户 DIGO 产品; 今天,数据在阿里巴巴已经深入到每个角落,阿里云有强大的算法团队、大批的数据接口人、分析师,每天的工作都与数据产生关联,随着人工智能的不断深入使用,业务系统的不断创新迭代,对数据的采集、加工、应用又提出了新的要求,如何更好的提供数据服务,面对未来我们需要思考更多,数据将进入一个新的时代-数据智能时代。 
    Livid
        1
    Livid  
    MOD
    PRO
       2017-05-12 16:36:56 +08:00
    有些话想对你们说:

    t/360397
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2664 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 13:52 PVG 21:52 LAX 05:52 JFK 08:52
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86