Hadoop、google 3大论文的开源实现,让开发者可以在商用服务器上做海量数据处理,其批处理方式虽然不适用于实时场景,但却可以让用户以更低廉的成本做离线数据分析,这也是为什么当下流处理框架林立,Hadoop仍然被广泛使用及讨论的原因。本期活动将从Hadoop开始,为大家打开基于业务的数据分析之门。
首先上场分享的是来自九城技术部负责Hadoop的架构师,周诚。他同时也是我们CSDN高性能计算板块Hadoop板块的板主,网名是撸大湿 ,相信经常登录论坛的同学都会有所了解。今天周诚带来的主题是“Hadoop大数据分析”,主要分享九城搭建的一个以Hadoop为基础的大数据平台,同时还分享了相关的具体案例。
Hadoop是一个能够对大量数据进行分布式处理的软件框架。Hadoop 依赖于低端的服务器,因此它的成本比较低,任何人都可以使用 ,在企业级的大数据应用中起到了关键作用。同时在Hadoop的可靠性、高效性、可升缩性也是我们选择的它的一个理由。在Hadoop引擎的驱动下,轻松驾驭大数据不再是遥不可及的梦想。
周诚分享了一个九城团队做过的简单实验,拿一台小机和Hadoop去做运算比较,用小机可能会花费超过百万,但是用一些廉价的机器,通过部署只需要三四十万就可以达到和小机同样的运算的效果,同时可以保障存储更靠谱,这也是分而治之、HDFS等后面讲到的模式。紧接着周诚分享了Hadoop的架构问题和Hadoop分析工具。现在讲Hadoop,讲大数据,最后我们总是要回归到分析工具上。这块他主要讲了Mahout,Mahout是Hadoop系统里面很重要的分析工具以及预测性工具,同时也分享了九城游戏中如何使用这些工具来做数据统计的案例。
接下来周诚分享了九城的商品定向推荐功能,什么叫定向推荐?定向推荐就是根据用户的行为习惯,行为特征,以及用户的一些特殊属性,或者群体类属性为用户推荐一些用户可能需要的系统预测,可能会需要的商品。这就叫商品定向推荐,这个和一般电商的推荐又有所不同。紧接着周诚展示了九城是如何实现定向推荐的,周诚表示首先需要建立数据矩阵,通过真实的数据ETL划分经纬度,利用余弦相似度公式来计算,得出一个简单的数据。这些其实都很简单,只要有数据模型通过HIVE来计算都可以实现。但是有一些比较困难的数据就需要Hadoop通过两个算法来实现:UserCF和ItemCF。UserCF和ItemCF是协同过滤中最为古老的两种算法,在top-N的推荐上被广泛应用。这两个算法之所以重要,是因为这两个算法使用了两个不同的推荐系统基本假设。UserCF认为一个人会喜欢和自己有相同爱好的人喜欢的东西,而ItemCF认为一个人会喜欢和自己以前喜欢的东西相似的东西,这两个算法确有相似的精度。所以说,这两个算法是很互补的。
最后周诚介绍了九城的SkyNet,他表示SkyNet从技术方面来说第一个作用是业务框架,第二个是协处理器的分布式计算,在数据量小的情况下,可以做一些实时的报表;从业务方面来说SkyNet有实时数据查询、实时分析报表、在线数据监控和在线数据挖掘的作用,这就是SkyNet可以做到的业务结构。同时周诚还有更多精彩内容分享,详情可参考下面的PPT:
接下来进行主题分享的是来自于携程旅行网负责网站运营中心容量平台的周海燕,她带来的主题分享是“ctrip的web容量分析办法”。主要介绍了ctrip的容量规划任务,通过使用当前性能作为基线数据,评估以及预测系统需要什么资源,什么时候需要更多的资源。其中包括,基于周期性季节指数预测法的业务量预测,基于回归分析的web容量预测等。
首先周海燕从容量和性能上来做对比,她表示性能的优化没有固定的时间,也没有固定的计划,不可能说是规定一个星期内,把这个集群上的这套应用优化,然后性能要达到从70%降到50%。但是容量不同,容量是企业做了一个周期性的有计划的进行,包括每个季度的容量采购。所有的公司都希望自己的业务增长,业务增长带来的就是所有的网站的资源,都需要增长的,都需要不断的扩充,不断的采购,这样的公司都会有一个季度或者是半年,一个采购计划,就是从容量分析中来。
周海燕总结道:再扩容分析中第一步应该了解当前的基础设施工作状况。第二步制定容量健康标准。第三步,持续监控与采集容量相关的指标,数据源持续不断的监控与采集容量相关的指标。 第四步,建立自己的容量模型。第五步,建立趋势预测模型。最后那步不断的重复、迭代、校准容量规划。这样等到你真的要做你的计划的时候,你就会拥有最准确的数据。有些人问做这样的容量分析,容量规划有什么用呢?最直接的就是不会宕机了!周海燕还分享了容量分析的指标以及容量计算的公式,以及携程自己的扩容案例,以及携程的CTRIP自动化容量分析平台等等,更多内容分享详情可参考下面的PPT: