



随着无线传感网、移动互联网的普及,21世纪以来数据量呈现指数级增长,社会已经步入了大数据时代。大数据正在改变人们的工作和生活方式,并且已经在网络通信、金融市场、气象预报等诸多领域得到广泛应用。大数据背后蕴含着巨大的价值,尤其是经过数据集成、分析与挖掘之后,其所表现出的价值已经远远超过传统的数据。大数据研究成为经济和社会发展以及科技进步的重要推动力量。
本书将分六个部分(绪论、数据采集和预处理、数据存储、数据处理、大数据分析平台和大数据应用)论述大数据的相关概念、理论、方法、技术和应用等内容。
本章主要介绍大数据相关的基础知识,从大数据的基本概念出发,介绍大数据的组成。大数据的发展对科学研究的思维和对象都产生了巨大影响,科学研究也随之进入数据驱动的第四范式,本章随后介绍科学研究的第四范式,即数据科学研究范式。此外,还重点介绍了大数据的基本特征和生命周期,以及在生命周期各阶段大数据呈现的特点。最后介绍大数据的处理流程和架构,为读者理解后续大数据的应用奠定基础。
大数据的应用和技术是在互联网快速发展中诞生的,起点可追溯到2000年前后。当时互联网网页呈爆炸式增长,每天新增约700万个网页,到2000年底全球网页数达到40亿,用户检索信息越来越不方便。谷歌等公司率先建立了覆盖数十亿网页的索引库,开始提供较为精确的搜索服务,大幅提升了人们使用互联网的效率,这是大数据应用的起点。对于“大数据”(big data)的定义,业界并未给出统一且权威的观点,本节列举业界比较主流的几种定义:
维基百科认为,大数据是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集。
研究机构Gartner认为,“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应的海量、高增长率和多样化的信息资产。
麦肯锡全球研究所给出的定义为,一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
从采用数据库作为数据管理的主要方式开始,人类社会的数据产生方式大致经历了三个阶段,而正是数据产生方式的巨大变化才最终导致大数据的产生。
1.运营式系统阶段
数据库的出现使得数据管理的复杂度大大降低,在实际使用中,数据库大多为运营式系统所采用,并作为运营式系统的数据管理子系统,如超市的销售记录系统、银行的交易记录系统、医院患者的医疗记录等。人类社会数据量的第一次大的飞跃正是出现于运营式系统开始广泛使用数据库时。这个阶段的最主要特点是,数据的产生往往伴随着一定的运营活动;而且数据是记录在数据库中的,例如,商店每售出一件产品就会在数据库中产生一条相应的销售记录。这一阶段的数据产生方式是被动的。
2.用户原创内容阶段
互联网的诞生促使人类社会数据量出现第二次大的飞跃,但是真正的数据爆发产生于Web 2.0时代,而Web 2.0最重要的标志就是用户原创内容。这类数据近几年一直呈现爆炸式的增长。主要有两个方面的原因。一是以博客、微博和微信为代表的新型社交网络平台的出现和快速发展,使得用户产生数据的意愿更加强烈。二是以智能手机、平板电脑为代表的新型移动设备的普及,这些易携带、全天候接入网络的移动设备为人们在网上发表意见提供了更为便捷的途径。这个阶段的数据产生方式是主动的。
3.感知式系统阶段
人类社会数据量第三次大的飞跃最终导致了大数据的产生,今天人们正处于这个阶段。这次飞跃的根本原因在于感知式系统的广泛使用。随着技术的发展,人们已经有能力制造极其微小的带有处理功能的传感器,并陆续将这些设备广泛地部署于社会的各个角落,通过这些设备来对整个社会的运转进行监控,从而源源不断地产生新数据。这一阶段的数据产生方式是自动的。
简而言之,数据产生经历了被动、主动和自动三个阶段。这些被动、主动和自动的数据共同构成了大数据的数据来源,但其中自动的数据才是大数据产生的最根本原因。
大数据包括结构化、半结构化和非结构化数据,其中非结构化数据逐渐成为数据的主要部分。据IDC的调查报告显示,企业中80%的数据都是非结构化数据,这些数据每年约增长60%。
结构化数据一般是指可以使用关系型数据库表示和存储、用二维表来逻辑表达实现的数据。传统的关系数据模型和行数据存储于数据库,可用二维表结构表示。而结构化数据的存储和排列是很有规律的,这对查询和修改等操作很有帮助。对于结构化数据来讲通常是先有结构再有数据,而对于半结构化数据来说则是先有数据再有结构。
半结构化数据是结构化数据的一种形式,它并不符合关系型数据库或其他数据表关联的数据模型结构,但包含相关标记,用来分隔语义元素以及分层记录和字段。半结构化数据的结构和内容混在一起,没有明显的区分,因此,它也被称为自描述结构。简单地说,半结构化数据就是介于完全结构化的数据和完全无结构数据之间的数据。例如,HTML文档、JSON、XML和一些NoSQL数据库等就属于半结构化数据。
顾名思义,非结构化数据就是没有固定结构的数据。所有格式的办公文档、文本、图片、各类报表、图像和音频/视频信息等都属于非结构化数据。对于这类数据,一般直接整体进行存储,通常存储为二进制的数据格式。典型的人为的非结构化数据包括文本文件(如电子表格、演示文稿、电子邮件等)、社交媒体(如新浪微博、微信、QQ等)数据、移动数据(如短信、位置等)、多媒体数据(如照片、音频、视频等)等,典型的机器生成的非结构化数据包括卫星图像(如天气、地形等)、科学数据(如石油勘探、大气数据等)、监控数据(如监控照片、监控视频等)、传感器数据(如交通、天气、海洋等)。
从以上的描述中,结构化和非结构化数据之间的差异逐渐变得清晰。除了存储在关系型数据库和非关系型数据库这一明显区别之外,最大的区别在于分析结构化数据与非结构化数据的便利性。图1-1中比较了结构化与非结构化数据的占比情况。
图1-1 结构化与非结构化数据的占比情况
结构化数据是指以预定义的方式组织的数据,通常存储在关系型数据库(如SQL数据库)中。结构化数据的特点包括:
1)预定义的模式:结构化数据遵循一个固定的格式或模式,这意味着每条记录都有相同的字段和数据类型。
2)易于存储和检索:由于结构化数据的预定义结构,它可以很容易地被存储在数据库中,并且可以通过SQL查询快速检索。
3)高度组织化:结构化数据通常以表格形式存在,每行代表一个记录,每列代表一个字段。
4)一致性:所有记录都遵循相同的数据结构,这使得数据的一致性得到保证。
5)可预测性:由于数据结构的一致性,可以预测数据的存储和处理方式。
6)易于分析:结构化数据可以通过统计和分析工具进行量化分析,因为其格式和内容是已知的。
7)易于维护:由于结构化数据的一致性和可预测性,其维护和更新相对简单。
8)适合复杂查询:结构化数据支持复杂的查询操作,如连接、分组和聚合。
9)数据完整性:关系型数据库管理系统(RDBMS)提供了数据完整性的机制,如主键、外键和约束,以确保数据的准确性和一致性。
10)标准化:结构化数据通常遵循一定的标准,这有助于不同系统和应用程序之间的数据交换。
随着大数据的崛起,尤其是2017年以来物联网技术的发展,设备产生的大量非结构化数据通过传感器被采集,数据量呈爆炸式增长,数据的实质发生了根本的转变。越来越多的数据呈现非结构化特性,因此,非结构化数据的存储和分析变得越来越重要。以下是关于非结构化数据的特点。
(1)传统的关系型数据库无法存储非结构化数据
在现有的互联网应用中包含了海量复杂类型的数据结构,使用传统的关系型数据库无法满足业务和应用的快速响应需求。数据用户不仅需要进行计算工作的分析,而且还要从其本身的社会活动和用户决策中学习。自然语言处理(NLP)、模式感知和分类以及数据挖掘就是最生动的案例。
(2)非结构化数据的体量与多样性呈指数级上升趋势
尽管存储海量数据的设备成本近几年有大幅度的下降,但是非结构化数据的体量与多样性却呈指数级上升趋势。相对于传统的结构化数据,非结构化数据的分析和利用将需要更多的数据工程师和高级分析师参与,毕竟结构化数据相当于一份简洁的数据清单,而非结构化数据更像是种类繁多的杂货店。
(3)非结构化数据容易获取
非结构化数据在多个领域都相对容易获取,可以在公司内部的邮件信息、与他人的聊天记录以及从各种调查结果中获取,还可以从个人在网站上的评论、客户关系管理系统中的反馈,以及从个人应用程序中的文本字段中获取。当然还可以在公司外部的社交媒体、论坛中关于热门话题的评论中获取。
(4)非结构化数据蕴含巨大的商业价值
大量的非结构化数据中蕴含巨大的商业价值,它可以通过各种各样的途径获取,利用可视化的数据分析工具能够帮助企业全面地了解市场和用户需求,定位企业发展的不平衡点,显著降低企业的运营风险。
虽然大数据的定义尚未统一,目前存在的定义多而杂,不同的企业、行业都从自身角度来定义大数据的概念,但主要都体现在数据集规模上。目前业界广泛接受的定义,是由国际知名咨询公司IDC提出的大数据四个特征,也就是4V特征——规模性(Volume)、多样性(Variety)、高速性(Velocity)以及价值性(Value)。但随着大数据应用的发展,人们发现数据规模并不能决定其是否能为决策者提供帮助,数据的质量和真实性才是成功决策最坚实的基础。所以衍生出了一种比较主流的说法,即由IBM提出的5V特征,在4V特征的基础上增加了数据真实性(Veracity)。这一特征强调了数据质量的重要性,以及大数据应用面临的巨大挑战。图1-2介绍了大数据的五大特征。
图1-2 大数据的五大特征
大数据的特征首先就体现为“大”,它的起始计量单位至少达到PB级别以上,并且数据不再局限于GB、TB级别,而是以PB(1000个T)、EB(100万个T)或ZB(10亿个T)为计量单位,规模性是大数据最显著、首要的特征。
随着信息技术的高速发展,数据开始呈爆发式增长,根据IDC的评估,全球数据正在以每年约50%的速度增长,也就是说每两年就增长一倍,即人类在近两年产生的数据量相当于之前产生的全部数据量。随着数字化转型的不断推进,企业数据量呈现出爆炸式增长。据IDC Global DataSphere显示,截至2021年,全球数据总量已达到84.5ZB,预计到2026年,全球结构化与非结构化数据总量将达到221.2ZB。
如果只有单一的数据,那么这样的数据就没有了价值,比如只有单一的个人数据或者单一的用户提交数据,这些数据还不能被称为大数据。而广泛的数据来源决定了大数据形式的多样性。大数据不仅体现在量的急剧增长,还体现在数据的来源及类型的多样性。具体来说,大数据的多样性主要体现在数据来源广、数据类型多和数据之间关联性强这三个方面。数据的来源广泛导致数据的类型多样,从数据结构来看,大数据可以分为结构化数据、半结构化数据和非结构化数据。结构化数据的存储和处理在过去很多年来一直主导着IT系统应用,并且数据由关系型数据库进行存储;半结构化数据包括电子邮件、文字处理文件以及大量的网络新闻等,以内容为基础;而非结构化数据随着社交网络、移动计算和传感器等新技术应用不断产生,广泛存在于社交网络、物联网、电子商务之中。有报告称,全世界结构化数据和非结构化数据的增长率分别是32%、63%,网络日志、音视频、图片、地理位置信息等非结构化数据占比达到80%左右,并在逐步提升。然而,产生人类智慧的大数据往往就是来自这些非结构化数据。未来将有越来越多的非结构化数据产生,大数据中70%~85%的数据是非结构化和半结构化数据。并且数据之间的关联性强、交互频繁。例如游客在旅途中上传的照片和日志,就与游客的位置、行程等信息有很强的关联性。
大数据的增长速度和处理速度是大数据高速性的重要体现。随着互联网的普及,互联网数据正以每年50%的速度增长,而在整个人类文明所获得的全部数据中,90%是在过去两年内产生的。数据的产生速度快也要求处理速度快,这是大数据区别于传统数据挖掘技术的本质特征。甚至有学者提出了与之相关的“一秒定律”,意思就是,在这一秒有价值的数据下一秒可能就失效了。数据价值除了与数据规模相关,还与数据处理速度成正比,也就是,数据处理速度越快、越及时,数据发挥的效能就越大、价值也就越大。
大数据的价值性指数据的可用价值,是大数据的核心特征。大数据的重点不在于其数据集的量,而是在信息爆炸时代对数据价值的再挖掘,即挖掘出大数据的有效信息才是关键部分。虽然价值密度低是日益凸显的一个大数据特性,但是对大数据进行研究、分析、挖掘仍然具有深刻意义,大数据的价值依然是不可估量的。毕竟,价值是推动一切技术(包括大数据技术)研究和发展的内生决定性动力。提取任何有价值的信息依托的就是海量的基础数据,如何通过强大的机器算法更迅速地在海量数据中完成数据的价值提纯是人们一直在关注和研究的问题。
大数据的真实性指数据的质量,是大数据价值发挥作用的关键,也逐步被认为是大数据的核心特征。IBM最初提出大数据真实性特征的理由是,研究者认为互联网上留下的都是人类行为的真实电子踪迹,都能真实地反映或折射人们的行为乃至思想和心态。但研究者很快就发现,事实并非总是如此,互联网中有大量的虚假、错误数据,例如,曾经有人认为淘宝的交易数据具有很高的可靠性,但很快发现存在大量的虚假流量和虚假成交量问题。这种数据仅从电子踪迹的角度来说是真实的,但不能真实地反映人们的交易行为。类似事例使人们认识到不同领域、不同来源的大数据的可靠性是有差异的。对于舆情研究来说,互联网数据的可靠性尤其值得考量。因此,验证数据的质量成为大数据应用的巨大挑战。
“范式”(paradigm)这一概念最初由美国著名科学哲学家Thomas Samuel Kuhn于1962年在《科学革命的结构》中提出,指的是常规科学所赖以运作的理论基础和实践规范,是某一科学领域的科学家群体共同遵从的世界观和行为方式。“范式”的基本理论和方法随着科学的发展发生变化,而新范式的产生,一方面是由于科学研究范式本身的发展,另一方面则是由于外部环境的推动。本节主要介绍科学研究的四种范式的发展历程,以及第四范式的概念及特点。
图1-3介绍了关于从过去到现在的科学研究的四种范式的发展历程。科学研究正在经历从定性研究、定量研究、社会仿真研究到大数据驱动的研究这一第四范式的转型。
图1-3 科学研究的四种范式的发展历程
这里所说的研究范式不等同于科学知识范式,四种研究范式也并非从一到四逐渐替代,它们都是人们认识世界、进行社会科学研究的有效工具。在社会科学研究的历史演化过程中,四种研究范式走向融合,弥补各自缺陷,并在认识论、方法论上逐渐形成“通宏洞微”的连续谱。
第一研究范式分为两个阶段:
第一阶段(17世纪以前)不区分自然科学与社会科学,对社会现象的观察比较笼统,把所有知识大一统于“自然哲学”的体系之内,为自然现象和社会现象提供同一套解释系统。对社会认知进行哲学思辨,建立了朴素的唯物主义和唯心主义理念论、早期辩证法、演绎法、三段论与归纳证明、有机论的自然观和经验论等。对推动后来的科学发展起到了巨大的作用,许多知识至今仍然是人们认识社会的出发点和基本准则。
第二阶段(20世纪60年代以来),即现代社会科学的定性分析。通常涉及:观察和记录事实,分析、比较和分类,归纳概括事实间的关系,接受进一步检验。这四个步骤是“自下而上”的研究路径。定性研究在对定量研究的批判中逐渐发展起来,形成了独特的概念体系、具体方法和理论,开发了规范化的操作程序和研究工具。同时,个案研究、扎根理论和叙事探究等定性研究设计类型也得以使用,并出现了“参与”和“倡导”实践。
第二研究范式是在社会科学试图通过模仿自然科学的方法和语言,用自然规律解释人类社会的过程中形成的。在逻辑实证主义和操作实证主义的共同推动下,定量研究在社会科学研究领域占据了主导地位,并在社会科学创立和发展过程中发挥了巨大的作用。通过定量研究,社会科学学科分支呈扇形逐步细化和延伸,学科理论不断深化,与社会实践的结合也更为紧密。近50年来,社会科学总体向更为严格的科学主义取向、更为专业的方向发展,这在很大程度上是以统计学的广泛运用和定量研究为基础的。将过去几百年的理论分支使用模型概括,因为从原始的钻木取火,到以伽利略为代表的文艺复兴时期的科学发展初期,在这一阶段人们很难对自然现象进行更准确的认识。因此,科学家开始尝试尽可能地简化实验模型,去除一些复杂的干扰,只留下关键因素(例如,“足够流畅”“足够长的时间”“足够稀薄的空气”等,就是物理学习中描述的条件),然后通过微积分来总结,这就是科学研究的第二范式。这种研究范式一直持续到19世纪末,都堪称完美。牛顿三定律成功解释了经典力学,麦克斯韦理论成功解释了电磁学,经典物理学大厦宏伟壮观。但在量子力学和相对论出现之后,非凡的大脑思维和复杂的计算超越了以理论研究为主的实验设计。随着理论验证的难度不断增加和经济投入不断提高,科学研究开始显得力不从心。
复杂性科学发展的同时,人类应对全球问题的需求日益增加,特别是计算机技术不断成熟,在此基础上第三研究范式逐渐发展起来。社会科学领域的计算实验方法不仅仅是简单的研究技巧和具体方法的改进,更为重要的意义是把现实社会系统转化成由智能主体构成的演化系统。这个演化系统通过“人工个体”代替现实系统中的“人”,揭示了社会系统中“个体微观行为和系统宏观行为之间的动力学机制”。此方法已经在多个领域实现,采用此方法较多的复杂系统模型有元胞自动机、离散事件模型、系统动力学和基于主体的计算机建模等。20世纪中叶,冯·诺依曼提出了现代电子计算机体系架构,用电子计算机模拟科学实验的模式迅速普及。人们通过模拟可以推断出越来越多的复杂现象。典型案例包括模拟核试验和天气预报。计算机模拟日益取代实验,并逐渐成为科学研究的常规方法,这就是科学研究的第三范式。
科学的未来发展趋势是随着数据的爆炸式增长,计算机不仅可以进行模拟,还可以进行分析总结、产生理论。数据密集型范式逐渐从第三范式中分离出来,成为一种独特的科学研究范式,这种科学研究方法被称为第四范式。基于数据科学的大数据研究范式是最近10余年来随着ICT技术不断发展、互联网的兴起和实时在线数据的易得形成的第四研究范式。由于“万物皆智能”“万物皆联网”引发了“万物皆数据”,出现了“计量一切”的趋势。社会科学研究的对象也从传统的人参与的社会系统和社会过程,转变为现实世界和虚拟世界平行系统互动形成的数据网络。由于大数据记录了人们日常活动的行为甚至情感偏好,很大程度上解决了社会科学研究中数据采集的“观察渗透”问题,并可通过“数据清洗”和“数据脱敏”解决数据质量和伦理问题。大数据驱动的第四研究范式将改变传统的假设驱动的研究方法,转向基于科学的数据挖掘研究方法,会在预先占有大量数据的基础上,通过计算得出之前未知的理论。
第四研究范式的概念由微软研究院计算机科学家Jim Gray提出,他曾长期致力于大型数据库、数据计算和事务处理系统等领域的研究。Jim Gray以科学研究方法的历史演变为标准,将科学研究分为:以观察和实验为依据的实验范式,以对数据进行归纳、建模为基础的理论范式,以模拟复杂多变对象为依据的模拟范式。随着科学研究内容越来越丰富,单纯的计算手段已经不能满足现有的科学研究活动。他提出:如何采集、存储庞大的科学数据,如何进行信息管理与数据分析,应该成为现阶段科学研究的重要问题。他认为,应用计算机解决数据密集型的科学问题,即对计算机采集并存储的实验数据进行挖掘和分析,并在此基础上建立新理论的研究方式可以作为科学研究的第四范式。Jim Gray基于其在数据研发与应用领域的探索,在2007年的演讲报告中提出了第四范式这一概念。在当时,数据技术已经开始被应用于科学研究的个别领域,但研究者对数据的整体认识还有所欠缺,主要存在的问题可以概括为以下三方面。
第一,数据分析和管理的工具缺乏,导致大量数据无法被有效利用。科学工作者进行科学研究的前提是采集大量的相关研究数据,但在研究成果发表之时往往只能采用大量原始数据的冰山一角。在采集了数据之后,非计算机信息技术相关领域的研究工作者面对庞大的数据、表格和工作簿时,如果缺乏实用的数据分析和管理工具,很难做到妥善存储数据、管理数据和对数据进行挖掘分析,数据不能够得到最大限度的研究,原始数据甚至会流失从而浪费。
第二,科学研究基础设施不能满足现今的科学研究活动。科学研究设施的建设与完备是科学研究发展的基础,现今,伴随科学研究内容的拓宽深入,复杂的模拟方法正在生成大量的数据,实验科学中也出现了数据的急剧增长,亟须用更先进的计算机技术和程序工具在科学研究的各个阶段进行数据存储、分析、处理,尽可能地挖掘有效信息以进行研究。绝大多数科学工作者都已经意识到了数据处理工具的重要性,但现有的数据研究基础设施因种种原因还不能满足科学研究活动。
第三,学术交流活动与科研信息传播速率有待提高。在计算机信息技术飞速发展的今天,信息量呈爆炸式增长,无论是商业营销管理,还是互联网媒体与社会舆论,都在对数据信息资源探索开发中,相对而言,在科学研究领域,学术交流活动还没能充分地利用计算机信息技术的便利。在建立严密的同行评议和相对完备的科研规则制度的前提下,如果能够利用互联网技术,更快捷、更有效率地查看原始数据及其相关文献,建立面向大众的科研数字图书馆,一定会提高研究人员的科学生产力,促进交叉学科知识涌现,从而推动科学研究的发展。
科学研究的第四范式主要有全量样本、容错性、关联性等特点。
1.全量样本
在过去的科学研究中,由于技术条件的限制,记录、存储和分析数据的工具与手段不够完备,科学研究者只能收集少量的样本数据进行分析,为了使分析与处理数据变得简单有效,一般倾向于研究包含少量数据的典型案例。但如今,计算机技术日趋成熟,在科学研究的第四范式中,科学研究者运用传感器、实时检测器能够捕捉过去无法收集的大量数据,使用智能数据库与管理系统能够更有效率、更迅速地存储和管理数据,通过不同领域的工作处理系统、普遍适用的计算编程对数据进行分析与计算,可以获得比抽样更加精确的研究结果,这些操作方法使科学研究变得更有说服力、更有效率。
除了能够获得海量数据,即样本约等于总体,还需要对数据进行更深度的探讨,从不同角度,更细致地观察和研究数据的方方面面。例如在数值比对研究中,只有从大量相同数据中寻找到的异常值才是最有用的信息,通过第四研究范式对数据进行全量分析,使得大量数据的细节比对成为可能。在数字时代来临之前,随机抽样是一条分析数据的捷径,能够在一定程度上解决许多问题。过去的随机抽样往往建立在无限接近全量样本的基础之上,允许科学研究存在微小的偏差,虽然这些偏差可能造成无法捕捉研究细节,甚至使总体研究结果变化巨大,但这种程度的研究已经是科学家尽最大所能的结果。现在,利用第四研究范式的全量样本特性,就可以收集到过去无法收集到的信息。科学研究不再单纯依赖于抽样调查、样本研究和调查问卷,除了分析实证数据,还可以从大规模的、全量的、全局的数据角度进行研究,并且能够从这样的研究中获得额外的多样性价值。
2.容错性
第四研究范式的应用是以大数据的研究为前提的,虽然使用第四研究范式获得的数据量大幅增加,但会造成准确性降低,一些错误的、偏差的数据也会混进数据库。为了保证科学研究内容的精确性,许多科学家都致力于优化测量工具,这种对测量精确性的追求在相当长的一段时间内促进了科学研究的发展。
第四研究范式不同于以往的科学研究范式,原始研究数据量少这一前提被打破,对数据精确性的追求在研究中不再占有主要位置,并且,要求巨量数据完全准确也是不可能实现的。运用第四研究范式,与其考虑研究数据中是否存在微小的误差,对数据整体状况的考量才是研究中亟待解决的主要问题。第四研究范式放宽了对误差的标准,而且自然存在的误差也应该被作为研究内容的一部分。虽然容错性这一特质让第四研究范式在科学研究过程中产生了许多困难,如误差率过大,不同来源、不同种类的信息难以整合等问题,但也应该看到,算法上的偏差是相对的,第四研究范式是能够成立的,以海量数据为前提,即使存在许多错误,科学研究结果的精确性还是优于小规模数据的研究。过分追求科学研究范式的精确性在信息贫乏的时代是有必要的,即使是实验研究、理论研究和仿真研究,也需要耗费巨大才能让科学研究内容尽量精确。
在以大数据为前提的科学研究中,可以掌握的数据越来越全面,不再需要担心某个数据点对整体分析的不利影响。对于这些纷繁复杂的数据,企图以高昂的成本消除所有的误差是得不偿失的,应该尝试容许细微误差的存在。当然,如何缩小研究数据的误差也是第四研究范式在进行数据采集和分析时需要改进的问题之一。
3.关联性
在大数据的背景下,第四研究范式注重科学研究的关联性分析,可以比过去的研究更容易、更快捷、更清楚地分析事务。实质上,关联性是指某两个数据值的关系。当一个数据值变化,另一个数据值也随之增加或减少时就可以认为这两个数据值之间的相关关系强。科学研究内容本身不是孤立的,而是充满联系的,通过对研究内容关联性的考察,以及对研究内容之间的强弱、多少、升降关系的分析,已经能够帮助研究者对整体研究情况有全面的把握,以对研究趋势进行评估和预测。
这些都是在找出研究内容自身的因果联系之前,研究者能够获得的研究信息与成果。只要能够及时查找并分析研究对象及其内部的关联关系,科学研究就能够起到事半功倍的效用。但如何洞悉事务之间的关联关系是一个问题,既要获得大量的数据,又要对其进行技术分析与筛查,这在过去的科学研究中是做不到的。第四研究范式的运用使相关关系的分析成为可能。现在拥有海量的数据和先进的计算机技术,因此不再需要人工选择一个关联物或者一小部分相似数据来逐一分析。理解世界不再需要完全建立在实验研究、理论研究和仿真研究的假设基础之上,第四研究范式运用关联性分析的理念,采用各种非线性问题的分析工具,试图发现各个科学研究领域、交叉研究领域的问题,针对科学现象能够更准确、更快速,且不带偏见地研究、解决问题。通过探求“是什么”而不是“为什么”,来帮助研究者发现问题、研究问题,进而更好地了解这个世界。
实现第四范式的科研工作已经在气象和环境、生物和医学方面取得了很大进展。但显然,随着移动互联网的发展,各行各业产生的数据呈现爆炸式的增长,科研人员所面对的各领域的数据只会越来越多。但是,实现第四范式的科研,从中发现更多更新的成果,在异构数据整合、海量数据处理和算法优化等方面仍存在着巨大挑战。
数据本身存在着从生产到消亡的生命周期,在数据的生命周期中,数据的价值会随着时间的变化而发生变化。数据的采集粒度与时效性、存储方式、整合状况、呈现和展示的可视化程度、分析的深度,以及和应用衔接的程度,都会对数据价值的体现产生影响。因此,研究大数据生命周期各个阶段的特点,以便在实际的管理应用中采取不同的管理和控制手段。在成本可控的情况下,有效地使大数据产生更多的价值。
本节从数据生命周期的角度介绍数据集从产生或获取到销毁的过程。如图1-4所示,大数据的生命周期管理可分为:采集、存储、整合、呈现与使用、分析与应用、归档与销毁几个阶段,对数据的管理贯穿在大数据的整个生命周期内。
大数据的生命周期管理虽与传统数据的生命周期管理在流程上比较相似,但实际两者存在较大的差别。传统数据生命周期管理重要的考量之一是节省存储成本,它注重的是数据的存储、备份、归档、销毁,考虑的是如何在节省成本的基础上保存有用的数据。目前数据获得和存储的成本已经大大降低,大数据生命周期管理是以数据的价值为导向,针对不同价值的数据,采取不同类型的采集、存储、分析与使用策略。
图1-4 大数据的生命周期管理
数据采集作为大数据的来源,是数据生命周期管理的重要环节。数据采集是指从系统外部采集数据并输入到系统内部的过程。数据采集系统集成了信号采集器、传感器、Wi-Fi探针、摄像头等数据采集设备和一系列可以采集数据的应用软件。在大数据时代,企业不仅要采集企业内部数据,同样也需要采集外部数据,需要在法律法规允许的框架下,根据企业的数据战略来定义数据采集范围和采集策略。
数据采集的范围越来越广泛,已从传统的网站、传感器设备,延伸到各类移动及可穿戴设备中。大数据采集渠道的多样化,也意味着企业IT成本及投入的增加,更需要企业结合自身的战略和业务目标,制定适宜的大数据采集策略。数据采集策略通常以数据驱动和业务需求为导向,数据驱动策略适用于完全数字化的企业,如互联网企业,业务驱动策略适用于目前尚处于数字化过程中、成本紧张、数据能力及成熟度低的企业。
传统的数据采集,主要是在业务过程中采集客户与用户的自然属性和社会属性信息,以及与企业发生关系的业务信息。大数据时代中,客户的地点信息、行为轨迹(线上、线下)、生理特性、形象和声音特征等信息都会得到采集,会更多地涉及客户与用户的隐私。目前一些App存在强制授权、过度索权、超范围收集个人信息等问题,从中引发了一系列的网络信息安全问题,这成为大数据时代数据采集面临的重要问题。然而数据采集的安全隐私问题还远不止这些,企业在数据采集的过程中,以及数据从源系统采集到数据平台的过程中,必须确保被采集的数据不会被窃取和篡改。为此企业应为数据采集制定相应的安全标准,并且数据采集类系统需要根据采集数据的安全级别实现相应级别的安全保护。
数据是有时效的,数据采集得越及时,其产生的价值往往越大。从管理者的角度,如果通过数据能实时地了解企业的经营情况,就能够及时地做出决策;从业务的角度,如果能实时地了解客户的动态,就能够有效地为客户提供合适的产品和服务,提高客户满意度,避免投诉及客户流失;从风险管理的角度看,如果能通过数据及时发现风险,企业就能够有效避免风险和损失。实时数据采集成本较高,因此哪些数据需要实时采集,哪些数据可以批量采集,需要根据业务目标和业务应用来确定优先级。
大数据时代,首先意味着数据的容量在急剧扩大,这为数据存储和处理的成本带来了很大的挑战。采用传统的统一技术来存储和处理所有数据的方法将不再适用,而应针对不同热度的数据采用不同的技术进行处理,以优化存储和处理成本并提升可用性。数据热度是一种对数据使用情况的描述,它根据数据的价值密度、访问频次、使用方式、时效性等级等因素,将数据根据热度等级划分。随着时间的推移,数据价值会变化,应动态更新数据热度等级,从而调整存储策略,并推动数据从产生到销毁的整个生命周期的存储管理。
多样化(结构化、半结构化和非结构化)、海量数据的存储,也意味着批数据和流数据等多种数据形式的存储和计算。但数据容量的急剧扩大,面对不同的数据结构、数据形式、时效性与性能要求等因素,给数据存储和计算成本带来了极大挑战。对于结构化数据通常使用传统关系型数据库进行存储,对于较大规模的关系型数据可以使用分布式关系型数据存储。对于非关系型数据,如键值对(key-value)型数据、图数据、文档数据等,可以使用NoSQL数据库进行存储。随着大数据的发展,研发了很多非关系型数据存储技术和存储平台。如何针对不同数据热度采用不同存储和计算资源,选择合适的技术,以优化数据存储和处理成本并提升可用性,是大数据存储面临的重要问题。
数据整合是一种将来自不同数据源的数据收集、整理、清洗后,转换并加载到一个新的数据源,为数据消费者提供统一数据视图的数据集成方式。数据整合是一个较为复杂的过程,目前较为通用的方式为ELT(Extract-Load-Transform)模式,即提取、加载、转换。即将源数据整合到数据平台的处理过程,其中涉及数据标准、数据清洗、数据质量、数据接口、数据模型设计等。
要做好数据整合工作,需遵守数据一致原则,避免烟囱式重复建设,保证遵守命名、术语、备注、数据类型、编码、计算口径等一致性的数据标准,保证数据清洗和数据质量,保证数据逻辑可重复执行以减少重复计算,从而易于理解和查询地把数据有效整合和组织起来。但数据整合在各企业并无统一落地标准,数据整合对于企业数据治理是非常重大的挑战。
大数据的一个重要特点就是速度,在大数据时代,数据的应用者对于数据的时效性提出了新的要求。企业管理者希望能够实时地通过数据了解企业的经营状况;销售人员希望能够实时地了解客户的动态,从而发现商机快速跟进;电子商务网站也需要能够快速地识别客户在网上的行为,实时地做出产品推荐。因此提出了实时数据整合,但目前企业应用主要仍是根据实时数据进行数据累计和指标计算。对于多维分析和数据挖掘应用所需的数据,仍然主要由批量计算进行处理。但随着AI技术的不断成熟,ChatGPT迅速发展,以其强大的信息整合和对话能力震惊了全球,在自然语言处理上表现出了惊人的能力,也给实时数据整合带来了新的启发。
在这个数据爆炸的时代,人类分析数据的能力已经远远落后于获取数据的能力。这个挑战不仅在于数据量大、高维、多元、多态等,更重要的是数据获取的动态性、数据内容的噪声和相互矛盾,数据关系异构与异质性等。通过纯粹数字和数字术语进行数据思考并非人类的本能,想要在有需要时迅速、准确地判断和决策实属不易。面对这些挑战,数据的图形化呈现成为大数据发展的必然趋势。
随着现代社会的不断发展,要求每个人都能够从数据中发现价值,这就必然要求每个人都能看懂数据,能够从不同的角度分析数据,最终达到使用数据的目的。而数据的规模越来越大,属性越来越复杂,各类庞大的数据集无法直接通过读数的方式进行理解和分析,这对数据的呈现方式提出了更高要求。数据可视化旨在借助图形化手段,清晰有效地传达与沟通信息。可视化利用图形、图像处理、计算机视觉及用户界面技术,通过表达、建模以及对立体、表面、属性及动画的显示,对数据加以可视化解释。用户通过可视化的感知,使用可视化交互工具进行数据分析,尤其是在商业应用领域,数据可视化是各级决策者的有效参考依据。但是由于在各个分析阶段中可能出现的呈现维度不足、展示偏差或错误信息,仍然需要使用者对所呈现的结果具备一定的洞察力和评估能力。
大数据建设的目的在于分析与应用,只有进行分析与应用才能够充分体现和发挥出大数据的价值。数据本身拥有巨大的应用价值,在数据较为丰富的情况下,数据已经能够比较全面地反映真实情况,通过简单的数据分析即可找到业务的规律和提升点。但数据如果不是很充足,则需要采用传统的数据分析和建模方法,以增强数据分析结果。目前数据分析主要采用的还是通用的分析、建模工具和通用的算法。但要进一步挖掘数据的价值,就需要进行数据的深度分析。当企业在数据分析与应用达到一定的成熟度后,会逐步选择或自行开发具有行业特性和自身特性的数据分析与建模算法。
未来会出现越来越多的以数据为驱动的业务应用场景,一些基于数据的应用离不开数据分析和建模结果,否则应用场景将无法发生,例如精准营销和个性化推荐。这也意味着,没有数据、没有数据分析能力的企业,可能将无法在这些场景下竞争和生存。
传统的数据分析主要采用数据统计的方法从数据中发现规律,并用于描述状况和预测未来,从而指导业务、管理行为和辅助决策。常见的方法有报表、表格、检索、统计等。多维数据分析技术是常见的数据分析应用,可以基于维度对数据进行切片、切块、上卷、下钻和旋转分析等。但是随着大数据的发展,通过人力在海量的数据中寻找规律有很大的局限性,而且在面临越来越复杂的问题时,必须使用机器学习和深度学习。
机器学习是进行大数据分析强有力的工具,通过机器学习的手段可以高效、快速地对数据进行分析并提炼规律用于知识发现,能够更深入地挖掘数据的潜在价值。机器学习是一个更广泛的概念,它涉及使用算法和统计模型来使计算机系统自动地从数据中学习和改进,而无须进行明确的编程。机器学习涵盖了一系列算法和技术,包括监督学习、无监督学习、半监督学习、强化学习等。监督学习与无监督学习两者的区别就在于训练数据中是否有标签,使用带有标签的数据进行学习则是监督学习,而使用无标签的数据进行学习则是无监督学习。这些算法旨在通过对大量数据训练,找出数据中的模式和规律,从而使模型能够对新的、未见过的数据进行预测或分类。
随着AI技术的发展,深度学习成为机器学习中的热门领域。深度学习与传统机器学习最重要的区别是深度学习使用网络结构,随着数据量的增加,其性能也随之提高。当数据很少的时候,深度学习算法并不能很好地执行,因为深度学习算法需要大量的数据才能完全理解它。深度学习则是机器学习的一个子集,特指那些使用深度神经网络结构的机器学习算法。深度神经网络是一种模拟人脑神经网络的复杂网络结构,它包含多个层次的神经元,每个层次都从前一个层次接收输入,并产生输出作为下一个层次的输入。通过训练深度神经网络,可以学习到数据中的复杂特征表示,从而实现对数据的准确分类或预测。
数据应用通常是将数据分析的结果可视化呈现,为企业提供决策支持,也可将数据分析与挖掘的成果转化为具体的应用集成到业务流程中,为业务直接提供数据支持。一般为嵌入业务流程的数据辅助功能应用和以数据驱动的业务应用场景。
大数据时代,数据量的快速增长已经成为IT管理部门所面临的最难解决的问题之一,因为数据量的增长已经严重降低了应用程序的性能及稳定性,并且消耗了大量的投资,同时给备份与恢复也带来了巨大的负担。
一些关键的业务系统经过长时间的积累产生了大量的历史交易数据,这些历史数据使得系统变得越来越庞大,并且在维护上也越来越复杂。提高存储容量和服务器的处理能力只能暂时地缓解所面临的问题。数据归档的实施可以有效地提高数据性能,确保核心业务不会因为长时间数据积累而出现性能问题。为此,很多企业都提出了数据归档的解决方案,即通过流程和技术来管理信息数据从产生到失去价值的整个过程的归档策略,制定数据在生命周期不同阶段的访问和过期策略,从而实现数据归档管理。
数据归档是指识别不再经常使用的数据并将其移至单独存储系统,以实现长期保留的任务。归档的数据通常是对组织至关重要,或者出于法律原因或为了满足监管框架的合规性要求而必须保留的信息。数据归档不同于数据备份。数据备份提供活动数据的副本,可用于在发生数据损坏、丢失、被盗或泄露时恢复信息。数据归档通常要经过数据清洗,通过数据结构重构、数据压缩格式改变、访问性变化、数据可恢复性和数据可理解性、元数据管理等方面,实现更高效的存储策略。常见的归档方式分为在线归档和离线归档,两者最大的区别在于在线归档数据保持对迁移后的归档数据的实时访问能力,而离线归档数据可以用于数据的长期保存,并提供有限的查询。
随着数据量的急剧增长,从价值成本角度来看,当存储超出企业业务需求的数据,就会执行数据销毁。数据销毁处理需要针对数据的内容进行清除和净化。数据销毁也被称为数据安全的终点,它带来了更多数据安全问题。在企业应用中,针对数据销毁应该有严格的管理制度,应建立数据销毁的审批流程。
大数据的处理流程如图1-5所示。大数据的采集一般采用一种标准化的流程框架,即ETL(Extract-Transform-Load),ETL负责将分布式、异构数据源中的数据(如业务系统、We b数据等结构化数据,手工文件等半结构化数据以及可能需要的非结构化数据等)提取到数据仓库或者统一数据存储的贴源层,形成原始数据。
图1-5 大数据处理流程
在数据治理阶段根据数据质量和应用场景需求,对所采集的数据进行数据转换,如数据去重、异常处理和数据归一化等,使得不同来源的数据整合成一致的、适合数据分析算法和工具读取的数据。形成标准数据后,将它们存储到数据仓库或者统一数据存储的标准数据层中,并根据场景需求将数据整合形成数据服务对外提供。
在数据分析方面,需要用工具(如SPSS)、结构算法模型、数据标签、数据挖掘,进行分类汇总等处理,以满足各种数据分析需求。
在数据应用方面,当数据分析完成后,根据实际业务场景需要进行可视化展示分析,或者根据反馈上层功能运行的分析结果进行用户行为画像,个性化推荐、产品推荐等典型应用场景也可以用于趋势分析、预测预警等科学决策。
大数据处理的第一步是数据的采集。在数据采集过程中,数据源会影响大数据质量的真实性、完整性、一致性、准确性和安全性。对于业务系统数据,根据数据实时性,多采用ETL工具直接建立采集作业进行定期提取;对于Web数据,多采用网络爬虫方式进行采集,这需要对爬虫软件进行时间设置以保障采集到的数据的时效性。需灵活控制采集任务的启动和停止。
现在的中大型项目通常采用微服务架构进行分布式部署,所以数据的采集需要在多台服务器上进行,且采集过程不能影响正常业务的开展。基于这种需求,衍生了多种数据工具,如Flume、Logstash、Kibana等,它们都能通过简单的配置完成复杂的数据收集和数据聚合。
采集到数据后,需要对数据进行存储管理,通常最为大家熟知的是MySQL、Oracle等传统的关系型数据库,它们的优点是能够快速存储结构化数据,并支持随机访问。但大数据的数据结构通常是半结构化的(如日志数据),甚至是非结构化的(如视频、音频数据),为了解决海量半结构化和非结构化数据的存储问题,诞生了HDFS、KFS、GFS等分布式文件系统,它们都支持结构化、半结构化和非结构化数据的存储,并可以通过增加机器进行横向扩展。除此之外,HBase、MongoDB等数据库兼具分布式文件系统和关系型数据库的优点,满足既考虑数据存储也考虑访问的需求。
数据采集过程中通常涉及一个或多个数据源,这些数据源包括同构或异构的数据库、文件系统、服务接口等,易受到噪声数据、数据值缺失、数据冲突等因素影响。因此需首先对采集到的数据集进行治理,以保证大数据分析及预测结果的准确性与价值性。大数据的预处理环节主要包括数据清洗、数据归约、数据转换与数据整合等内容,可以大大提高大数据的总体质量,是大数据过程质量的体现。
数据清洗主要包括对数据的不一致检测、噪声数据识别、数据过滤与修正等方面,有利于提高大数据的一致性、准确性、真实性和可用性等方面的质量。
数据归约是在不损害分析结果准确性的前提下降低数据集合规模,使之简化,包括维归约、数据归约、数据抽样等技术,这一过程有利于提高大数据的价值密度,即提高大数据存储的价值性。
数据转换处理包括基于规则或元数据的转换、基于模型与学习的转换等技术,可通过转换实现数据统一,这一过程有利于提高大数据的一致性和可用性。
数据整合的目的是将多个数据源的数据进行集成,从而形成集中、统一的数据库、数据立方体等,这一过程有利于提高大数据的完整性、一致性、安全性和可用性等方面的质量。
总之,数据治理环节有利于提高大数据的一致性、准确性、真实性、可用性、完整性、安全性和价值性等方面的质量,而数据治理的相关技术是影响大数据过程质量的关键因素。
大数据分析技术主要包括对已有数据的分布式统计分析技术和对未知数据的分布式挖掘、深度学习技术。分布式统计分析可由数据处理技术完成,分布式挖掘和深度学习则在大数据分析阶段完成,包括聚类与分类、关联分析、深度学习等。通过挖掘大数据集中的数据关联性,形成对事务的描述模式或属性规则,并构建机器学习或者深度学习模型,使用海量训练数据,以提升数据分析与预测的准确性。
数据分析是大数据处理与应用的关键环节,它决定了大数据集的价值性和可用性,以及分析预测结果的准确性。在数据分析环节,应根据大数据应用场景与决策需求,选择合适的数据分析技术,提高大数据分析结果的可用性、准确性和价值质量。
数据应用是将经过数据处理或分析之后的数据结果应用于具体场景,如数据可视化展示、上层功能调用等。如数据可视化将大数据分析与预测结果以计算机图形或图像的直观方式展示给用户,并可与用户进行交互。这大大提高了大数据分析结果的直观性,便于用户理解与使用,这也是对大数据分析结果的检验与验证。大数据应用过程直接体现了大数据分析处理结果的价值性和可用性,对大数据的分析处理具有引导作用。在大数据采集、处理等一系列操作之前,通过对应用场景充分调研、对管理决策需求信息深入分析,可明确大数据处理与分析的目标,从而为大数据采集、存储、处理、分析等过程提供明确的方向,并保障大数据分析结果的可用性、价值性。
大数据的数据量大且复杂,需要复杂且功能强大的系统才能完成大数据的采集、处理和分析等任务,本节按照大数据的存储、处理和应用的逻辑划分了大数据架构。
复杂的大数据系统包含各种不同的技术、模型和应用,这里从本质上把大数据的计算架构分为三个基本系统,即数据存储系统、数据处理系统及数据应用系统,大数据的计算处理不仅涉及各类数据分析及挖掘算法,其计算系统的性能还依赖于计算模型和计算架构。
在图1-6所示的大数据架构中, 数据存储系统 主要包括数据采集与建模、分布式文件系统及分布式数据库/数据仓库,该系统主要提供数据采集、清洗、建模、大规模数据存储管理和数据操作等功能; 数据处理系统 主要包括算法、计算模型、计算平台与引擎,该系统提供了大数据计算处理能力和应用开发平台; 数据应用系统 主要包括数据可视化、数据产品和数据服务及各类大数据应用。
图1-6 大数据架构示意图
大数据计算体系中,数据的采集通常来源于多种异构数据源,可能包括非结构化、结构化及半结构化数据。由于数据的非结构化、异构性及分布式计算等特点,大数据存储系统的设计远比传统的关系型数据库系统复杂得多,如图1-7所示。对于大数据存储结构,数据库提供数据的逻辑存储结构;分布式文件系统提供数据的物理存储结构。数据存储系统可以包括以下几个部分。
图1-7 数据存储系统示意图
1.数据采集层
数据采集层的数据来源包括应用系统,如客户关系管理(Customer Relationship Management,CRM)系统、企业资源计划(Enterprise Resource Planning,ERP)系统、财务系统等,还有社交媒体数据、残留数据(即在线行为和与数字设备交互的副产品,而不是用户特别选择留下的信息)、系统日志、文件。使用网络爬虫、无线传感器网络、物联网和各种数据资源,可以从中采集进行分析所需的原始数据。
数据采集之后需要进行提取,然后系统将来自不同源的各类结构化、非结构化和异构数据转换为标准存储格式的数据,并定义数据属性和取值范围,最后按照数据分析的需求进行建模。
2.分布式文件系统
使用集中式或分布式文件系统来实现大量数据的物理存储。常见的分布式文件系统有HDFS(Hadoop Distributed File System)、GFS(Google File System)和Colossus(谷歌用于替代GFS架构的新架构)等。
3.NoSQL数据库
大数据是指那些用传统的系统不能很好地处理的数据,所以对于大数据的存储,使用传统的关系型数据库是不能满足要求的,所以需要非关系型数据库来进行存储。
非关系型数据库(NoSQL)根据数据的特性以及分析的需求,提供了多样的存储方式,包括基于行的数据存储、基于列的数据存储(如HBase)、文件存储(如MongoDB)、图数据存储(如Neo4j)等,并且使用键值对结构、哈希表检索等可以实现非结构化数据的逻辑存储。
数据科学家可以选择合适的数据存储架构来存储数据,使数据存储和数据检索更加方便地服务于上层数据处理和分析。
4.统一数据访问接口
应用程序对数据库的访问及数据交换是分布式计算系统中的一个重要问题。业界较早使用的是数据库访问应用程序编程接口(Application Programming Interface,API),如ODBC(Open DataBase Connectivity),其支持应用程序对数据库的SQL访问。但是这类编程接口无法在分布式计算环境中提供事务管理、并发调度、缓冲区管理等复杂功能。
这就需要引入数据访问层(Data Access Layer,DAL),它是在数据库之上提供数据交换功能的软件层,主要实现应用程序数据的持久化存储和数据交换。但是DAL很难支持跨平台的异构数据库访问。
因此,数据访问层的设计需要兼容各种标准技术和产品,这就需要统一数据访问接口(Unified Data Access Interface,UDAI)对上层应用提供数据服务等。
数据处理系统主要包括大数据处理算法、计算模型、计算平台与引擎三个部分,如图1-8所示。
图1-8 数据处理系统示意图
算法部分主要包括数据挖掘算法、机器学习算法和深度学习算法。其中数据挖掘算法主要涉及分类、回归、聚类和关联规则分析等任务。机器学习算法可以大致分为监督学习和无监督学习两类。而深度学习算法以各种网络结构为代表,包括卷积神经网络(Convolutional Neural Network,CNN)、循环神经网络(Recurrent Neural Network,RNN)、生成对抗网络(Generative Adversarial Network,GAN)和长短期记忆(Long Short-Term Memory,LSTM)网络等。
计算模型部分包括针对不同类型数据的计算模型,如针对海量数据的MapReduce批处理模型、针对动态数据流的流计算(stream computing)模型、针对图数据的图计算(graph computing)模型、基于物理大内存的内存计算(In-memory Computing)模型等。
计算平台与引擎位于计算模型层之上,如Hadoop、Storm、Spark等。计算引擎是基于计算平台为特定计算模型而设计和封装的服务器端程序,用于支撑特定计算模式下的后端的大数据处理、计算和分析任务。比如,MapReduce计算引擎提供大数据的划分、节点分配、作业调度及计算结果融汇等功能,直接支持上层应用的开发。谷歌的交互式计算引擎采用Dremel和PowerDrill技术,提供对大规模数据集的快速计算分析;开源的Apache drill项目基于列存储结构、数据本地化、内存存储等技术,力图实现对大规模数据的快速查询访问。图并行计算引擎提供对网络图数据(社交网络、电信网络、脑功能连接网络这一类数据常常用加权有向图来表征)的高效计算处理(Google搜索引擎处理的数据中有20%是用图计算引擎来处理的),这方面的技术包括谷歌的Pregel、开源技术Hama、GraphLab等。S4(Simple,Scalable Streaming System)是雅虎提供的一个分布式流计算引擎,最初目标是提高cost-per-click广告点击率,通过实时数据计算预测用户对广告可能的点击行为。
基于上述大数据存储系统和大数据处理系统,可以提供各行业、各领域的大数据应用技术解决方案。目前,互联网、电子商务、电子政务、金融、电信、医疗卫生等行业是大数据应用最热门的领域,而制造、教育、能源、环保、智能交通则是大数据技术逐渐开始拓展的新领域。
大数据应用系统主要包括数据可视化、数据产品和数据服务及各类大数据应用。大数据应用系统可以根据用户数据分析的目的和需求进行设计,以发现数据中蕴含的规律和模式,从而实现数据的价值。
本章介绍了大数据的基本概念,阐述了数据产生方式的发展历程,数据产生方式的演变促成了大数据时代的来临。大数据对于科学研究、思维方式的转变都产生了重要的影响。大数据主要包括结构化数据、半结构化数据和非结构化数据,具有规模性、多样性、高速性、价值性等特征。基于大数据的4V特征,大数据的整个生命周期管理过程对于数据的采集、存储、处理、整合和应用也尤为重要。
本章最后介绍了大数据架构,主要包括数据存储系统、数据处理系统和数据应用系统三个部分,在不同层面采用各种相关的技术,包括分布式文件系统、分布式数据库、计算模型、各种算法等,通过“采-存-管-用”实现大数据价值的充分挖掘和发挥。
1.大数据包含哪些数据,分别有什么特点?
2.大数据有哪些特征?请简要描述。
3.什么是第四范式?有怎样的特点?
4.大数据的生命周期包括哪些流程?
5.【多选】以下数据库中哪些支持结构化、半结构化和非结构化的数据存储( )。
A.MySQL
B.OceanBase
C.HBase
D.MongoDB