随着互联网、移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公司 IDC 预计 2011 年的数据总量将达到 1
8 万亿 GB,对这些海量数据的分析已经成为一个非常重要且紧迫的需求
作为一家互联网数据分析公司,我们在海量数据的分析领域那真是被“逼上梁山”
多年来在严苛的业务需求和数据压力下,我们几乎尝试了所有可能的大数据分析方法,最终落地于Hadoop 平台之上
Hadoop 在可伸缩性、健壮性、计算性能和成本上具有无可替代的优势,事实上已成为当前互联网企业主流的大数据分析平台
本文主要介绍一种基于 Hadoop 平台的多维分析和数据挖掘平台架构
大数据分析的分类 Hadoop 平台对业务的针对性较强,为了让你明确它是否符合你的业务,现粗略地从几个角度将大数据分析的业务需求分类,针对不同的具体需求,应采用不同的数据分析架构
按照数据分析的实时性,分为实时数据分析和离线数据分析两种
实时数据分析一般用于金融、移动和互联网B2C 等产品,往往要求在数秒内返回上亿行数据的分析,从而达到不影响用户体验的目的
要满足这样的需求,可以采用精心设计的传统关系型数据库组成并行处理集群,或者采用一些内存计算平台,或者采用 HDD 的架构,这些无疑都需要比较高的软硬件成本
目前比较新的海量数据实时分析工具有 EMC 的 Greenplum、SAP 的 HANA 等
对于大多数反馈时间要求不是那么严苛的应用,比如离线统计分析、机器学习、搜索引擎的反向索引计算、推荐引擎的计算等,应采用离线分析的方式,通过数据采集工具将日志数据导入专用的分析平台
但面对海量数据,传统的 ETL 工具往往彻底失效,主要原因是数据格式转换的开销太大,在性能上无法满足海量数据的采集需求
互联网企业的海量数据采集工具,有Facebook 开源的 Scribe、Lin