大数据分析技术现在是一种传统的技术分析模型,主要是对分析后的数据进行筛选和过滤。随着银行、保险和电子商务的不断发展,非结构化数据的数量越来越多,这就增加了大数据分析的难度,对大数据的程序员提出了越来越高的要求。
想提高核心业务能力的程序员需要掌握大数据分析核心技术,接下来我们就具体来看下:
一、大数据生命周期
底层是基础设施,涵盖计算资源、内存与存储和网络互联,具体表现为计算节点、集群、机柜和数据中心。在此之上是数据存储和管理,包括文件系统、数据库和类似YARN的资源管理系统。然后是计算处理层,如hadoop、MapReduce和Spark,以及在此之上的各种不同计算范式,如批处理、流处理和图计算等,包括衍生出编程模型的计算模型,如BSP、GAS等。数据分析和可视化基于计算处理层。分析包括简单的查询分析、流分析以及更复杂的分析。
查询分析多基于表结构和关系函数,流分析基于数据、事件流以及简单的统计分析,而复杂分析则基于更复杂的数据结构与方法,如图、矩阵、迭代计算和线性代数。一般意义的可视化是对分析结果的展示。但是通过交互式可视化,还可以探索性地提问,使分析获得新的线索,形成迭代的分析和可视化。基于大规模数据的实时交互可视化分析以及在这个过程中引入自动化的因素是目前研究的热点。
二、大数据技术生态
大数据的基本处理流程与传统数据处理流程并无太大差异,主要区别在于:由于大数据要处理大量、非结构化的数据,所以在各处理环节中都可以采用并行处理。目前,Hadoop、MapReduce和Spark等分布式处理方式已经成为大数据处理各环节的通用处理方法。
三、大数据