山洪地质灾害防治气象保障工程项目群管理方法研究
上QQ阅读APP看书,第一时间看更新

第3章 大数据概述

3.1 大数据概念

3.1.1 大数据与云计算

大数据(Big Data),目前尚处在逐渐被认识、被应用的阶段,还未形成公认的定义。其产生之初,作为IT行业的技术术语被定义为:“所涉及的数据量规模巨大到无法通过人工在合理时间截取、管理、处理并整理成为人类所能解读形式的信息”。大数据概念的提出者维克托·迈尔-舍恩伯格直观地将其解释为,大数据是指对所有的数据进行分析处理而不是采用抽样对数据进行随机分析。大数据是一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,其核心特征概括为“5V”,即:Volume,指容量大、存储空间大、计算量大;Variety,指数据类型的多样性,即结构化数据与非结构化数据;Velocity,指增长速度快、处理速度快;Veracity,指数据的精确性,即数据的质量;Value,指数据中包含着有价值的信息。也就是说,大数据不仅指数据体量大、数据类型繁多、处理速度快、价值回报较高,而且无法使用传统的流程和工具处理信息,进行大数据分析需要多个并行的工作负载,它的核心价值就在于能够对海量数据进行存储和分析。

大数据往往和云计算联系到一起,云计算为大数据提供了有力的工具和途径,大数据为云计算提供了用武之地(图3-1)。云计算的关键词在于“整合”,无论是通过现在已经很成熟的、传统的虚拟机切分型技术,还是通过海量节点聚合型技术,它都是通过将海量的服务器资源进行整合,调度分配给用户,从而解决用户因为存储计算资源不足所带来的问题。可以简单地说,云计算就是硬件资源的虚拟化,而大数据就是海量数据的高效处理。大数据需要的云计算技术主要包括虚拟化技术、分布式处理技术、海量数据的存储和管理技术、智能分析技术(类似模式识别以及自然语言理解)等。

图3-1 云计算与大数据的关系示意图

Hadoop是云计算技术的重要组成部分,是对大量数据进行分布式处理的软件框架。Hadoop主要由HDFS和MapReduce组成。其中,HDFS是一个分布式文件系统(Hadoop Distributed File System);MapReduce是用于并行处理大数据集的软件框架。Hadoop实现了包括分布式文件系统HDFS和MapReduce框架在内的云计算软件平台的基础架构,并且在其上整合了数据库、云计算管理、数据仓储等一系列平台,已成为进行云计算应用和研究的标准平台。HDFS存储Hadoop集群中所有存储节点上的文件,它的上一层是MapReduce引擎,该引擎由JobTrackers和TaskTrackers组成,基本涵盖了Hadoop分布式平台的所有技术。基于Hadoop,用户可编写处理海量数据的分布式并行程序,并将其运行于两台或两台以上服务器构建节点组成的计算机集群上。它允许在整个集群使用简单编程模型计算机的分布式环境存储并处理大数据,类似于一个数据生态圈,不同的模块各司其职。

如果用一个形象的比喻,云计算相当于计算机和操作系统,将硬件资源虚拟化之后再进行分配使用,而大数据则相当于海量数据的“数据库”。当前的大数据处理正向着近似于传统数据库体验的方向发展,Hadoop的产生使我们能用普通的微机建立理想的数据集群,把本来感觉高不可攀的并行计算概念变成了触手可及的桌面系统。相关领域专家对大数据发展的预测是,作为计算资源的底层云计算支撑着上层的大数据处理,而大数据将致力于发展基于Hadoop分布式架构下实时、多维、交互式搜索和分析引擎,以及统计分析能力。

3.1.2 大数据分析

顾名思义,大数据分析(Big Data Analytics,BDA)是大数据理念与方法的核心,是指对海量类型多样、增长快速、内容真实的数据(大数据)进行分析,以一种比以往有效得多的方式来管理海量数据,并可在集成化大数据分析平台的支撑下,运用云计算技术调度计算分析资源,最终挖掘出有价值的信息的数据分析过程。掌握正确的大数据分析方法,进行有价值的信息提取是十分必要的。大数据分析主要包括以下五种方法。

1.预测性分析(Predictive Analytic Capabilities)

数据挖掘可以更好地理解数据,而预测性分析可以根据可视化分析和数据挖掘的结果做出预测性的判断。

2.数据质量和数据管理(Data Quality and Master Data Management)

通过标准化的流程和工具对数据进行处理,可以保证一个预先定义好的高质量的分析结果。

3.可视化分析(Analytic Visualizations)

数据可视化是数据分析工具基本的要求,可视化可以直观地展示数据,将数据的各个属性值以多维数据的形式表示,可以从不同的维度观察数据,从而对数据进行更加深入的观察和分析。

4.语义引擎(Semantic Engines)

由于非结构化数据的多样性带来了数据分析的新挑战,我们需要一系列的工具去解析、提取、分析数据,语义引擎需要被设计成能够从“文档”中智能提取信息。

5.数据挖掘算法(Data Mining Algorithms)

可视化是给人看的,数据挖掘是给机器看的。集群、分割、孤立点分析以及其他的算法可以让我们深入数据内部,挖掘价值。这些算法不仅要处理大数据的数量,也要处理大数据的速度。

以上是数据分析需要具备的数据分析能力和方法,每一种方法都对业务分析有很大的帮助作用,可以在一定程度上保证分析结果真实且具有价值。