千亿大数据处理能力是如何炼成的?

(此文来自乐字节)

源起谷歌“三驾马车”

聊起大数据,就绕不开谷歌的“三驾马车“。早在 2003 年,谷歌发表第一篇论文——谷歌文件系统(GFS);第二年,谷歌再次发表一篇论文——分布式计算框架 MapReduce;2006 年,谷歌发表第三篇论文——NoSQL 数据库系统 BigTable。

这三篇论文由此开启了大数据时代。

受谷歌“三驾马车”的影响,其他互联网公司也在尝试大规模分布式系统,希望构建强大的数据存储、分析和处理平台。不过,当时正处于前 Hadoop 时期,互联网公司基本上都在摸着石头过河。

2
数据收集和计算领域的先驱

在众多的互联网公司中,如乐字节公司等,成立于 2006 年的秒针系统无疑是这个领域的先行者。据秒针系统产研中心负责人刘沛介绍,2008 年 Hadoop 还没有成熟,他们从零研发了自己的大数据平台,“思路跟 Hadoop MapReduce 类似,一天也能处理几十亿数据”。

刘沛在 2007 年加入秒针,那时他还在读大三。一年后,他正式毕业,留在秒针系统。他先后领导了包括广告监测系统 AdMonitor 等核心产品的研究和开发。作为秒针系统的老人,他见证了秒针系统大数据平台从 0 到 1 的过程。

据悉,秒针系统的业务是广告监测,核心产品是 AdMonitor。在 AdMonitor 的服务链路中,前端负责收集数据。每个广告会被嵌入一个发送到秒针系统域名的代码。

一旦广告在媒体端被点击,它就会把被嵌入的代码发回到秒针系统的服务器。这样,系统就知道完成了一次广告曝光。这样的一个广告业务流程主要涉及数据采集、数据存储、数据计算和数据分析技术。

多端收集数据

那么,第一个问题来了,秒针系统怎么收集数据?据刘沛介绍,在 PC 时代,大多使用 JavaScript 来采集数据。这就要求秒针系统的产品要适配每一个浏览器,包括 Firefox、IE、傲游浏览器、海豚浏览器等。据悉,cookie 是当时数据收集使用的主要技术之一。除 cookie 之外,结合 Flash。那时,几乎所有的广告都是 Flash,因为 Flash 本身是一个可执行程序,所以能在其内部编程,把监测代码放在里面,收集数据。

刘沛表示,“Flash 也有 cookie 的概念,技术术语叫 FSO。把 FSO 和 cookie 做各种联动,实现持久化。这边删了,那边能恢复;那边删了,这边再恢复。在保护用户隐私的前提下更精准地识别出一个独立用户。”

到了 2012 年,智能手机出现,Android 和 iOS App 数量不断增多,秒针系统又在 AdMonitor 产品中增加移动端广告测量能力。SDK 技术成为当时移动端数据收集的主要方式。刘沛称,“Android、iOS 都是新事物,不仅要学习新的编程语言,还要面对新技术环境进行开发。做出一款应用后,要适配厂商不同机型的不同型号。除硬件外,还要适应手机上运行的各种 App”。

举个例子,爱奇艺、优酷和腾讯视频是三大主流视频 App。SDK 要在之上运行,前期要做各种对接测试,保证运转正常。“不能让 App 死机,也不能拖慢了它的系统运转。另外,数据采集结果要和他们上报的一致。

你可能感兴趣的:(hadoop)