大数据基础知识

2021-01-13 09:54:53 阅读 12939


微信公众号:计算机与网络安全

ID:Computer-network

随着互联网、移动互联网物联网的发展,谁也无法否认我们已经切实地迎来了一个海量数据的时代。数据的价值为越来越多的人所认识,它已经成为一种新的经济资产,被看作“新世纪的矿产与石油”,为整个社会带来了全新的创业方向、商业模式和投资机会。从2012年开始,“大数据”(Big Data)就已经成为关注度最高的关键词之一,而且以稳固的状态不断发展至今。在大数据时代,组织和企业会更多地依靠数据分析,而非经验和直觉来制定决策,充分挖掘和使用数据的价值将为组织和企业带来强大的竞争力。


1、大数据的定义和特点

大数据”概念最早出现在1980年,由著名的未来学家阿尔文·托夫勒在其著作《第三次浪潮》中所提出。2009年美国互联网数据中心证实大数据时代的来临,而在今天,我们已经能充分感受到大数据的魅力和影响力。在过去,我们常用的存储单位是MB和GB,如今我们已经逐渐迈入PB甚至是EB的时代。关于大数据的确切定义,目前尚无统一公认的说法。比如,全球领先的管理咨询公司麦肯锡给出的大数据定义是:“一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。”除了麦肯锡提出的四大特征之外,IBM公司增加了一个真实性(Veracity)特征。著名研究机构Gartner给出的定义是:“大数据是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。”在维克托·迈尔·舍恩伯格和肯尼斯·库克耶编写的《大数据时代》中指出:“大数据是指不用传统的随机分析法(即抽样调查)这样的捷径,而是采用所有数据进行分析处理。”全球最大的数据中心IDC则侧重从技术角度说明其概念:“大数据处理技术代表了新一代的技术架构,这种架构通过高速获取数据并对其进行分析和挖掘,从海量且形式各异的数据源中更有效地抽取出富含价值的信息。”

综合各种观点,简单来说,所谓大数据就是现有的一般技术难以管理的大量数据的集合。比如,目前关系型数据库无法进行管理的具有复杂结构的数据,或者量太大导致查询时间超出允许范围的庞大数据大数据技术的战略意义不仅在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换言之,如果把大数据比作一种产业,那么这种产业实现盈利的关键就在于提高对数据的“加工能力”,通过“加工”实现数据的“增值”。从具备“4V”特征的大量数据中挖掘出高价值知识和洞见,是各界对于大数据的一个共识。


2、大数据关键技术

当谈到大数据时,往往并非指数据本身,而是数据和大数据技术的结合。大数据技术是指伴随着大数据的采集、存储、分析和应用的相关技术,是一系列使用非传统工具来对海量结构化和非结构化数据进行处理,从而获得分析和预测结果的一系列数据处理和分析技术。

数据分析流程的角度,可以把大数据技术分为以下几个层面:

数据采集与预处理:利用ETL工具将分布的、异构数据源中的数据,如关系数据、平面数据文件等,抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或者数据集市中,成为联机分析处理、数据挖掘的基础;也可利用日志采集工具(如Flume、Kafka等)把实时采集的数据作为流计算系统的输入,进行实时处理分析。

数据存储与管理:利用分布式文件系统、数据仓库、关系数据库、NoSQL数据库、云数据库等,实现对结构化和非结构化海量数据的存储和管理。

数据处理与分析:利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析。

数据可视化呈现:采用可视化工具,对数据分析结果进行可视化呈现,帮助人们更好地理解数据和分析数据。


3、大数据计算模式


针对不同类型的数据,大数据计算模式也不同,一般来说可分为以下四种:


批处理计算:批处理计算是最常见的一类数据处理方式,主要用于对大规模数据进行批量的处理,其代表产品有MapReduce和Spark等。前者将复杂的、运行在大规模集群上的并行计算过程高度抽象成两个函数——Map和Reduce,方便对海量数据集进行分布式计算工作;后者则采用内存分布数据集,用内存替代HDFS或磁盘来存储中间结果,计算速度要快很多。

流式计算:如果说批处理计算是传统的计算方式,流式计算则是近年来兴起的、发展非常迅猛的计算方式。流式数据是随时间分布和数量上无限的一系列动态数据集合体,数据价值随时间流逝而降低,必须采用实时计算方式给出响应。流式计算就可以实时处理多源、连续到达的流式数据,并实时分析处理。目前市面上已出现很多流式计算框架和平台,如开源的Storm、S4、Spark Streaming,商用的Streams、StreamBase等,以及一些互联网公司为支持自身业务所开发的如Facebook的Puma、百度的DStream以及淘宝的银河流数据处理平台等。

交互式查询计算:主要用于对超大规模数据的存储管理和查询分析,提供实时或准实时的响应。所谓超大规模数据,其比大规模数据的量还要庞大,多以PB级计量,如谷歌公司的系统存有PB级数据,为了对其数据进行快速查询,谷歌开发了Dremel实时查询系统,用于对只读嵌套数据的分析,能在几秒内完成对万亿张表的聚合查询;Cloudera公司参考Dremel系统开发了一套叫Impala的实时查询引擎,能快速查询存储在Hadoop的HDFS和HBase中的PB级超大规模数据。此外,类似产品还有Cassandra、Hive等。

图计算:图计算是以“图论”为基础的对现实世界的一种“图”结构的抽象表达,以及在这种数据结构上的计算模式。由于互联网中信息很多都是以大规模图或网络的形式呈现的,许多非图结构的数据也常被转换成图模型后再处理,不适合用批计算和流式计算来处理,因此出现了针对大型图的计算手段和相关平台。市面上常见的图计算产品有Pregel、GraphX、Giraph以及PowerGraph等。


这四种计算模式的服务对象和代表产品如表1所示。





关注微信公众号,获取最新信息小编微信(zqykj0811),加入微信群与悟空团队的数据分析师一起交流

返回新闻活动列表