天涯社区:Hadoop 让我们能为用户提供更好的体验

ZDNet

    天涯社区,是中国最为著名的社交平台,以传统的 BBS 形态承载着太多中国社会的“五彩缤纷”。在当前信息传播无边界的时代,天涯社区无疑是一个强大的舆论阵地,更是一个舆论品牌,有多个重大的社会问题爆料,有多少次社会爱心的传递,有多少回火热的社会话题的讨论,我想已经数不清了,但它们从一个侧面让我们清晰的感觉到天涯社区在中国互联网中的地位与影响力。

    伴随这种地位和影响力而来的则是巨大的访问量,和以此引发的海量数据,这对于天涯社区后台的 IT 系统与架构显然是一个巨大的挑战。当前,大数据是 IT 领最为引人瞩目的话题之一,那么天涯是否也在利用它们来应对自身承载的访问压力呢?对此,我近日采访了天涯社区云计算部总监王庆波,就相关话题进行了深入探讨。

大数据的天涯

    天涯社区成立于 1999 年,可以说是中国最早的一批互联网平台,到现在为止已经发展了 13 年,目前注册用户接近 7000 万,日均的用户覆盖,或者说日均的 UV 是超过 1000 万,日均的(PV)达到了 1 亿,王庆波介绍到,现在公司正在朝 SNS 社区、旅游行业,以及社交网络,加大力度进行发展。

    不过,这些新的拓展方向肯定需要一些新的应用的开发、部署,对于天涯社区的 IT,也就意味着更多的需求与挑战。王庆波表示,“我想天涯社区的整个 IT 的需求,和很多互联网公司都是一样的,应用种类繁多,上线更新的频率很快。因为我们需要创新很快,这里头的创新包括业务创新、产品创新,这些创新都对于我们的 IT 需求提出了更快、更好的这样的一些需求,需要我们底层的 IT 技术能够更好的来服务于产品以及服务,包括我们的用户,这些对于我们来说都是挑战。”而这其中,如何运用好不断积累的大数据是关键之一。

    作为一个典型的论坛起家的社交平台,长期以来天涯的数据都是非结构化的,而且用户访问量一直很高,所以一直以来都面临着这样的数据处理、数据挖掘的压力和需求。王庆波表示,“我们真正着手来做这件事情是从 2009 年开始,我们为了提供更好、更智能的这样的一些导航和智能的用户数据分析,开始投入了很大力量,来做这种数据挖掘和数据处理方面的一些工作。”

    在数据量方面,天涯对得起老牌互联网的称号,其有过亿的用户覆盖,数百亿的论坛信息,论坛的帖子也是以数亿计甚至是数十亿计的。“天涯每天可能是数亿计的用户的访问行为,这些对于我们来说都是大数据的组成部分,而这些大数据都是我们天涯的大数据工作的一个最基本的数据来源。”

    天涯的数据主要由三部分组成:第一个是注册用户的数据库,第二个是用户每天生成的数据,如发帖、传图片等等,第三个就是用户行为数据,论坛的日志数据。

    王庆波强调,“如果没有数据,谈大数据是比较空的,也就是说它没有一个真正的落脚点,没有大规模的数据各种工作都无法开展,而天涯实际上有着海量的数据。那么有这样的一个海量数据,其实对于我们来说就是一个聚宝盆,或者说尚未开采的资源,我们会针对这些数据,做大量的分析。”

    所以,从天涯的角度来看云计算与大 数据,王庆波认为它恰好符合天涯发展的一些新技术或者一些新的技术理念,天涯现在的 IT设备,已经是接近 2000 台(包括所有的服务器、存储、网络等硬件设备),而到 2014 年,预计设备数据会增长至 5000 台,它将成为天涯未来的 IT 基础设施,这其中会有云计算的架构,也有很大的资源用于大数据。“显然我们对于这种云计算和大数据是有着很强烈的需求的。”王庆波表示,“实际上我们有着这么多数据,所以我们需要把这些数据用好,从而更好的服务于我们的用户。所以,这是我们很紧迫需要的东西。”

    那么通过大数据分析,天涯又将获得多高的价值呢?对此,王庆波解释到,通过对天涯的这些数据的分析,第一我们能够了解到天涯的用户群,就国内社会来说,是属于精英阶层的这样的一个用户群。第二,我们根据这样的分析,在整个内容的准备和组织上,会有很大的调整,我们会在论坛中,会针对这样的用户群进行有倾向性的发展。另外我们会根据单个用户,或者说根据用户本身的这样一些行为,以及他们行为的轨迹,知道他们喜欢哪些内容,那么从而做一些内容的这样的一些推荐,以及过滤。”

    不过,对于数据的分析和利用其实并不是在今天提出的,很早以前就有“海量数据”的提法,所以当今 IT 圈里对于“大数据是一个噱头”的争论不绝于耳。在王庆波看来,“大数据”仍有其新意的地方。

    “我觉得本质上是说,是一个量变引起质变的这么一个事情,就是以前的比如说你分析一个几千万条,或者千万量级或者百万量级的数据,实际上你用一个数据库就可以很好的分析了,尤其是这种结构化的数据。”王庆波表示,“但是我们所看到的或者我们所认为的大数据,第一是指规模特别大,比如说像论坛数据或者上百亿这样的数据量,那么这样的规模可能是原来传统的数据量的两个数量级。这个可能会引起一些量变到质变的一些技术的差异,以及分析出来的结果的这样的一个差异,原来可能分析的东西是比较粗浅,因为原来分析的数据级小,而且分析的深度没有现在要求这么深,所以从这样的一个数据级的规模上,可能是原来的两个数量级,第二是说我们要分析的深度,跟原来是很不同的。”

    “目前我们可能会非常准确的分析出来某个人有什么样的爱好,”王庆波对于分析深度进行着重的解释,“以前我们可能只分析到某一类人的爱好,但现在能更精准的针对到个人,而原来我们所做的这样的数据分析统计,无非是说,我们天涯的用户平均年龄是 25 岁,或者平均年龄是 27 岁这样的一个高品质人群,只能粗糙的做这样一个分析,那么现在我们可能要更精准的是说,这个人他喜欢的是股票、金融、投资,他喜欢的是时尚,而且他喜欢时尚的是哪一些类品牌,或者更关注哪一类型的。甚至是说能给他打一个标签,标注他是一个关于时尚的这种领导者还是一个跟随者。那我们需要的是一个更精准的数据分析和行为分析,而这样的一个精准的分析,它所需要的技术,和原来就会很不同,或者是说处理的过程中就会有很多不同的地方。

用 Hadoop 提供更好的体验

    从 2009 年开始,天涯就开始关注大数据方面的应用,业界有关大数据方面的种种技术也进入了天涯的视野,天涯在 2010 年就开始开展相应的工作,当时对多种技术路径都进行了尝试,包括企业级解决方案,最终选择了 Hadoop。

    “当时,我们尝试过企业级的数据仓库或者是数据处理这样的一些技术,最后我们发现它们都不能够很好的满足于我们对于数据规模的这样的一些需求”,王庆波表示,“后来,我们开始试用 Hadoop,在 2010 年的时候,我们就正式开始使用 Hadoop。”究其原因,王庆认为认为一是 Hadoop 本身是一个开放的平台,而且在国外有成功的经验,这也增加了天涯的信心,而通过试用测试和分析,发现它确实是能够满足天涯的大部分的需要的平台。

    2010 年初,天涯的 Hadoop 集群诞生,采用的是 Apache 官方商用版,不过一开始只有 10 台服务器的规模,经过两年多的发展,今天的天涯 Hadoop 集群已经有几十台服务器的规模。虽然从节点数量上,几十台服务器似乎并不多,但对于服务器节点的数量则由天涯的业务需求决定,不过在服务器的选型方面则有明确的标准,王庆波表示,“我们更强调的是计算能力,然后排在第二的才是数据 IO 的能力。”

    2010 年部署的 Hadoop 集群采用的是英特尔至强 5600 处理器平台(以 4 核心的型号为主),每个节点配 8-16GB 内存,采用 2U 机型以保证较大的存储扩展空间,每个 DataNode 配 4-8TB 的本地存储。在后期的采购中,也都以计算能力为优先选择标准,日后将会陆续加入至强 E5-2600 系列的平台。可以说,出色的计算性能是天涯社区选择英特尔平台服务器搭建 Hadoop 集群的根本原因。

    目前,天涯 Hadoop 集群的主要应用就是做天涯的用户行为分析和数据分析,而这也与前面谈到的云 IT 平台相结合,将为天涯的业务创新提供坚实的基础。

    “实际上,天涯在云计算和大数据上都是我们重点布局的技术领域,也是我们正在实践中的一些领域,我们觉得这两个技术,会给天涯未来的发展,尤其是以技术为驱动的发展,是一个坚强的后盾,会对我们未来业务发展,起到很好的帮助。”王庆波表示,“我们未来的 IT 系统,采用云计算和大数据这样的环境之后,会是一个非常灵活、可靠和高效率的一套系统,那么会对天涯未来业务的创新,尤其是产品创新和业务模式创新,以及产品研发带来很大的帮助,使得我们更个的产品的周期变短,使得我们业务创新的结合速度变快。”借助于 Hadoop 集群,天涯可以更快速、高效的分析用户行为,从而使为用户提供合理化,甚至是即时的定制化服务就得可能,这无疑将大大提升天涯用户的应用体验。

    而当谈到未来云与大数据的结合时,王庆波对当前的虚拟化 Hadoop 集群的发展趋势表示认同,“云计算如果发生了,那么虚拟化就会被广泛的采纳,如果想提供这种分析与计算的服务,它必然是基于这样虚拟化的一个环境”,他表示,“所以说这样的一个需求是随着虚拟化,或者说随着云计算和大数据的蓬勃发展,融合在一起的一个必然的路径。因为你要做数据分析,你就需要计算资源,那么需要计算资源,其中的就是这个虚拟化,基于虚拟化的环境,所以这两者一定是会,当需求足够强烈的时候,一定会融合在一起。”不过,这对于系统平台的虚拟化能力有着更高要求,它将明显降低因虚拟化带来的性能损耗,并提高物理平台的利用率。

    在采访的最后,王庆波对于那些准备采用 Hadoop 的朋友谈了谈自己的经验的和建议。

    “首先一定是要以业务为导向,不能够因为想追求这样的一个新技术,而使用这样的一个所谓的 Hadoop 或者是说为了使用这样的一个数据处理环境,或者数据处理能力,而使用它。应该以业务为需求,然后看看,评估一下自己的业务量,和处理的需求,也就是说根据业务来驱动是否使用 Hadoop 和怎么使用它。” 王庆波强调,“其次,如果你已经选择了使用 Hadoop,但 还不是很熟的话,建议从基本的一些功能开始,那么把最核心的一些业务做出来,而不要被 Hadoop 整个生态系统所迷惑,Hadoop 整个工具链条还是比较长的,但从最基本的功能用起,就会解决掉 70%、80% 的业务需求,那么剩下的,有时间呢,或者说有余力的情况下,才去探索一些它比较先进的一些功能,或者是说一些方法,一些技术手段。1

产品和性能信息

open

1. 媒体文章均为第三方观点,仅供参考, 不代表英特尔官方观点。