牛宝体育新闻
牛宝体育带你深入浅出重新认识大数据
今天带大家开始学习大数据,由浅到深,解读大数据的来龙去脉。今天主要介绍大数据的定义和结构。
随着大数据的流行,大数据的定义呈现多样化的趋势,达成共识非常困难。本质上,大数据不仅意味着数据的大容量,还体现了一些区别于“海量数据”和“非常大的数据”的特点。实际上,不少文献对大数据进行了定义,其中三种定义较为重要。
国际数据中心IDC是研究大数据及其影响的先驱,在2011年的报告中定义了大数据:“大数据技术描述了一个技术和体系的新时代,被设计于从大规模多样化的数据中通过高速捕获、发现和分析技术提取数据的价值”。这个定义刻画了大数据的4个显著特点,即容量(volume)牛宝体育、多样性(variety)、速度(velocity)和价值(value),而“4Vs”定义的使用也较为广泛。类似的定义也出现在2001年IT分析公司META集团(现在已被Gartner并购)分析师DougLaney的研究报告中,他注意到数据的增长是三维的,即容量、多样性和速度的增长。尽管“3Vs”定义没有完整描述大数据,Gartner和多数产业界巨头如IBM和Microsoft的研究者们仍继续使用“3Vs”模型描述大数据。
2011年,McKinsey公司的研究报告中将大数据定义为“超过了典型数据库软件工具捕获、存储、管理和分析数据能力的数据集”。这种定义是一种主观定义,没有描述与大数据相关的任何度量机制,但是在定义中包含了一种演化的观点(从时间和跨领域的角度),说明了什么样的数据集才能被认为是大数据。
美国国家标准和技术研究院NIST则认为“大数据是指数据的容量、数据的获取速度或者数据的表示限制了使用传统关系方法对数据的分析处理能力,需要使用水平扩展的机制以提高处理效率”。此外,大数据可进一步细分为大数据科学和大数据框架。大数据科学是涵盖大数据获取、调节和评估技术的研究;大数据框架则是在计算单元集群间解决大数据问题的分布式处理和分析的软件库及算法。一个或多个大数据框架的实例化即为大数据基础设施。
此外,还有不少产业界和学术界对大数据定义的讨论。然而对于大数据定义,要达成共识非常困难。一种逻辑上的选择是接受所有的大数据定义,其中每种定义反映了大数据的特定方面。采取这种方式理解大数据科学和工程的共同问题和相关机制。前面提到的大数据定义给出了一系列工具,用于比较大数据和传统的数据分析,比较结果如表1所示。
首先,数据集的容量是区分大数据和传统数据的关键因素。其次,大数据有三种形式:结构化、半结构化和无结构化。传统的数据通常是结构化的,易于标注和存储。而现在Facebook,Twitter,YouTube以及其他用户产生的绝大多数数据都是非结构化的。第三,大数据的速度意味着数据集的分析处理速率要匹配数据的产生速率。对于时间敏感的应用,例如欺诈检测和RFID数据管理,大数据以流的形式进入企业,需要尽可能快地处理数据并最大化其价值。最后,利用大量数据挖掘方法分析大数据集,可以从低价值密度的巨量数据中提取重要的价值。
大数据系统是一个复杂的、提供数据生命周期(从数据的产生到消亡)的不同阶段数据处理功能的系统。同时,对于不同的应用,大数据系统通常也涉及多个不同的阶段。本文采用产业界广为接受的系统工程方法,将典型的大数据系统分解为4个连续的阶段,包括数据生成、数据获取、数据存储和数据分析,如图2中水平轴所示。数据生成阶段关心的是数据如何产生。此时“大数据”意味着从多样的纵向或分布式数据源(传感器、视频、点击流和其他数字源)产生的大量的、多样的和复杂的数据集。通常,这些数据集和领域相关的不同级别的价值联系在一起。
数据获取则是指获取信息的过程,可分为数据采集、数据传输和数据预处理。首先,由于数据来自不同的数据源,如包含格式文本、图像和视频的网站数据,数据采集是指从特定数据生产环境获得原始数据的专用数据采集技术大数据。其次,数据采集完成后大数据,需要高速的数据传输机制将数据传输到合适的存储系统,供不同类型的分析应用使用。再次,数据集可能存在一些无意义的数据,将增加数据存储空间并影响后续的数据分析。例如,从监控环境的传感器中获得的数据集通常存在冗余,可以使用数据压缩技术减少数据传输量。因此,必须对数据进行预处理,以实现数据的高效存储和挖掘。
数据存储解决的是大规模数据的持久存储和管理。数据存储系统可以分为两部分:硬件基础设施和数据管理软件。硬件基础设施由共享的ICT资源池组成,资源池根据不同应用的即时需求,以弹性的方式组织而成。硬件基础设施应能够向上和向外扩展,并能进行动态重配置以适应不同类型的应用环境。数据管理软件则部署在硬件基础设施之上用于维护大规模数据集。此外,为了分析存储的数据及其数据交互,存储系统应提供功能接口、快速查询和其他编程模型。
数据分析利用分析方法或工具对数据进行检查、变换和建模并从中提取价值。许多应用领域利用领域相关的数据分析方法获得预期的结果。尽管不同的领域具有不同的需求和数据特性,它们可以使用一些相似的底层技术。当前的数据分析技术的研究可以分为6个重要方向:结构化数据分析、文本数据分析、多媒体数据分析、web数据分析、网络数据分析和移动数据分析。
大数据的研究涉及许多学科技术,图2显示了大数据技术地图,图中将大数据价值链不同阶段和相应的开源或专有技术联系在一起。图2反映了大数据的发展趋势。在数据生成阶段,大数据的结构逐渐复杂,从结构化或无结构的数据到不同类型的混合数据。在数据获取阶段,数据采集、数据预处理和数据传输的研究则出现在不同的时期。而数据存储的相关研究则大部分始于2005年。数据分析的基本方法形成于2000年前,随后的研究则使用这些方法解决领域相关的问题。从该图中,可以在不同阶段选择合适的技术和方法定制大数据系统。
从层次观点,可以将大数据系统分解为3层:基础设施层、计算层和应用层,如图3所示。这种层次观点仅提供概念上的层次以强调大数据系统的复杂性。
•基础设施层:由ICT资源池构成,可利用虚拟技术组织为云计算基础设施。这些资源通过特定的服务级别协定(service-levelagreement,SLA)以细粒度的方式提供给上层子系统,资源的分配需要满足大数据需求,同时通过最大化系统利用率、能量感知和操作简化等方式实现资源使用的有效性。
•计算层:将多种数据工具封装于运行在原始ICT硬件资源之上的中间件中,典型的工具包括数据集成、数据管理和编程模型等。数据集成是指从独立的数据源中获取数据,并通过必要的预处理技术将数据集合成为统一形式。数据管理是指提供数据的持久存储和高效管理的机制和工具,例如分布式的文件系统和SQL,NoSQL数据存储。编程模型实现应用逻辑抽象并为数据分析应用提供便利。MapReduce,Dryad,Pregel和Dremel是几个典型的编程模型。
•应用层:利用编程模型提供的接口实现不同的数据分析功能,包括查询、统计分析、数据的聚类和分类等,同时通过组合基本分析方法开发不同的领域相关应用。McKinsey公司提出了5个潜在的大数据应用领域:医疗康护、公众部门管理、零售、全球制造和个人位置信息。牛宝体育牛宝体育牛宝体育牛宝体育