为了更好的实现个性化视频推荐,2009年,优酷土豆开始使用Hadoop大数据平台来进行数据的分析及挖掘。起初整个平台平台只有十多个节点,而到2012年集群节点已经达到150个,2013年更是达到了300个。但是随着数据量的急剧增加以及业务的迅猛发展,每天优酷处理的数据量已突破200TB,优酷土豆的技术人员发现一些场景并不适合利用MapReduce进行处理。
优酷土豆的大数据平台已使用多年,核心业务数据量的增长与数据处理速度的失衡成为优酷土豆Hadoop大数据平台的一大瓶颈。这个问题主要表现在三个方面:首先,在BI方面,分析师提交任务后需要等待很久才得到结果。其次,在进行一些模拟广告投放之时,在调优、筛选方面的计算量十分大,对计算效率的要求也较高,用Hadoop消耗资源过大而且响应较慢。同时,MapReduce在机器学习和图计算的迭代运算方面不仅需要耗费大量资源,处理速度也不尽人意。
优酷土豆集团大数据团队大数据平台架构师傅杰介绍道:“虽然很多互联网企业都在用MapReduce来处理自己的业务,但是由于优酷的视频量大概在2亿的级别,视频的关系量目前在10亿的级别,这个级别的数据量利用MapReduce来计算CPU资源消耗比较高,而计算效率比较低,单纯依靠MapReduce框架已经无法满足视频推荐、广告投放效果预估等情景对实时性和准确性的要求。”
优酷土豆如何打造Hadoop平台
目前傅杰老师主要负责优酷土豆集团大数据基础平台建设,以支撑集团其他业务团队的存储与计算需求,包含Hadoop平台、日志采集系统、实时计算系统、消息系统以及天机镜系统等。据了解,Hadoop平台在优酷的发展,主要有以下几个阶段:
平台搭建期:这个阶段主要解决一些技术问题,比如安全问题、整体规划,以及制定相关流程;
平台发展期:这个阶段主要是在集团内部进行推广,伴随着会遇到各种各样的需求,以及解决各种各样的问题,修正相关流程,使平台进入一个稳定、高可用的水平;
平台稳定期:这个阶段主要是从优化资源入手,内部培训调优作业,统计资源消耗合理性,构建自动化优化流程。
“现阶段我们主要在调研Hadoop1.X 到Hadoop2.0的升级方案,预计明年初对Hadoop进行升级。今年我们也搭建了基于Storm的实时计算平台、kafka消息系统,推广到集团的线上业务中,也逐步流程化的运营起来了。”傅杰老师介绍说。
新手如何入门Hadoop?
据傅杰老师介绍,目前Hadoop在国内有很好的发展态势,各大企业对Hadoop的需求也比较旺盛,同时,应用Hadoop的行业也越来越多。但目前存在的问题是,Hadoop的优秀技术人才比较短缺。那么对于想踏入Hadoop领域的新手来说,应如何入门呢?
傅杰老师给出的建议是:
1.经常关注Hadoop官方网站;
2.深入了解Hadoop原理,比如HDFS、MapReduce。并思考目前所在企业哪些应用可以用Hadoop解决;
3.阅读Hadoop相关书籍。据悉,目前傅杰老师翻译的《Hadoop实战手册》将在年底出版,这本书也很适合新手阅读;
4.搭建环境实战,比如可以试着跑一个wordcount。
和英特尔一起Spark/Shark
为此,优酷土豆在英特尔公司的帮助下率先尝试了Spark/Shark内存计算框架来解决多次迭代以及复杂的算法。以计算实力著称的英特尔,在项目中在软件优化、方案设计、Scala语言培训等方面给优酷土豆提供了多方面的帮助,以过硬的软实力及对整个行业的深入洞察,与优酷土豆的需求不谋而合。
作为典型的互联网公司,优酷土豆大数据平台主要应用在广告、日常报表、推荐系统等核心业务上。随着对低延时的、实时要求很高的应用场景的增多,Spark/Shark在快速报表,交互式查询,做Ad-hoc的查询的表现,机器学习以及迭代式算法方面的优越性吸引了优酷土豆。Spark/Shark可每次将弹性分布式数据集(RDD)操作之后的结果存入内存中,下次操作可直接从内存中读取,省去了大量的磁盘IO,效率也大幅提升。
在瞬息万变的互联网市场,用户的个性化需求越来越多,而将Spark/Shark集成到优酷土豆原有的大数据平台后,在用户偏好分析、Top-N榜单计算等方面看到了喜人的变化。“与前几年不同,为了更加精准的为用户做出视频推荐,我们已经不再是简单的匹配视频的元信息了。计算视频与视频之间的相似关系,我们用到了图计算。利用图计算,我们将搜集到的视频图谱做聚类,然后再推荐给用户。”优酷土豆集团大数据团队技术总监卢学裕介绍道,“通过测试与对比,我们发现,计算相同规模的数据量,以前在单机上实现需要80多分钟,而在四台节点的Spark集群上运算时间缩短到了5.6分钟。”
通过混搭的方式,Hadoop与Spark/Shark结合的架构不仅使计算资源能够更加协调的被利用,也完善了优酷土豆的大数据分析,而重复视频推荐、刷浏览量冲击榜单的情况也减少了很多。作为国内视频行业第一家部署Spark/Shark解决方案的公司,优酷土豆在Spark/Shark方面的经验对整个视频行业有突出的价值。未来,双方也将继续进行深入合作,将整体方案进一步优化,并分享给更多行业合作伙伴,帮助他们更好的解决业务中面临的大数据挑战。