信息时代 数据为王

信息时代 数据为王

前言

说起大数据处理,一切都起源于Google公司的经典论文:《MapReduce:Simplied Data Processing on Large Clusters》。在当时(2000年左右),由于网页数量急剧增加,Google公司内部平时要编写很多的程序来处理大量的原始数据:爬虫爬到的网页、网页请求日志;计算各种类型的派生数据:倒排索引、网页的各种图结构等等。这些计算在概念上很容易理解,但由于输入数据量很大,单机难以处理。所以需要利用分布式的方式完成计算,并且需要考虑如何进行并行计算、分配数据和处理失败等等问题。

针对这些复杂的问题,Google决定设计一套抽象模型来执行这些简单计算,并隐藏并发、容错、数据分布和均衡负载等方面的细节。受到Lisp和其它函数式编程语言map、reduce思想的启发,论文的作者意识到许多计算都涉及对每条数据执行map操作,得到一批中间key/value对,然后利用reduce操作合并那些key值相同的k-v对。这种模型能很容易实现大规模并行计算。

事实上,与很多人理解不同的是,MapReduce对大数据计算的最大贡献,其实并不是它名字直观显示的Map和Reduce思想(正如上文提到的,Map和Reduce思想在Lisp等函数式编程语言中很早就存在了),而是这个计算框架可以运行在一群廉价的PC机上。MapReduce的伟大之处在于给大众们普及了工业界对于大数据计算的理解:它提供了良好的横向扩展性和容错处理机制,至此大数据计算由集中式过渡至分布式。以前,想对更多的数据进行计算就要造更快的计算机,而现在只需要添加计算节点。

话说当年的Google有三宝:MapReduce、GFS和BigTable。但Google三宝虽好,寻常百姓想用却用不上,原因很简单:它们都不开源。于是Hadoop应运而生,初代Hadoop的MapReduce和HDFS即为Google的MapReduce和GFS的开源实现(另一宝BigTable的开源实现是同样大名鼎鼎的HBase)。自此,大数据处理框架的历史大幕正式的缓缓拉开。

大数据的定义

“大数据”一词的确切定义其实是很难给出的,因为不同的人(供应商、从业者、商业公司等)对它的理解也并不完全一致。通常来讲,大数据是:

  • 大数据集
  • 用于处理大数据集的某类技术

此处的“大数据集”是指一个数据集的数据量太大以至于无法使用传统工具或单机方式来处理和存储,而处理技术包括数据接入、数据持久化存储、数据计算和分析、数据展示(可视化)等等。

大数据的特征

大数据(Big Data)是指“无法用现有的软件工具提取、存储、搜索、共享、分析和处理的海量的、复杂的数据集合。”业界通常用4个V(即Volume、Variety、Value、Velocity)来概括大数据的特征。

  • 一是数据体量巨大(Volume)。

    待处理数据的规模在很大程度决定了系统是否为大数据系统。大数据系统中的数据规模可能比传统处理系统中的数据集大几个数量级,这也为数据处理和存储带来了更多的挑战。由于数据处理和存储等工作超出了单台计算机所能达到的性能极限,所以大数据系统通常采用集群方式。集群方式更加考验资源的分配和协调,集群管理和任务分配算法变得越来越重要。

    截至目前,人类生产的所有印刷材料的数据量是200PB(1PB=210TB),而历史上全人类说过的所有的话的数据量大约是5EB(1EB=210PB)。当前,典型个人计算机硬盘的容量为TB量级,而一些大企业的数据量已经接近EB量级。

  • 二是数据类型繁多(Variety)。

    大数据系统的问题通常是其他系统所不具备的,因为它所处理的数据来源广泛。数据源可以是应用程序的日志信息,也可以是社交媒体的用户信息,甚至是物理设备传感器的采集数据。不论何种数据,大数据系统的目标都是在海量数据中寻找有用的数据。

    这种类型的多样性也让数据被分为结构化数据和非结构化数据。相对于以往便于存储的以文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图片、地理位置信息等,这些多类型的数据对数据的处理能力提出了更高要求。

  • 三是价值密度低(Value)。

    价值密度的高低与数据总量的大小成反比。以视频为例,一部1小时的视频,在连续不间断的监控中,有用数据可能仅有一二秒。如何通过强大的机器算法更迅速地完成数据的价值“提纯”成为目前大数据背景下亟待解决的难题。

  • 四是处理速度快(Velocity)。

    大数据与其他数据系统另一个显著的差异体现在数据的“流动”速度。在大数据系统中,数据经常从多种数据源流入系统,并且以一种近实时的方式进行处理。数据被持续不断的接入、修改、处理和分析以便能够跟得上新数据的接入速度。由于近实时处理可以尽早的提供有价值的信息,目前很多商业公司更加青睐于实时处理系统而不是传统的批处理系统。

这是大数据区分于传统数据挖掘的最显著特征。根据IDC的“数字宇宙”的报告,预计到2020年,全球数据使用量将达到35.2ZB。在如此海量的数据面前,处理数据的效率就是企业的生命。

大数据流程

数据采集

要想了解大数据的数据采集过程,=要知道大数据的数据来源,目前大数据的主要数据来源有三个途径,分别是物联网系统、Web系统和传统信息系统,所以数据采集主要的渠道就是这三个。

  • 物联网的发展是导致大数据产生的重要原因之一,物联网的数据占据了整个大数据百分之九十以上的份额,所以说没有物联网就没有大数据。物联网的数据大部分是非结构化数据和半结构化数据,采集的方式通常有两种,一种是报文,另一种是文件。在采集物联网数据的时候往往需要制定一个采集的策略,重点有两方面,一个是采集的频率(时间),另一个是采集的维度(参数)。

  • Web系统是另一个重要的数据采集渠道,随着Web2.0的发展,整个Web系统涵盖了大量的价值化数据,而且这些数据与物联网的数据不同,Web系统的数据往往是结构化数据,而且数据的价值密度比较高,所以通常科技公司都非常注重Web系统的数据采集过程。目前针对Web系统的数据采集通常通过网络爬虫来实现,可以通过Python或者Java语言来完成爬虫的编写,通过在爬虫上增加一些智能化的操作,爬虫也可以模拟人工来进行一些数据爬取过程。

  • 传统信息系统也是大数据的一个数据来源,虽然传统信息系统的数据占比较小,但是由于传统信息系统的数据结构清晰,同时具有较高的可靠性,所以传统信息系统的数据往往也是价值密度最高的。传统信息系统的数据采集往往与业务流程关联紧密,信息系统的数据采集工具也发展很迅速,未来行业大数据的价值将随着产业互联网的发展进一步得到体现。

posted @ 2021-10-28 18:10  追こするれい的人  阅读(145)  评论(0编辑  收藏  举报