海量数据计算
云计算属于新兴技术领域,群英云计算转一篇关于问题的学术报告吧。对您应该有所帮助。
1引言
目前,人们正处于一个“无处不网、无时不网,人人上网、时时在线”的时代,图灵奖获得者吉姆·格雷(Jim Gray)认为,网络环境下每18个月产生的数据量等于过去几千年的数据量之和。目前互联网的数据具有海量增长、用户广泛、动态变化等特征。2010年,QQ同时在线的用户超过1亿人,淘宝一年交易次数比上年增长150%,视频服务Animoto在3天内通过Amazon将其服务能力迅速扩展至75万用户。
数据挖掘能够发现隐含在大规模数据中的知识,提高信息服务的质量。如伊朗事件中twitter快速传播假消息的识别、Amazon和淘宝网中商品关联关系分析,以及优酷网中视频个性化推荐等。海量数据挖掘在国家安全、国民经济和现代服务业中具有广泛应用,有助于提升网络环境下信息服务的质量,实现以人为本的信息服务。
从数据挖掘技术的发展历史看,随着互联网的蓬勃发展,数据的规模越来越大,从KB级发展到TB甚至PB级海量数据;数据挖掘的对象也变得越来越复杂,从数据库、到多媒体数据和复杂社会网络;数据挖掘的需求也从分类、聚类和关联到复杂的演化和预测分析;挖掘过程中的交互方式从单机的人机交互发展到现在社会网络群体的交互。这种发展给数据挖掘带来了巨大的挑战:对于网络环境下产生的TB级和PB级的复杂数据,需要有高效的海量数据挖掘算法;网络环境下大众的广泛参与,需要在数据挖掘算法中能够融入群体智慧;同时社会网络的迅速发展使得信息服务的个性化成为必然,要求能够满足即时组合的个性化挖掘服务。
云计算是一种基于互联网的、大众参与的计算模式,其计算资源(包括计算能力、存储能力、交互能力等)是动态、可伸缩、被虚拟化的,并以服务的方式提供 [1] 。具体表现在:云计算的动态和可伸缩的计算能力为高效海量数据挖掘带来可能性;云计算环境下大众参与的群体智能为研究集群体智慧的新的数据挖掘方法研究提供了环境;云计算的服务化特征使面向大众的数据挖掘成为可能。同时,云计算发展也离不开数据挖掘的支持,以搜索为例,基于云计算的搜索包括网页存储、搜索处理和前端交互三大部分。数据挖掘在这几部分中都有广泛应用,例如网页存储中网页去重、搜索处理中网页排序和前端交互中的查询建议,其中每部分都需要数据挖掘技术的支持。
因此,云计算为海量和复杂数据对象的数据挖掘提供了基础设施,为网络环境下面向大众的数据挖掘服务带来了机遇,同时也为数据挖掘研究提出了新的挑战性课题。
下面将对并行编程模型、基于并行编程模型高效海量数据挖掘算法,以及基于云计算的海量数据挖掘服务相关研究进行综述。
2并行编程模型相关方法
为了使用户能够通过简单的开发来方便地达到并行计算的效果,研究人员提出了一系列的并行计算模型。并行计算模型在用户需求和底层的硬件系统之间搭建桥梁使得并行算法的表示变得更加直观,对大规模数据的处理更加便捷。根据用户使用硬件环境的不同,并行编程模型又可以分为在多核机器、GPU计算、大型计算机以及计算机集群上的多种类型。目前比较常用的并行编程接口和模型包括:
pThread接口[2]。pThread是在类Unix系统上进行多线程编程的通用API,为用户提供了一系列对线程进行创建、管理和各类操作的函数,使用户能够方便地编写多线程程序。
MPI模型[3]。MPI的全称为消息传递接口(Message Passing Interface),它为用户提供了一系列的接口,使用户利用消息传递的方式来建立进程间的通信机制,从而方便地对各种算法进行并行实现。
MapRece模型[4]。MapRece模型是由谷歌公司提出的并行编程框架,它首先为用户提供分布式的文件系统,使用户能方便地处理大规模数据;然后将所有的程序运算抽象为Map和Rece两个基本操作,在Map阶段模型将问题分解为更小规模的问题,并在集群的不同节点上执行,在Rece阶段将结果归并汇总。MapRece是一个简单,但是非常有效的并行编程模型。
Pregel模型[5]。Pregel同样是由谷歌公司提出的专门针对图算法的编程模型,能够为大规模数据的图算法提供并行支持。一个典型的Pregel计算过程将在图上进行一系列的超级步骤(SuperSteps),在每个超级步骤中,所有顶点的计算都并行地执行用户定义的同一个函数,并通过一个“投票”机制来决定程序是否停止。
CUDA模型①。CUDA是由NVIDIA公司提出的一个基于GPU的并行计算模型。由于GPU在设计需求上与普通CPU不同,GPU通常被设计为能较慢地执行许多并发的线程,而不是较快的连续执行多个线程,这使得GPU在并行计算上有先天的优势。CUDA为用户提供了利用GPU计算的各种接口,使程序员能够像在普通电脑上进行CPU编程那样进行GPU程序的编写。
此外还有OpenMP、PVM、OpenCL等各种并行编程模型和方法。这些并行编程和方法一般都提供了主流编程语言的实现,从而使得用户能根据自身编程习惯来选用。
另一方面,随着云计算的不断推广,还出现了各种商用的并行计算/云计算平台,为用户提供并行计算服务。这其中比较著名的包括微软的Azure平台、Amazon公司的EC2平台、IBM公司的蓝云平台、谷歌公司的Google App Engine等。各大IT公司也纷纷开发自己的并行计算模型/框架作为自身技术服务的基本平台,这使得并行计算技术得到了更加快速的发展。
3基于并行编程模型高效海量数据挖掘算法研究
为了实现海量数据上的数据挖掘,大量分布式并行数据挖掘算法被提出。Bhari et al[6]整理了一个十分详尽的并行数据挖掘算法文献目录,包含了关联规则学习、分类、聚类、流数据挖掘四大类分布式数据挖掘算法,同时还包括分布式系统、隐私保护等相关的研究工作。
MapRece并行编程模型具有强大的处理大规模数据的能力,因而是海量数据挖掘的理想编程平台。数据挖掘算法通常需要遍历训练数据获得相关的统计信息,用于求解或优化模型参数。在大规模数据上进行频繁的数据访问需要耗费大量运算时间。为了提高算法效率,斯坦福大学Chu et al[7]提出了一种适用于大量机器学习算法的通用并行编程方法。通过对经典的机器学习算法进行分析可以发现,算法学习过程中的运算都能转化为若干在训练数据集上的求和操作;求和操作可以独立地在不同数据子集上进行,因此很容易在MapRece编程平台上实现并行化执行。将大规模的数据集分割为若干子集分配给多个Mapper节点,在Mapper节点上分别执行各种求和操作得到中间结果,最后通过Rece节点将求和结果合并,实现学习算法的并行执行。在该框架下,Chu et al实现了十种经典的数据挖掘算法,包括线性回归、朴素贝叶斯、神经网络、主成分分析和支持向量机等,相关成果在NIPS 2006会议上发表。
Ranger et al[8]提出了一个基于MapRece的应用程序编程接口Phoenix,支持多核和多处理器系统环境下的并行程序设计。Phoenix能够进行缓存管理、错误恢复和并发管理。他们使用Phoenix实现了K-Means、主成分分析和线性回归三种数据挖掘算法。
Gillick et al[9]对单程学习(Single-pass)、迭代学习(Iterative Learning)和基于查询的学习(Query-based Learning)三类机器学习算法在MapRece框架下的性能分别做了评测。他们对并行学习算法涉及到的如何在计算节点之间的共享数据、如何处理分布式存储数据等问题进行了研究。
Mahout①是APS(Apache Software Foundation)旗下的一个开源数据挖掘项目,通过使用Apache Hadoop库,可以实现大规模数据上的并行数据挖掘,包括分类、聚类、频繁模式挖掘、回归、降维等算法,目前已经发布了四个版本。
4基于云计算的海量数据挖掘服务研究
云计算除了给用户提供通用的并行编程模型和大规模数据处理能力之外,另一个重要的特点是为用户提供开放的计算服务平台。在数据挖掘方向,现在也有一系列的系统被开发出来,面向公众提供数据挖掘服务云计算平台。
Talia et al[10]提出可以从四个层次提供云计算数据挖掘服务:底层为组成数据挖掘算法的基本步骤;第二层为单独的数据挖掘服务,例如分类、聚类等;第三层为分布式的数据挖掘模式,例如并行分类、聚合式机器学习等;第四层为之前三层元素构成的完整的数据挖掘应用。在此设计基础上,他们设计了基于云计算的数据挖掘开放服务框架,并开发了一系列的数据挖掘服务系统,例如Weka4WS、Knowledge Grid、Mobile Data Mining Services、Mining@home等,用户可以利用图形界面定义自己的数据挖掘工作流,然后在平台上执行。
PDMiner[11]是由中国科学院计算技术研究所开发的基于Hadoop的并行分布式数据挖掘平台,该系统现在已经用于中国移动通信企业TB级实际数据的挖掘。PDMiner提供了一系列并行挖掘算法和ETL操作组件,开发的ETL算法绝大多数达到了线性加速比,同时具有很好的容错性。PDMiner的开放式架构可以使用户将算法组件经过简单配置方便地封装加载到系统中。
此外,商业智能领域的各大公司也提供面向企业的大规模数据挖掘服务,例如微策略、IBM、Oracle等公司都拥有自己的基于云计算的数据挖掘服务平台。
5总结和展望
通过云计算的海量数据存储和分布计算,为云计算环境下的海量数据挖掘提供了新方法和手段,有效解决了海量数据挖掘的分布存储和高效计算问题。开展基于云计算特点的数据挖掘方法的研究,可以为更多、更复杂的海量数据挖掘问题提供新的理论与支撑工具。而作为传统数据挖掘向云计算的延伸和丰富,基于云计算的海量数据挖掘将推动互联网先进技术成果服务于大众,是促进信息资源的深度分享和可持续利用的新方法、新途径。
『贰』 海量数据,分布式计算,并行计算 ,虚拟化与云计算的关系是怎样的
海量数据涉及到一些方面。我给你介绍一下
第一点涉及到云存储和分布式存储。第二点涉及到分布式计算和并行计算。
分布式计算和并行计算:并行计算偏科学领域,偏单用户,单请求,在配置多处理机的服务器下处理。分布式计算偏多用户,多请求,涉及多台服务器多个计算单元的分布式处理。
分布式计算本身又分为两种,一种是单任务拆分,如maprece来实现;一种是多请求分布式调度,涉及到云计算paas
云计算中的云是相对于客户端而言,其实云计算本质上是客户端-服务器模式,只是在服务器端通过分布式存储、虚拟化等技术提供了诸如IaaS、PaaS、SaaS的高可靠服务。
简单来说:
云计算只是分布式计算的一种特殊形式,它的特色是资源(计算、存储)的租用。
网格,也是分布式计算的一种,不过强调的资源的共享与协作。
『叁』 什么是大数据,看完这篇就明白了
什么是大数据
如果从字面上解释的话,大家很容易想到的可能就是大量的数据,海量的数据。这样的解释确实通俗易懂,但如果用专业知识来描述的话,就是指数据集的大小远远超过了现有普通数据库软件和工具的处理能力的数据。
大数据的特点
海量化
这里指的数据量是从TB到PB级别。在这里顺带给大家科普一下这是什么概念。
MB,全称MByte,计算机中的一种储存单位,含义是“兆字节”。
1MB可储存1024×1024=1048576字节(Byte)。
字节(Byte)是存储容量基本单位,1字节(1Byte)由8个二进制位组成。
位(bit)是计算机存储信息的最小单位,二进制的一个“0”或一个“1”叫一位。
通俗来讲,1MB约等于一张网络通用图片(非高清)的大小。
1GB=1024MB,约等于下载一部电影(非高清)的大小。
1TB=1024GB,约等于一个固态硬盘的容量大小,能存放一个不间断的监控摄像头录像(200MB/个)长达半年左右。
1PB=1024TB,容量相当大,应用于大数据存储设备,如服务器等。
1EB=1024PB,目前还没有单个存储器达到这个容量。
多样化
大数据含有的数据类型复杂,超过80%的数据是非结构化的。而数据类型又分成结构化数据,非结构化数据,半结构化数据。这里再对三种数据类型做一个分类科普。
①结构化数据
结构化的数据是指可以使用关系型数据库(例如:MySQL,Oracle,DB2)表示和存储,表现为二维形式的数据。一般特点是:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。所以,结构化的数据的存储和排列是很有规律的,这对查询和修改等操作很有帮助。
但是,它的扩展性不好。比如,如果字段不固定,利用关系型数据库也是比较困难的,有人会说,需要的时候加个字段就可以了,这样的方法也不是不可以,但在实际运用中每次都进行反复的表结构变更是非常痛苦的,这也容易导致后台接口从数据库取数据出错。你也可以预先设定大量的预备字段,但这样的话,时间一长很容易弄不清除字段和数据的对应状态,即哪个字段保存有哪些数据。
②半结构化数据
半结构化数据是结构化数据的一种形式,它并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层。因此,它也被称为自描述的结构。半结构化数据,属于同一类实体可以有不同的属性,即使他们被组合在一起,这些属性的顺序并不重要。常见的半结构数据有XML和JSON。
③非结构化数据
非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、各类报表、图像和音频/视频信息等等。非结构化数据其格式非常多样,标准也是多样性的,而且在技术上非结构化信息比结构化信息更难标准化和理解。所以存储、检索、发布以及利用需要更加智能化的IT技术,比如海量存储、智能检索、知识挖掘、内容保护、信息的增值开发利用等。
快速化
随着物联网、电子商务、社会化网络的快速发展,全球大数据储量迅猛增长,成为大数据产业发展的基础。根据国际数据公司(IDC)的监测数据显示,2013年全球大数据储量为4.3ZB(相当于47.24亿个1TB容量的移动硬盘),2014年和2015年全球大数据储量分别为6.6ZB和8.6ZB。近几年全球大数据储量的增速每年都保持在40%,2016年甚至达到了87.21%的增长率。2016年和2017年全球大数据储量分别为16.1ZB和21.6ZB,2018年全球大数据储量达到33.0ZB。预测未来几年,全球大数据储量规模也都会保持40%左右的增长率。在数据储量不断增长和应用驱动创新的推动下,大数据产业将会不断丰富商业模式,构建出多层多样的市场格局,具有广阔的发展空间。
核心价值
大数据的核心价值,从业务角度出发,主要有如下的3点:
a.数据辅助决策:为企业提供基础的数据统计报表分析服务。分析师能够轻易获取数据产出分析报告指导产品和运营,产品经理能够通过统计数据完善产品功能和改善用户体验,运营人员可以通过数据发现运营问题并确定运营的策略和方向,管理层可以通过数据掌握公司业务运营状况,从而进行一些战略决策;
b.数据驱动业务:通过数据产品、数据挖掘模型实现企业产品和运营的智能化,从而极大的提高企业的整体效能产出。最常见的应用领域有基于个性化推荐技术的精准营销服务、广告服务、基于模型算法的风控反欺诈服务征信服务,等等。
c.数据对外变现:通过对数据进行精心的包装,对外提供数据服务,从而获得现金收入。市面上比较常见有各大数据公司利用自己掌握的大数据,提供风控查询、验证、反欺诈服务,提供导客、导流、精准营销服务,提供数据开放平台服务,等等。
大数据能做什么?
1、海量数据快速查询(离线)
能够在海量数据的基础上进行快速计算,这里的“快速”是与传统计算方案对比。海量数据背景下,使用传统方案计算可能需要一星期时间。使用大数据 技术计算只需要30分钟。
2.海量数据实时计算(实时)
在海量数据的背景下,对于实时生成的最新数据,需要立刻、马上传递到大数据环境,并立刻、马上进行相关业务指标的分析,并把分析完的结果立刻、马上展示给用户或者领导。
3.海量数据的存储(数据量大,单个大文件)
大数据能够存储海量数据,大数据时代数据量巨大,1TB=1024*1G 约26万首歌(一首歌4M),1PB=1024 * 1024 * 1G约2.68亿首歌(一首歌4M)
大数据能够存储单个大文件。目前市面上最大的单个硬盘大小约为10T左右。若有一个文件20T,将 无法存储。大数据可以存储单个20T文件,甚至更大。
4.数据挖掘(挖掘以前没有发现的有价值的数据)
挖掘前所未有的新的价值点。原始企业内数据无法计算出的结果,使用大数据能够计算出。
挖掘(算法)有价值的数据。在海量数据背景下,使用数据挖掘算法,挖掘有价值的指标(不使用这些算法无法算出)
大数据行业的应用?
1.常见领域
2.智慧城市
3.电信大数据
4.电商大数据
大数据行业前景(国家政策)?
2014年7月23日,国务院常务会议审议通过《企业信息公示暂行条例(草案)》
2015年6月19日,国家大大、总理同时就“大数据”发表意见:《国务院办公厅关于运用大数据加强对市场主体服务和监管的若干意见》
2015年8月31日,国务院印发《促进大数据发展行动纲要》。国发〔2015〕50号
2016年12月18日,工业和信息化部关于印发《大数据产业发展规划》
2018年1月23日。中央全面深化改革领导小组会议审议通过了《科学数据管理办法》
2018年7月1日,国务院办公厅印发《关于运用大数据加强对市场主体服务和监管的若干意见》
2019年政府工作报告中总理指出“深化大数据、人工智能等研发应用,培育新一代信息技术、高端装备、生物医药、新能源汽车、新材料等新兴产业集群,壮大数字经济。”
总结
我国著名的电商之父,阿里巴巴创始人马云先生曾说过,未来10年,乃至20年,将是人工智能的时代,大数据的时代。对于现在正在学习大数据的我们来说,未来对于我们更是充满了各种机遇与挑战。
python学习网,大量的免费python视频教程,欢迎在线学习!
『肆』 大数据,云计算中的海量数据是哪里来的
都是为数据存储和处理服务的;都需要占用大量的存储和计算资源,因而都要用到海量数据存储技术、海量数据管理技术、MapRece等并行处理技术。因此,云计算和大数据是一个硬币的两面,云计算是大数据的 IT 基础,而大数据是云计算的一个杀手级应用。