互联网的发展,带来了各种数据的爆发式增长,所以接入互联网的相关操作行为,都化为虚拟的数据被记录了下来。大数据时代的带来,一个明显的变化就是全样本数据分析,面对TB/PB级及以上的数据规模,Hadoop始终占据优势。今天的大数据学习分享,我们来聊聊基于Hadoop的数据分析平台。
Hadoop在大数据技术生态圈的地位,可以说是难以动摇,经过这么多年的发展,基础核心架构的地位,依然稳固。Hadoop系统的可伸缩性、健壮性、计算性能以及低成本,使得它事实上已成为当前互联网企业主流的大数据分析平台。
基于Hadoop平台,可以根据实际的业务需求,来进行数据系统的规划和设计。针对不同的具体需求,采用不同的数据分析架构来解决实际问题。
按照数据分析的实时性,分为实时数据分析和离线数据分析两种。
实时数据分析一般用于金融、移动和互联网B2C等产品,往往要求在数秒内返回上亿行数据的分析,从而达到不影响用户体验的目的。
在Hadoop生态圈,这些需求可以进行合理的规划。对于大多数反馈时间要求不是那么严苛的应用,比如离线统计分析、机器学习、搜索引擎的反向索引计算、推荐引擎的计算等,应采用离线分析的方式,通过数据采集工具将日志数据导入专用的分析平台。
主流的海量数据采集工具,有Facebook开源的Scribe、LinkedIn开源的Kafka、淘宝开源的Timetunnel、Hadoop的Chukwa等,均可以满足每秒数百MB的日志数据采集和传输需求,并将这些数据上载到Hadoop中央系统上。
另外,按照大数据的数据量,分为内存级别、BI级别、海量级别三种,也需要分别考量,采取合适的方案。
这里的内存级别指的是数据量不超过集群的内存最大值,通常可以采用一些内存数据库,将热点数据常驻内存之中,从而取得非常快速的分析能力,非常适合实时分析业务。在这方面,MongoDB的应用很普遍。
BI级别指的是那些对于内存来说太大的数据量,主流的BI产品都有支持TB级以上的数据分析方案。种类繁多,就不具体列举了。
海量级别指的是对于数据库和BI产品已经完全失效或者成本过高的数据量。在这类场景下,Hadoop无疑是就是低成本的高效解决方案了。
总之,在大数据的发展当中,Hadoop始终占据着重要的位置,掌握Hadoop技术,是进阶大数据的基础门槛。