大数据现象与云计算技术

大数据现象是怎么形成的?

  全球范围内,研究发展大数据技术、运用大数据推动经济发展、完善社会治理、提升政府服务和监管能力正成为趋势。下面将从应用、治理和技术三个方面对当前大数据的现状与趋势进行梳理。

  一是已有众多成功的大数据应用,但就其效果和深度而言,当前大数据应用尚处于初级阶段,根据大数据分析预测未来、指导实践的深层次应用将成为发展重点。

  按照数据开发应用深入程度的不同,可将众多的大数据应用分为三个层次。第一层,描述性分析应用,是指从大数据中总结、抽取相关的信息和知识,帮助人们分析发生了什么,并呈现事物的发展历程。如美国的DOMO公司从其企业客户的各个信息系统中抽取、整合数据,再以统计图表等可视化形式,将数据蕴含的信息推送给不同岗位的业务人员和管理者,帮助其更好地了解企业现状,进而做出判断和决策。第二层,预测性分析应用,是指从大数据中分析事物之间的关联关系、发展模式等,并据此对事物发展的趋势进行预测。如微软公司纽约研究院研究员David Rothschild通过收集和分析赌博市场、好莱坞证券交易所、社交媒体用户发布的帖子等大量公开数据,建立预测模型,对多届奥斯卡奖项的归属进行预测。2014和2015年,均准确预测了奥斯卡共24个奖项中的21个,准确率达87.5%。第三层,指导性分析应用,是指在前两个层次的基础上,分析不同决策将导致的后果,并对决策进行指导和优化。如无人驾驶汽车分析高精度地图数据和海量的激光雷达、摄像头等传感器的实时感知数据,对车辆不同驾驶行为的后果进行预判,并据此指导车辆的自动驾驶。

  当前,在大数据应用的实践中,描述性、预测性分析应用多,决策指导性等更深层次分析应用偏少。一般而言,人们做出决策的流程通常包括:认知现状、预测未来和选择策略这三个基本步骤。这些步骤也对应了上述大数据分析应用的三个不同类型。不同类型的应用意味着人类和计算机在决策流程中不同的分工和协作。例如:第一层次的描述性分析中,计算机仅负责将与现状相关的信息和知识展现给人类专家,而对未来态势的判断及对最优策略的选择仍然由人类专家完成。应用层次越深,计算机承担的任务越多、越复杂,效率提升也越大,价值也越大。然而,随着研究应用的不断深入,人们逐渐意识到前期在大数据分析应用中大放异彩的深度神经网络尚存在基础理论不完善、模型不具可解释性、鲁棒性较差等问题。因此,虽然应用层次最深的决策指导性应用,当前已在人机博弈等非关键性领域取得较好应用效果,但是,在自动驾驶、政府决策、军事指挥、医疗健康等应用价值更高,且与人类生命、财产、发展和安全紧密关联的领域,要真正获得有效应用,仍面临一系列待解决的重大基础理论和核心技术挑战。在此之前,人们还不敢、也不能放手将更多的任务交由计算机大数据分析系统来完成。这也意味着,虽然已有很多成功的大数据应用案例,但还远未达到我们的预期,大数据应用仍处于初级阶段。未来,随着应用领域的拓展、技术的提升、数据共享开放机制的完善,以及产业生态的成熟,具有更大潜在价值的预测性和指导性应用将是发展的重点。

  二是大数据治理体系远未形成,特别是隐私保护、数据安全与数据共享利用效率之间尚存在明显矛盾,成为制约大数据发展的重要短板,各界已经意识到构建大数据治理体系的重要意义,相关的研究与实践将持续加强。

随着大数据作为战略资源的地位日益凸显,人们越来越强烈地意识到制约大数据发展最大的短板之一就是:数据治理体系远未形成,如数据资产地位的确立尚未达成共识,数据的确权、流通和管控面临多重挑战;数据壁垒广泛存在,阻碍了数据的共享和开放;法律法规发展滞后,导致大数据应用存在安全与隐私风险;等等。如此种种因素,制约了数据资源中所蕴含价值的挖掘与转化。

  其中,隐私、安全与共享利用之间的矛盾问题尤为凸显。一方面,数据共享开放的需求十分迫切。近年来人工智能应用取得的重要进展,主要源于对海量、高质量数据资源的分析和挖掘。而对于单一组织机构而言,往往靠自身的积累难以聚集足够的高质量数据。另外,大数据应用的威力,在很多情况下源于对多源数据的综合融合和深度分析,从而获得从不同角度观察、认知事物的全方位视图。而单个系统、组织的数据往往仅包含事物某个片面、局部的信息,因此,只有通过共享开放和数据跨域流通才能建立信息完整的数据集。

新摩尔定律的含义是什么?

  在IT产业里有两个摩尔定律:一个是英特尔创始人戈登·摩尔总结的广为人知的关于芯片性能每18个月倍增的定律,另一个则是由杰弗里·摩尔(Geoffrey Moore)创立的关于技术产品生命周期的定律,这里称为新摩尔定律。后者可能不如前者那么简单、明了,却指导着高科技公司的发展。产品生命周期(product life cycle),亦称“商品生命周期”。是指产品从准备进入市场开始到被淘汰退出市场为止的全部运动过程,是由需求与技术的生产周期所决定。是产品或商品在市场运动中的经济寿命,也即在市场流通过程中,由于消费者的需求变化以及影响市场的其他因素所造成的商品由盛转衰的周期。主要是由消费者的消费方式、消费水平、消费结构和消费心理的变化所决定的。一般分为导入(进入)期、成长期、成熟期(饱和期)、衰退(衰落)期四个阶段。

  摩尔定律原指单位集成电路封装的元件数目增加及单位成本相应下降的趋势随时间发展的一种规律,但在传播过程中出现了很多版本,主要有以下几种:①集成电路芯片上所集成电路的数目每隔18 个月就翻一番;②微处理器的性能每隔18 个月提高一倍,而价格下降一半[5];③IC 芯片上可容纳的晶体管数目每隔约18 个月便会增加一倍,计算机性能也将提升一倍[6]。严格来说,摩尔定律并不是定律,而只是一种观察和推测。经过50 多年的发展,戈登·摩尔认为集成电路技术的发展速度会减慢,摩尔定律可能会逐步退出历史舞台。

  随着信息技术的发展,人们开始将摩尔定律套用到各种指数式发展的技术和产品上,于是安放在吉姆·格雷(Jim Gray)名下的新摩尔定律便横空出世了,即每18 个月全球新增信息量是计算机有史以来全部信息量的总和。吉姆·格雷是当代最杰出的数据库大师,是数据库和交换处理系统领域的领头人,是美国国家工程院院士、美国计算机协会(ACM)院士、微软公司高级研究员,曾获得1994年美国技术研究院大奖,以及号称计算机行业诺贝尔奖的图灵奖(1998 年)[7]。遗憾的是,他在2007 年出海后失踪[8]。与戈登·摩尔专注基础技术半导体工业不同,吉姆·格雷是数据库及处理系统方面的专家,如果他真的提出过关于数据量增长的新摩尔定律,以其背景而言似乎水到渠成,理所当然。然而,笔者认为所谓的吉姆·格雷新摩尔定律的表述有些问题。计算机有史以来全部信息量总和是否为固定值并不明确。如果按固定值来看,以Q 表示计算机有史以来全部信息量总和,那么再过18 个月全球新增信息量f(Δt1)=f(t2) -f(t1)=Q,而36 个月之后f(Δt2)=f(t3) -f(t2)=Q,其总量增速如图2 所示,这是一种减速递增关系,简单计算能得出其倍数将依次为2、1.5、1.33、1.25……。而摩尔定律是一段周期翻一番的2 倍指数倍递增关系(f(Δtn)=Q2n),二者相差甚远。如果计算机有史以来全部信息量总和不是固定值,即也包括了每18 个月的信息量,那么就会造成逻辑混乱。笔者深感困惑,于是追溯相关文献,探究吉姆·格雷是否真的提出过新摩尔定律。全球数据总量飞速增长的趋势已是共识,其增长规律预测的可信度与是否为吉姆·格雷所提出并无直接关系。将全球数据总量指数级的增长规律命名为新摩尔定律无可厚非,但也完全没有必要无中生有地拉吉姆·格雷来为其站台。根据前文提到的相关统计及预测,大数据时代数据总量增长的新摩尔定律应该表述为全球数据总量每3年将翻一番。同样的,这个新摩尔定律也只是一种观察和推测,并不是一个真正的定律,今后完全可以根据数据总量增长的实际情况进行修正。

大数据与云计算的涵义及特点

  目前,大数据伴随着云计算技术的发展,正在对全球经济社会生活产生巨大的影响。大数据、云计算技术给现代审计提供了新的技术和方法,要求审计组织和审计人员把握大数据、云计算技术的内容与特征,促进现代审计技术和方法的进一步发展。

  1、大数据、云计算的涵义与特征

  随着云计算技术的出现,大数据吸引了全世界越来越多的关注。哈佛大学社会学教授加里·金说:“这是一场革命,庞大的数据资源使得各个领域开始了量化进程,无论学术界、商界还是政府,所有领域都将开始这种进程。”

  1.1、大数据的涵义与特征

  “数据”这个词在拉丁文里是“已知”的意思,也可以理解为“事实”。2009年,“大数据”概念才逐渐开始在社会上传播。而“大数据”概念真正变得火爆,却是因为美国奥巴马政府在2012年高调宣布了其“大数据研究和开发计划”。这标志着“大数据”时代真正开始进入社会经济生活中来了。“大数据”或称巨量资料,指的是所涉及的数据量规模大到无法利用现行主流软件工具,在一定的时间内实现收集、分析、处理或转化成为帮助决策者决策的可用信息。互联网数据中心(IDC)认为“大数据”是为了更经济、更有效地从高频率、大容量、不同结构和类型的数据中获取价值而设计的新一代架构和技术,用它来描述和定义信息爆炸时代产生的海量数据,并命名与之相关的技术发展与创新。大数据具有4个特点:第一,数据体量巨大,从TB级别跃升到PB级别。第二,处理速度快,这与传统的数据挖掘技术有着本质的思维的转变,这些转变将改变人们理解和研究社会经济现象的技术和方法。主要表现在以下方面:

  (1)是在大數据时代,不依赖抽样分析,而可以采集和处理事物整体的全部数据。19世纪以来,当面临大的样本量时,人们都主要依靠抽样来分析总体。但是,抽样技术是在数据缺乏和取得数据受限制的条件下不得不采用的一种方法,这其实是一种人为的限制。过去,因为记录、储存和分析数据的工具不够科学,只能收集少量数据进行分析。如今,科学技术条件已经有了很大的提高,虽然人类可以处理的数据依然是有限的,但是可以处理的数据量已经大量增加,而且未来会越来越多。随着大数据分析取代抽样分析,社会科学不再单纯依赖于抽样调查和分析实证数据,现在可以收集过去无法收集到的数据,更重要的是,现在可以不再依赖抽样分析。

  (2)是在大数据时代,不再热衷于追求数据的精确度,而是追求利用数据的效率。当测量事物的能力受限制时,关注的是获取最精确的结果。但是,在大数据时代,追求精确度已经既无必要又不可行,甚至变得不受欢迎。大数据纷繁多样,优劣掺杂,精准度已不再是分析事物总体的主要手段。拥有了大数据,不再需要对一个事物的现象深究,只要掌握事物的大致发展趋势即可,更重要的是追求数据的及时性和使用效率。与依赖于小数据和精确性的时代相比较,大数据更注重数据的完整性和混杂性,帮助人们进一步认识事物的全貌和真相。

  (3)是在大数据时代,人们难以寻求事物直接的因果关系,而是深入认识和利用事物的相关关系。长期以来,寻找因果关系是人类发展过程中形成的传统习惯。寻求因果关系即使很困难且用途不大,但人们无法摆脱认识的传统思维。在大数据时代,人们不必将主要精力放在事物之间因果关系的分析上,而是将主要精力放在寻找事物之间的相关关系上。事物之间的相关关系可能不会准确地告知事物发生的内在原因,但是它会提醒人们事情之间的相互联系。人们可以通过找到一个事物的良好相关关系,帮助其捕捉到事物的现在和预测未来。

  1.2、云计算的涵义与特征

  “云计算”概念产生于谷歌和IBM等大型互联网公司处理海量数据的实践。2006年8月9日,Google首席执行官埃里克·施密特在搜索引擎大会首次提出“云计算”的概念。2007年10月,Google与IBM开始在美国大学校园推广云计算技术的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持。目前全世界关于“云计算”的定义有很多。“云计算”是基于互联网的相关服务的增加、使用和交付模式,是通过互联网来提供动态易扩展且经常是虚拟化的资源。美国国家标准技术研究院2009年关于云计算的定义是:“云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件、服务等),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。”根据这一定义,云计算的特征主要表现为:首先,云计算是一种计算模式,具有时间和网络存储的功能。其次,云计算是一条接入路径,通过广泛接入网络以获取计算能力,通过标准机制进行访问。第三,云计算是一个资源池,云计算服务提供商的计算资源,通过多租户模式为不同用户提供服务,并根据用户的需求动态提供不同的物理的或虚拟的资源。第四,云计算是一系列伸缩技术,在信息化和互联网环境下的计算规模可以快速扩大或缩小,计算能力可以快速、弹性获得。第五,云计算是一项可计量的服务,云计算资源的使用情况可以通过云计算系统检测、控制、计量,以自动控制和优化资源使用。

  2、两者的区别与联系

  大数据的超大容量自然需要容量大,速度快,安全的存储,满足这种要求的存储离不开云计算。高速产生的大数据只有通过云计算的方式才能在可等待的时间内对其进行处理。同时,云计算是提高对大数据的分析与理解能力的一个可行方案。大数据的价值也只有通?过数据挖掘才能从低价值密度的数据中发现其潜在价值,而大数据挖掘技术的实现离不开云计算技术。总之,云计算是大数据处理的核心支撑技术,是大数据挖掘的主流方式。没有互联网,就没有虚拟化技术为核心的云计算技术,没有云计算就没有大数据处理的支撑技术。

什么是云,云计算按照服务类型可以分为哪几类?

  1、什么是云?

  因为企业各自搭建服务中心耗费巨大,于是就出有人想到能不能通过租用的方式,在供应商提供远端的服务器上进行自己的数据存储和计算,事实证明是可行的。而这种在远端提供的基础设施我们就称之为“云”。

  “云”中的资源在用户看来是可以无限扩展的,并且可以随时获取、按需使用、随时扩展和按使用付费。

  理解了“云”之后,云计算就容易理解了,就是一种把计算服务与数据存储作为一种商品进行售卖或者租赁,购买后可以在云端提供服务。

  有了云计算之后,无论是企业还是个人,想要搭建网站或者软件平台,不再需要像以前那样必需有自己的服务器等硬件工具了,完全可以租用云服务器调用云端计算资源等。这样工作会变得比以前方便许多,这就是云计算给我们的生活和工作帶来的便利。

  2、云计算的特点

  云计算的可贵之处在于高灵活性、可扩展性和高性价比等,与传统的网络应用模式相比,其具有如下优势与特点。

  (1)虚拟化技术

  在计算机中,虚拟化(Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以更好地应用这些资源。这些资源的新虚拟部分是不受现有资源的架设方式、地域或物理组态所限制。

  一般需要进行虚拟化的资源是云计算中的计算能力和存储服务。在云计算的应用中,主要包含硬件虚拟化、平台虚拟化和应用程序虚拟化等。

  (2)动态可扩展

  云计算具有高效的运算能力,在原有服务器基础上增加云计算功能可使计算速度迅速提高,最终实现动态扩展虚拟化的层次达到对应用进行扩展的目的。

  (3)按需部署

  计算机包含了许多应用、程序软件等,不同的应用对应的数据资源库不同,云计算平台能够根据用户的需求快速配备计算能力及资源。

  (4)灵活性高

  目前市场上大多数IT资源和软、硬件都支持虚拟化,比如存储网络、操作系统和开发软、硬件等。虚拟化要素统一放在云系统资源虚拟池中进行管理,可见云计算的兼容性非常强,不仅可以兼容低配置机器、不同厂商的硬件产品,还能让外设获得更高性能的计算。

  (5)可靠性高

  服务器故障也不影响计算与应用的正常运行,因为单点服务器出现故障可以通过虚拟化技术将分布在不同物理服务器上面的应用进行恢复或利用动态扩展功能部署新的服务器进行计算。

  (6)性价比高

  将资源放在虚拟资源池中统一管理,在一定程度上优化了物理资源,用户不再需要昂贵、存储空间大的主机,可以选择相对廉价的PC组成云,一方面减少费用,另一方面计算性能不逊于大型主机。

  (7)可扩展性

  用户可以利用应用软件的快速部署条件,更为简单快捷地将自身所需的已有业务以及新业务进行扩展。

  3、云计算服务类型

  虽然都是使用云计算,但不同的用户需要的服务不一样,有些公司可能只需要租借服务器;有些公司可能需要整套服务;有些个人客户可能希望可以通过付费直接得到一个网站。

  所以,根据服务类型的不同,云计算可以分为3类:基础设施即服务、平台即服务和软件即服务。因为它们构成了层叠的关系,这3种云计算服务,有时又被成为云计算堆栈。

阐述云计算技术体系结构?

  1、引 言 

  近些年来,随着互联网技术的逐渐成熟,该技术已经在全国范围内推广开来, 深入应用到各行各业的发展以及人们的正常生活中,新一代大规模的互联网应用正在快速的发展。也正是在其快速增长的业务需求下以及对数据储存量有着更高要求的发展前提下,云计算的构想由此而生,所谓云计算就是利用互联网实现对资源的真正共享, 属于一种特殊的计算机模式。在云计算的发展中,计算机的资源化服务是其独特的网络表现形式,在实际使用中能够为用户有效的屏蔽数据中心管理、大规模数据处理、应用程序部署等问题,能够提高对数据资源的利用率。除此之外,通过云计算用户可以根据具体的业务负载来快速实现资源的释放, 在提高服务质量的同时还大大降低的运维成本。

  2、云计算的体系构架 

  在现阶段的发展中, 云计算的体系构架主要是由三个层级做组成的,分别是核心服务层、服务管理层以及用户访问接口,其中核心服务层是整个云计算中的核心组成部分,也是云计算主要功能的体现, 通过核心服务层能够实现对系统硬件和软件的有效整合,能够形成一个统一的整体,这些功能除了能够满足系统外部的服务需求,还能够使核心服务的可靠性、安全性和稳定性得到保障,下面就对云计算中的三个主要层级进行详细的分析: 

  2.1 核心服务层 

  核心服务层是整个云计算体系构架的核心部分, 在云计算运用中起着非常重要的作用, 而核心服务层主要是由基础设施和平台、软件等三个部分组成。其中基础设施在整个核心服务层中的作用就是能够提供基本的硬件设施部署服务,并且能够在一定程度上保证基础硬件设施运行的稳定性和可靠性, 这些硬件整合运行所完成的功能就是实现信息的存储和资源的共享。平台在整个核心服务层中算是云计算的底层支撑,只有构建了一个科学、完善的平台,相关的应用才能够在平台上实现运行,才能够给用户提供一个稳定的、可开发的基础平台。软件则是整个核心服务层中最容易去理解的一部分,就是在云计算的基础平台上, 根据用户的实际需求开发一些新的应用软件,使整个云计算体系的功能更加的全面。除此之外,该软件还能够直接提供给企业进行使用,并且在这个过程中企业不用去考虑服务器的管理和维护问题。总的来说,企业在软件使用的过程中将个人电脑桌面的应用软件转移到了云端,以此来实现远程的无限制访问。

   2.2 服务管理层

  通过服务管理层能够实现对系统运行的监督和管理,并能够在一定程度上确保系统运行的可靠性和稳定性。在使用云计算服务之前, 通常情况下需要和一些运用的超级用户之间签订服务协议, 由云计算体系中的服务管理层来对整个过程的服务质量进行监督, 更重要的是能够在最大限度上使数据运行的安全性得到保障。在当前阶段大的发展中,由于网络信息技术的迅速发展, 信息安全已经成为了现阶段网络信息技术发展中的最大难题,因此在使用网络信息技术的同时,也对信息的安全性有着一定的担忧, 如何能够在信息使用的前提下, 使信息的安全性得到保障是现阶段信息技术发展需要研究的问题。而云计算系统的运用能够在一定程度上提高信息使用的安全性, 因为云计算的服务管理层在实际应用的过程中会使系统存在着单点失效的问题, 这样就能够在一定程度上避免数据中心关键数据的泄漏。 

  2.3 用户访问接口层 

  用户访问接口层的主要作用就是实现用户从用户端到云端访问的一个操作过程, 在现阶段中最常见的用户访问接口有 Web 接口。

  3、云计算的关键技术 

  云计算系统的出现就是为了向互联网用户提供低成本、高可靠性的个性化网络服务,因此在现阶段中,很多人都加强了对云计算系统构架的研究力度, 在云计算系统构架的过程中涉及到得到技术非常多, 下面就来对云计算中的一些关键技术进行详细的分析:

  3.1 数据中心相关技术

  数据中心是整个云计算中最核心、最重要的部分,相当于整个云计算的大脑,是整个云计算系统的核心部分,数据中心的稳定对整个云计算系统的正常运行都有着非常重要的作用和意义。数据中心在实际运行中有自治性、规模经济性和可扩展性三个特点。数据中心技术一般可以运用在新型网络拓扑方式的研究中, 能够以更低的成本和更加可靠的方式来实现对计算机节点的大规模连接, 也符合当前阶段节能环保的发展主题,能够应用于更加节能环保的技术的研究上,使设备的能耗得到有效的降低, 并且对环境保护来说也有着非常重要的意义。

  3.2 虚拟化技术 

  在现阶段的发展中,由于虚拟化技术本身具有资源分享、定制以及细粒度资源管理的特点, 在计算机网络技术的发展中得到了大规模的研究应用。虚拟化技术主要包括有虚拟机快速部署技术和虚拟化在线迁移技术, 这两项技术是虚拟技术中的关键技术,其中虚拟机快速部署技术包含创建虚拟机、安装操作系统、程序、主机配置等四个操作流程,而虚拟机在线迁移技术则能够在一定程度上提高系统运行的可靠性,能够起到负载均衡以及节能方案设计的重要作用。

  3.3 资源管理与调度技术 

  云计算平台有着非常庞大的数据交互以及海量的数据存储和处理, 因此在一定程度上给云计算平台的管理工作带来了非常大的难度, 如何对云计算平台进行科学的资源管理和调度是当前阶段需要得到重视的问题。因此在现阶段中加强对资源的有效管理和调度技术的研究是云计算系统能够长期处于一个稳定运行状态的关键所在。资源管理与调度技术主要包括有可以降低数据丢失风险和优化作业时间的副本管理技术, 这样就能够在最大限度上去减少任务的执行时间并对任务调度算法的性能进行优化。

  3.4 服务质量保证机制 

  云计算从产生到被用户大规模的接受并使用, 最根本的原因就是云计算的服务质量有着很好的保障, 服务质量主要是由云计算系统的服务管理保障机制来对其进行监督管理的,因此在云计算系统实际运行的过程中,要重视对服务质量保证机制的建设和完善, 要能够根据实际需求和发展情况来对服务质量保证机制进行不断的完善, 将整个机制体系贯穿于整个云计算系统的两层,以此来最大化的保证服务质量。

  3.5 安全与隐私保护

  在整个网络信息技术的发展中,最大的问题就是信息安全问题和隐私保护问题,也是当前阶段计算机网络技术的发展难题。目前,在整个计算机网络中仍然存在着非常多的信息安全隐患,这是一个需要引起我们重视的问题,安全与隐私保护一直都是网络信息技术的研究热点,只有在每一次层级系统上都有着高强度的安全保护,使用户的信息安全得到保障,才能够推进云计算系统的广泛使用。

  4、云计算的机遇和挑战 

  云计算有着非常广阔大的发展前景,在未来将会在各行各业的发展中占据着非常重要的地位,在未来的发展中云计算会面临非常多的机遇也有着非常严峻的挑战,大体可以归纳为以下几点:①加强云计算与移动互联网技术的结合力度;②云计算与科学研究之间会有着紧密的联系;③端口到云的海量数据传输;④对云计算技术进行大规模的调节个部署。

在性价比上云计算相比传统技术为什么有压倒性的优势?

  0、引言

  随着时代的发展,社会的进步,互联网信息技术水平的提高,社会各行各业在开展自身运行和管理活动的过程当中需要涉及的方面更加多样化。云计算技术的出现为社会各行各业开展管理活动提供了更多的机遇,同时也使其面临了相应的挑战。在这样的时代背景之下,社会各行各业应当能够充分利用先进的互联网信息技术来提高自身开展管理活动的效率和水平。云计算技术不仅可以为社会各行各业提供信息化建设便利渠道,同时也可以保证信息安全性。因此,社会各行各业有关部门及相关负责人员应当着力将云计算引入自身管理活动开展过程当中,提高管理效率和质量,完善管理制度[1]。

  1、新时代云计算技术应用的优势

  1.1 维护网络信息安全

  基于云计算技术的网络安全的运行原理是由不同节点各自担任数据记录任务,彼此之间相互传递数据,从而形成数据量庞大而准确的数据记录。在进行数据传递的过程当中,下一个节点会对上一个节点所传递的数据的真实性加以检验,因此在这一过程当中,数据造假等行为是难以出现的。这样一来,既保障了数据传递的效率,同时也保证了传递数据的真实准确性。在这一过程当中,数据信息不断加以积累,形成严密而丰富的数据信息库,那么在开展网络沟通等活动时就可以有所依据。因此,综合以上情况来看,基于云计算技术在网络运行过程当中的应用可以有效维护网络信息安全,为网络运行提供可靠的信息资源保障[2]。

  1.2 去中心化

  基于云计算技术的应用及系统构建则是由独立的不同节点构成,这区别于传统的中心化网络构建模式,具有去中心化的特征。在这种特征前提之下,互联网信息技术及系统构成当中的每一个节点都是平等的。并且每一不同节点都对应着一定的数据记录和传输任务。在此基础上形成节点与节点之间的共同协作,完成整个网络系统的运行。当然,在这种工作模式之下,当其中某一节点受到损坏不能正常运行和完成相应的数据记录和传输任务时,则有其他节点可以直接代替,从而不会影响整个网络系统的正常运行。综合以上特点和情况来看,云计算技术所具有的去中心化特征作为一种优势,有利于保障网络运行的效率[3]。

  2、将云计算技术有效应用于社会各行各业管理活动当中的前提条件

  2.1 提供完备的基础设施和网络技术支持

  正如我们上述所说,将云计算技术有效应用于社会各行各业管理活动开展过程当中需要完备的基础设施以及先进的网络技术的支持。因此,社会各行各业有关部门及相关负责人员应当设置一定的经费预算给予其充足的资金支持。云计算技术在管理活动开展过程中的有效应用,需要充足的网速以及科学合理的网络系统的有效支持,社会各行各业相关负责人员应当在对社会各行各业内部以及周边环境网络设置状况加以确切测定的基础之上,请专业人士对网络系统加以合理设置。并且,在宽带的设置以及网速的保证方面给予充分的重视。

  2.2 维护网络环境安全运行

  为了减少甚至避免社会各行各业管理活动开展过程当中出现故障以及其对于人们的网络个人信息的不必要泄露,需要在提高云计算技术服务于社会各行各业管理活动开展效率的同时,对网络运行环境安全加以有效维护。一方面,在对云计算技术所需要应用的网络系统加以设置时,就需要融入一定的密码保护等网络安全维护方式。同时,社会各行各业内部以及外部环境在利用云计算技术开展管理活动时。各自的网络系统之间应当是相互独立的,即利用不同的网络节点来记录和传递个人网络信息及企业数据信息。另一方面,需要在云计算网络系统当中融入必要的信息保护和网络安全维护措施。为此,可以在其中设置一定的检测系统,当个人信息发生泄露或者说有外部网络技术入侵时,则会出现一定的警示标志来提醒相关人员需要对网络系统加以重新测定,并且剔除入侵对象。另外建立独立的数据库来储备个人信息,以防当云计算网络系统运行过程当中出现故障时,造成不必要的数据丢失[4]。

  3、新时代云计算技术应用的具体表现

  3.1 工会管理信息化

  在构建新时期工会信息化管理模式的过程当中,应当充分利用互联网信息技术构建起属于企业内部工会的以及内部员工的数据信息库。正如我们上述所述,在市场经济迅速发展的时代大背景之下,企业经营和工会管理的革新速度不断加快,因此应当利用数据信息库来对工会管理状况以及员工工作成效加以实施监控和调整,以便于企业可以在此基础上,对信息库内的数据进行合理分析,来及时调整自身的经营和管理策略以不断的适应市场经济的发展。除此之外,可以将数据信息库与专人负责制度以及监督制度相结合。将工会成员以及其他员工的工作状况以数据分析的形式录入其中。以此来监督员工以及工会管理人员的工作状况,督促他们不断地改进工作方法,提高自身工作效率。

  3.2 图书馆管理信息化

  为实现图书馆管理信息化,要建立起完善的图书管理信息化建设体制机制。对图书馆藏书资源进行整合利用,充分发挥其对学习活动的促进作用是进行图书管理信息化建设的根本立足点。因此,要建立、使用科学高效的图书管理系统,对图书馆资源进行整合,建立完善的图书数据库以及全国性乃至全球性的图书信息服务平台,实现各数据库之间的联系和统筹利用[5]。将图书管理和互联网信息技术充分结合起来,利用互联网信息技术帮助相关人员提高阅读效率和学习效率。图书管理人员工作制度也是图书管理信息化建设体制机制的一个重要方面。因此,要确立起完善的工作人员管理制度,包括责任制度、监督制度以及奖惩制度。即使得相关工作人员都能够各司其职,完成自己的工作任务和内容,同时也要互相监督,避免出现徇私舞弊等为个人不当利益破坏集体权益的行为,共同提高工作效率,维护工作活动开展的公平性。并搭配以奖惩机制,对于工作积极,工作效率较高的人员进行给予肯定和奖励,而对于工作效率超差的人员和行为进行批评和惩罚,以此来激发工作人员的积极性。

  3.3 教育发展信息化

  随着我国教育事业的不断向前发展,其对于教育教学活动开展的所有利用的基础设施和科学技术提出了更高的要求。因此,为了推动教育事业的进一步发展,可以充分利用云计算技术,推动教育信息化发展。具体来讲,在组织大型考试时,可以利用云计算技术对考生信息加以统计。同时进入考场的检测设备也应当与云计算技术的数据统计信息为依据。在判卷的过程当中,由于考生考卷数量巨大,仅仅依靠教师人工判卷可能会影响判卷的效率和正确程度。那么则可以将先进的云计算技术应用其中,实行网上判卷。并且利用云计算技术对考生答题情况进行归纳总结,从而为教师后续讲解活动的展开提供相应的依据。在这一过程当中,就需要相关教师能够在革新理念的前提之下,自觉学习利用先进的云计算技术[6]。

  立足于目前我国云计算技术发展及应用的具体情况来看,各行各企业已经在对其提起充分重视的前提之下根据自身企业发展状况及需要采取了有针对性的举措将云计算技术高效应用于自身企业运行和发展过程当中。云计算技术应用的行业领域及企业运营方面更加多样化。但是,其在发展和应用过程当中依旧显露出一定的不足之处和需要进一步提升的地方。然而,这更加说明我国云计算技术发展及应用有着更加广阔的发展前景和更加美好的发展未来。当然,这需要我们每一个人的共同努力。希望以科技研发人员为主的广大人民群众可以积极主动地为云计算技术的发展及应用水平的提高做出自己的一份贡献。相信在不久的未来,在广大人民群众的共同努力之下,我国云计算技术发展和应用水平可以得到进一步提高,从而为我国企业运营水平的提高做出更加重要的一份贡献。同时,进一步推动我国国民经济的发展及科学技术发展水平的提高。进而提高我国综合国力和国际竞争力。

Google云计算技术GFS系统架构及设计要点

  一、GFS设计思路

  1.组件/机器失效

  GFS包括几百甚至几千台普通的廉价设备组装的存储机器,同时被相当数量的客户机访问。GFS组件的数量和质量导致在事实上,任何给定时间内都有可能发生某些组件无法工作,某些组件无法从它们目前的失效状态中恢复。例如谷歌遇到过各种各样的问题,比如应用程序bug、操作系统的bug、人为失误,甚至还有硬盘、内存、连接器、网络以及电源失效等造成的问题。所以,持续的监控、错误侦测、灾难冗余以及自动恢复的机制必须集成在GFS中。

  2.谷歌处理的文件都非常巨大。(大数据):

  这点跟NEFS的场景既有相似性又不完全一致,NEFS上层对接的是NOS对象存储,基本都是大量的小文件(100MB以下),总体量比较大,对象个数比較多,因此也需要考虑元数据管理的成本,因此NEFS采用了小文件合并的设计思路(不详细展开)。

  谷歌系统中数GB的文件非常普遍。每个文件通常都包含许多应用程序对象,比如web文档。当我们经常需要处理快速增长的、并且由数亿个对象构成的、数以TB的数据集时,采用管理数亿个KB大小的小文件的方式是非常不明智的,尽管有些文件系统支持这样的管理方式。因此,设计的假设条件和参数,比如I/O操作和Block的尺寸都需要重新考虑。

  3.绝大部分文件的修改是采用在文件尾部追加数据,而不是覆盖原有数据的方式。(读写模型:顺序写,大部分顺序读,小部分随机读):

  对文件的随机写入操作在实际中几乎不存在。一旦写完之后,对文件的操作就只有读,而且通常是按顺序读。大量的数据符合这些特性,比如:数据分析程序扫描的超大的数据集;正在运行的应用程序生成的连续的数据流;存档的数据;由一台机器生成、另外一台机器处理的中间数据,这些中间数据的处理可能是同时进行的、也可能是后续才处理的。对于这种针对海量文件的访问模式,客户端对数据块缓存是没有意义的,数据的追加操作是性能优化和原子性保证的主要考量因素。

  4.应用程序和文件系统API协同设计,简化对GFS的要求(灵活性):

例如一致性模型要求放松了,这样就减轻了文件系统对应用程序的苛刻要求,大大简化了GFS的设计。并且引入了原子性的记录追加操作,从而保证多个客户端能够同时进行追加操作,不需要额外的同步操作来保证数据的一致性。

  二、GFS接口:

  GFS提供了一套类似传统文件系统的API接口函数,文件以分层目录的形式组织,用路径名来标识。GFS支持常用的操作,如创建新文件、删除文件、打开文件、关闭文件、读和写文件。但是要理解一点:文件块被存储在linux硬盘上,GFS只是一个管理器而已,这些文件操作API也只是个对这些抽象文件的管理而已。也就是说GFS层级比底层文件系统以及虚拟文件系统层次要高。注:这点跟NEFS也比较像,NEFS也是对文件粒度进行管理的,而不是针对块设备,因此也是在底层文件系统及虚拟文件系统之上。

  三、GFS设计要点:

  (1)chunk机制

  chunk是GFS中管理数据的最小单元(数据块),每一个chunk被一个64位的handle唯一标识,chunk被当做普通的文件存储在linux系统中。每个chunk至少会在另一个chunkserver上有备份,而默认会为每个chunk做三个备份。chunk大小默认为64MB,比一般的文件系统的4kb的块要大的多得多。Chunkserver一般不会缓存数据,因为chunk都是存储在本地,故而linux已经将经常被访问的数据缓存在内存中了。

  chunk块设置比较大(一般文件系统的块为4kb)的优缺点如下:

  优点:

  1.减少元数据量,方便客户端预读缓存(filename+chunkindex->chunkhandle+chunkserverlocation),减少客户端访问的次数,减少master负载。

  2.减少元数据量,master可以将元数据放在内存中。

  3.客户端取一次元数据就能读到更多数据,减少客户端访问不同chunkserver建立tcp连接的次数,从而减少网络负载。

  缺点:

  1.对于小文件的场景,容易产生数据碎片。

  2.小文件占用chunk少,对小文件频繁访问会集中在少数chunkserver上,从而产生小文件访问热点(这个问题在后续的可靠性篇章中有相关的解决方案)。

  (2)元数据管理

  系统中三种元数据类型:·文件和chunk的名称(命名空间)。文件和chunk之间的映射关系,比如说每个文件是由哪些chunk共同组成。每个chunk备份的位置。命名空间、文件和Chunk的对应关系的存储方式:内存:真实数据;磁盘:定期Checkpoint(压缩B树)和上次CheckPoint后的操作日志;多机备份:Checkpoint文件和操作日志。Chunk位置信息的存储方式:内存:真实数据磁盘:不持久存储系统启动和新Chunk服务器加入时从Chunk服务器获取。避免了Master与ChunkServer之间的数据同步,只有Chunk服务器才能最终确定Chunk是否在它的硬盘上。

  (3)Master单一性

  单一的Master节点的策略大大简化了FGS的设计。单一的Master节点可以通过全局的信息精确定位Chunk的位置以及进行复制决策。针对master宕机的处理和恢复在后续的高可用篇中详细介绍。

  (4)操作日志

  操作日志包含了关键的元数据变更历史记录。这对GFS非常重要。这不仅仅是因为操作日志是元数据唯一的持久化存储记录,它也作为判断同步操作顺序的逻辑时间基线。文件和Chunk,连同它们的版本(可以看做是更新次数,以判断chunk是否过期,低版本的认为过期),都由它们创建的逻辑时间唯一的、永久的标识。操作日志和chunk数据一样,都需要复制到多台机器,使用多副本保存。

  租约(lease)机制主要是为了保持多个副本间变更顺序一致性的。Master节点为Chunk的一个副本建立一个租约,我们把这个副本叫做主Chunk。主Chunk对Chunk的所有更改操作进行序列化。所有的副本都遵从这个序列进行修改操作。因此,修改操作全局的顺序首先由Master节点选择的租约的顺序决定,然后由租约中主Chunk分配的序列号决定。设计租约机制的目的是为了最小化Master节点的管理负担。租约的初始超时设置为60秒。不过,只Chunk被修改了,主Chunk就可以申请更长的租期,通常会得到Master节点的确认并收到租约延长的时间。这些租约延长请求和批准的信息通常都是附加在Master节点和Chunk服务器之间的心跳消息中来传递。有时Master节点会试图提前取消租约(例如,Master节点想取消在一个已经被改名的文件上的修改操作)。即使Master節点和主Chunk失去联系,它仍然可以安全地在旧的租约到期后和另外一个Chunk副本签订新的租约。写入流程如下,例如有1个主副本,2个从副本的情况:

  客户机向Master节点询问哪一个Chunk服务器持有当前的租约,以及其它副本的位置。如果没有一个Chunk持有租约,Master节点就选择其中一个副本建立一个租约(这个步骤在图上没有显示)。Master节点将主Chunk的标识符以及其它副本(又称为secondary副本、二级副本)的位置返回给客户机。客户机缓存这些数据以便后续的操作。只有在主Chunk不可用,或者主Chunk回复信息表明它已不再持有租约的时候,客户机才需要重新跟Master节点联系。

  客户机把数据推送到所有的副本上。客户机可以以任意的顺序推送数据。Chunk服务器接收到数据并保存在它的内部LRU缓存中,一直到数据被使用或者过期交换出去。由于数据流的网络传输负载非常高,通过分离数据流和控制流,我们可以基于网络拓扑情况对数据流进行规划,提高系统性能,而不用去理会哪个Chunk服务器保存了主Chunk。

  (1)当所有的副本都确认接收到了数据,客户机发送写请求到主Chunk服务器。这个请求标识了早前推送到所有副本的数据。主Chunk为接收到的所有操作分配连续的序列号,这些操作可能来自不同的客户机,序列号保证了操作顺序执行。它以序列号的顺序把操作应用到它自己的本地状态中(也就是在本地执行这些操作,这句话按字面翻译有点费解,也许应该翻译为“它顺序执行这些操作,并更新自己的状态”)。

  (2)主Chunk把写请求传递到所有的二级副本。每个二级副本依照主Chunk分配的序列号以相同的顺序执行这些操作。

  (3)所有的二级副本回复主Chunk,它们已经完成了操作。

  (4)主Chunk服务器(即主Chunk所在的Chunk服务器)回复客户机。

  任何副本产生的任何错误都会返回给客户机。在出现错误的情况下,写入操作可能在主Chunk和一些二级副本执行成功。(如果操作在主Chunk上失败了,操作就不会被分配序列号,也不会被传递。)客户端的请求被确认为失败,被修改的region处于不一致的状态。我们的客户机代码通过重复执行失败的操作来处理这样的错误。

  在从头开始重复执行之前,客户机会先从步骤(3)到步骤(7)做几次尝试。如果应用程序一次写入的数据量很大,或者数据跨越了多个Chunk,GFS客户端代码会把它们分成多个写操作。这些操作都遵循前面描述的控制流程,但是可能会被其它客户机上同时进行的操作打断或者覆盖。因此,共享的文件region的尾部可能包含来自不同客户机的数据片段,尽管如此,由于这些分解后的写入操作在所有的副本上都以相同的顺序执行完成,Chunk的所有副本都是一致的。这使文件region处于上一节描述的一致的、但是未定义的状态。读取流程可以再看一下设计架构图中的conrol和data流。

  (1)GFSclient将服务所要读取的文件名与byteoffset,根据系统chunk大小,换算成文件的chunkindex,即文件数据所处的第几个chunk。

  (2)将filename与chunkindex传给master。

  (3)Master返回给client元数据信息(包含chunkhandle与实际存储的chunkserverlocation)。然后client获取到该信息,作为key值与filename+chunkindex缓存起来。

  (4)Client根据这些元数据信息,直接对chunkserver发出读请求。对于三副本而言(一份chunk存储在三台不同的chunkserver),client选择离自己最近的chunkserver(网络?),通过之前获取的元数据信息找到需要读的chunk位置以及下一个chunk位置。如果缓存的元数据信息已过期,则需要重新向master去获取一遍。

  (5)Chunkserver返回给client要读的数据信息。

  四、GFS设计架构:

  使用论文中的原图如下:如图所示,GFS主要由以下三个系统模块组成:Master:管理元数据、整体协调系统活动。·ChunkServer:存储维护数据块(Chunk),读写文件数据。·Client:向Master请求元数据,并根据元数据访问对应ChunkServer的Chunk。

“阐述分布式”存储结构研究内容

  1、“分布式”存储的分类

  (1)基础架构服务(IaaS):指由供应商提供的硬件资源服务,用户使用租用的方式从供应商处获取硬件资源完成自己的应用部署,用户不需要购买硬件设备,而节省相关费用。而对硬件资源的虚拟化是基础架构服务的关键技术,它包括对服务器、存储以及网络的虚拟化。

  (2)软件服务(SaaS):软件服务是指供应商提供软件平台,并负责安装、升级和维护[1],用户只需通过网络来租用软件即可。这种方式在服务器性能较高的情况下,基本能够实现对所有软件的虚拟化。

  (3)平台服务(PaaS):PaaS是对SaaS的进一步深化,PaaS不仅提供软件应用服务,还提供开发环境、数据库等,为用户提供一个可以自己开发应用程序的软硬件资源平台,在平台上用户开发完成自己的程序后可以通过服务器发布在网络上。

  2、存储设备的常见连接方式

  2.1 直接连接存储(DAS)

  DAS作为一种存储结构,是以服务器为中心的,其他的存储设备通过I/O总线与服务器连接,客户端要想对数据进行访问,必须经过服务器的转发,再利用I/O总线从相应的存储设备中得到。DAS本身是硬件的堆叠,以服务器为中心,并寄生在服务器或客户端上,其速度受到客户连接数的影响。

  2.2 网络连接存储(NAS)

  NAS不是基于“数据块”级的,而是基于“文件”级的以数据为中心的存储结构[2]。NAS是将软硬件有机结合,通过其自身的简化实时操作系统直接向网络上的用户提供文件级共享服务的存储设备。但在实际应用中NAS文件访问速度较低,进行数据备份时,对LAN的带宽消耗极大,对资源的整合和管理较弱。

  2.3 存储区域网络存储(SAN)

  SAN是以光纤网为中心[3],在服务器和存储系统之间,在Fibre Channe1等互联协议的作用下,直接进行数据传递的存储网络系统。SAN的应用服务器和存储设备间的数据交换,主要使用Block I/0方式。SAN主要有两种类型:分为FC SAN和IP SAN。

  3、网络文件系统与分布式文件系统

  在分布式文件系统中,最早形成的就是网络文件系统,它将存储服务器和网络客户端连接,存储服务器当中存放元数据和网络数据,使用增加协议栈方式实现数据和命令的传递。常用的网络文件系统有NFS、CIFS等。

  在NFS上可以实现异构系统间的文件共享。同时NFS使用的是客户机/服务器模型,使它在局域网或广域网上都可以运行。但是,当面临海量数据的处理时,处理能力是有限的。

  常见的分布式文件系统主要有下面几类。

  (1)基于共享存储设备的集群文件系统。

  所谓基于共享存储设备的集群文件系统,重点是对存储设备的共享。在集群中,像SAN、NAS这样的存储设备将其存储空间共享给所有服务器,所有服务器共同使用存储设备上的同一个分区,这样一来,当集群中的节点访问系统时,就如同访问本地文件系统一样。而在集群中还设置了统一的调度和锁存机制,为服务器提供统一的命名空间。

  基于共享存储设备的集群文件系统,有一个共同的特性,那就是都对共享存储设备有极强的依赖性,这就对存储设备的性能提出了较高的要求,同时也受到存储设备性能的限制,这种集群文件系统下,节点自身的存储资源无法被充分利用。

  (2)P2P。

  P2P是一种对等的分布式网络,在P2P网络中,参与者之间实现部分硬件资源的共享,通过网络来提供服务和内容,对等点之间不需要服务器,而直接能够互访[4]。在此网络中,节点既提供资源又使用资源,也就是说每个节点既是服务器也是客户机。因此,P2P这种对等的分布式网络打破了传统的C/S模式。

  常见的P2P网络一般可分为3类[5]。

  ①集中目录式结构:在这种结构当中要设置一个中心服务器,它的主要作用是提供网络中必要的服务,比如索引和路由、安全检验等。中心服务器协助网络中两节点完成连接后,将不再起作用,而节点间可以跨过服务器直接通讯。其优点是:网络结构简单,通过中心索引服务器便于节点管理。缺点是:对中心服务器依赖性强,网络环境受其性能限制。

  ②分散式结构:在这种结构里没有中心服务器,节点间分散连接,通过对等网络协议形成网络,用户自定义自己的网络环境。优点是:网络规模理论上可以无限扩展。缺点是:没有管理者,安全性较差,节点很难被发现。

  ③混合式结构:在集中目录式结构基础上引入了超级节点,它的作用是辅助服务器对节点进行管理,减轻中心服务器的压力。这种结构在提高了网络的稳定性和可扩展性的同时也增加了网络管理的难度。

  (3)Google GFS。

  GFS是美国谷歌公司开发的分布式文件系统,主要是为了解决海量数据存储问题而研发设计的。GFS对运行环境要求不高,它可以通过廉价的普通PC为用户提供高性能的服务,同时它还有极强的容错功能。GFS与传统的分布式文件系统相比,在继承了传统的分布式文件系统优点的同时又对其做了创造性的改进,具体表现在如下几方面。

  ①GFS认为硬件错误是正常的,关键是在硬件出现故障时怎样保证数据存储的安全,同时还能提供不间断的存储服务。这是GFS最核心的问题。

  ②GFS最终的设计目的就是为了解决海量数据的存储。

  ③在GFS中,以重新写入的方式修改文件,不是覆盖原数据。

  ④GFS向应用程序提供透明的访问接口,在访问文件系统时无需重新编译。

  由于GFS没有开源,通过国内外相关的文献综述我们了解到,GFS集群采用Master/Slave结构,部署在普通PC机上。集群当中有一个Master节点和多个Chunk节点,GFS的工作过程是这样的,对于要存储到他上面的文件,GFS首先要把它分解成一样大小的Chunk,然后通过Master给每一个Chunk分配一个唯一标识,通过本地服务器将每一个Chunk保存到本地硬盘并根据Chunk的标识和大小来进行读写操作。为了保证安全性,每个Chunk都会被复制到不同的数据块服務器,一般情况下要复制三份,用户也可以根据实际情况更改配置文件。在Master节点上存储管理的是文件系统的元数据信息,元数据信息主要有命名空间、文件和Chunk的对应关系、Chunk的存储位置等。除此之外,Master还要实现对元数据的检查、操作日志记录以及回放功能。工作机在Master的指挥下完成对数据的存储、迁移和计算工作。在这种结构中,Master机器工作极为繁重,且只有一台机器,留下了单点隐患。

阐述MapReduce并行计算模式

  近几年来,随着计算机和信息技术的迅猛发展和普及应用,行业应用系统的规模迅速扩大,行业应用所产生的数据呈爆炸性增长。动辄达到数百TB甚至数十至数百PB规模的行业/企业大数据己远远超出了传统的计算技术和信息系统的处理能力,因此,寻求有效的大数据处理技术、方法和手段已经成为全世界的广泛关注的研究热点。

  MapReduce最早是由Google公司研究提出的一种面向大规模数据处理的并行计算模型和方法。2003年和2004年,Google公司在国际会议上分别发表了两篇关于Google分布式文件系统和MapReduce的论文,公布了Google的GFS和MapReduce的基本原理和主要设计思想:MapReduce对具有简单数据关系、易于划分的大规模数据采用“分而治之”的并行处理思想;然后将大量重复的数据记录处理过程总结成Map和Reduce两个抽象的操作;最后MapReduce提供了一个统一的并行计算框架,把并行计算所涉及到的诸多系统层细节都交给计算框架去完成,以此大大简化了程序员进行并行化程序设计的负担。目前,MapReduce的简单易用性使其成为目前大数据处理最成功的主流并行计算模式。本文对近年来MapReduce并行计算模式性能优化研究进展做出简要介绍。

  1、面向新型硬件的性能优化

  MapReduce在最初推出时将更多的焦点放在了工作节点之间的高层次并行,而忽略了对于多核或者GPU等新型硬件的具有针对性的优化处理。为了克服MapReduce的缺陷,相关的人员不断进行研究创新,进而提出了Phoenix。至此之后,诸多的学者针对Phoenix进行了大量的研究,例如,Yoo、Romano和Kozyrakis以UltraSPARC处理器为基础针对MapReduce进行了性能改善,改善的方面包括算法、实现和OS接口等。Rafique等、Linderman等则分析了MapReduce在不对称的多核集群和异构多核集群方面面临的挑战,并且针对这些挑战提出了应对的办法。在此基础上,为了进一步改善计算能力,诸多学者对计算模式也进行了大量的研究,研究的方向主要包括改善迭代能力、提高调度效率、改善流水线处理以及增加索引等。

  2、面向流处理的性能优化

  大数据环境中,数据流的特点是数据所拥有的价值与其时效存在密切的联系,随着時间的延长,数据所具有的价值也会随之降低,这就意味着在改善数据流系统时需要将低延迟作为遵循的首要原则。传统的MapReduce数据流处理手段主要将没有任何边界的数据流分割成相对较小的而且具有明显边界的批处理集,然后采用批处理方式对数据进行挖掘研究。这种方式存在着一定的局限性,会产生很多不是十分重要的磁盘和网络I/O,这样就不能达到流式应用对于实时性的需求。

  为了进一步改善流处理模式的性能,很多学者尝试将MapReduce模型和具有代表性的数据流系统进行融合,进而产生效率更高的处理框架。Kumar等以IBM的System数据流处理中间件为载体,对MapReduce模型进行了改善,进而研发了DEDUCE系统,该系统的优势在于可以在同一时间进行数据的批量和流处理。C-MR则将滑动窗口理念融合到MapReduce模型中,进而保证数据流能够在不间断的情况下持续进行,这种改善方法的缺陷在与这种方式仅仅适用于具有多核的单机系统。

  3、面向图数据的性能优化

  社交网络、Web链接关系图等都包含大量具有复杂关系的图数据,这些图数据规模很大,常常达到数十亿的顶点和上万亿的边数,传统的MapReduce计算模式处理这种具有复杂数据关系的图数据通常不能适应,需要采用专用图并行计算模型则将图计算所具有基础特点考虑在内,即该种处理模式的内部就已经具备了专门针对大图的处理机制。图数据处理主要解决大规模数据的分布式存储管理问题。由于图数据具有很强的数据关系,分布式环境中的图计算网络通信的成本很高,解决这一问题的方式是图划分,传统的图划分方式包括ParMetis等,近年来很多学者开始研究新的图划分方法,例如Trinity使用多层标签传递的划分方式,GPS和Mizan则使用动态划分方式。

  尽管MapReduce计算模型存在一些不足,但由于MapReduce己发展成为目前最主流的大数据处理并行计算模式、并得到广泛的使用,因此,目前研究者并不会抛弃MapReduce模型,而是试图不断改进和发展现有的平台,增加其对各种不同大数据处理问题的适用性,以便能解决现有版本在计算性能、计算模式、系统构架和处理能力上的诸多不足。

阐述分布式存储与传统集中式存储概念,区别,特点

  分布式存储与传统集中式存储截然相反,集中式存储采用的存储服务器存放数据,更多地依赖于硬件设备,面对大规模存储需求,很容易成为制约系统性能发挥的因素。分布式存储所谓一种概念,最早由美国的谷歌公司提出,它包含的种类有很多,比如分布式文件系统、分布式对象存储、分布式数据存储等,但无论是哪种存储,核心内容和思想都是一样的。与传统集中式存储相比,分布式存储所用到的物理设备较少,主要是靠整合、划分和分配存储资源来建立一个虚拟的存储空间,再由具体某些虚拟存储空间出发,扩展出更多系统结构,在提高可靠性和有效性的同时,也解决了冗余等诸多问题。下面本文将对分布式存储——数据中心建设解决策略进行研究。

  一、透析分布式存储

  (一)HDFS分布式存储体系结构

  HDFS是一种实现分布式文件存储的体系结构,它类似于一个文件传输系统,当客户端需要读取某个文件数据时,首先会从元数据,也就是namenode服务器获取文件信息,然后在元数据服务器和实际存储数据服务器(datanode)的交互作用下,获取具体有效数据。通过分析整个交互过程我们发现,作为整个HDFS文件系统中的管理者,namenode主要负责文件系统的命名空间、集群配置信息和存储块的复制;datanode则是文件存储的基本单元,当客户端向namenode发送文件写入和读取请求后,namenode会按照事先制定好的规则反馈给客户端自己所管理的datanode信息。一般来说,一个集中中只有一个namenode的设计大大简化了系统结构。

  (二)Ceph分布式存储系统结构

  Ceph分布式存储系统的设计初衷是为了提供更好的可靠性、可扩展性和性能。它所采用的是 CRUSH 算法和数据分布均衡,这与传统集中式存储的元数据寻址有着非常大的不同,可实现各种类型的负载副本放置规则,存储节点规模十分庞大。Ceph的核心组件有Monitor服务、OSD服务和MDS服务,其中OSD是负责响应客户请求返回具体数据的进程操作,它的元数据被保存在Monitor里。一般来说,Ceph分布式存储系统中的块存储需要Monitor服务、OSD服务和客户端软件,Monitor负责维护存储系统的硬件逻辑关系,OSD负责磁盘管理,以实现真正的数据读写。

  块存储是Ceph分布式存储系统三种存储类型中的一种,另外两种是文件存储和对象存储,每种类型的存储都有各自的优点和缺点,如块存储的优点是利用Raid和LVM来保护数据的完成性,通过组合廉价硬盘来提高存储容量,由多磁盘合成的逻辑盘能够提升读写效率,缺点在于,数据共享无法在主机之间实现,且由光纤交换机等构建的硬件网络平台成本较高;文件存储类型的优点是,造价低廉,文件共享是可行的,但读写和数据传输速度慢也是不容忽视的问题,并且在使用场景和日志存储方面也有比较特殊的要求;而对象存储类型既具备了块存储读写速度高的优点,也具备了文件存储共享的特性,但更适合去更新变动较少的数据。

  二、不同分布式存储系统存在的问题

  (一)HDFS的缺点

  1.短时间、低延迟请求的响应能力不足

  受自身性质和结构的限制,HDFS在处理用户要求时间比较短的低延迟请求时会显得力不从心。HDFS最初是为了处理和解决大型数据集问题而设计的,实现高吞吐量的代价就是出现高延迟。

  2.小文件存储量的有效性低

  由于元数据会被存放在内存中,因此文件系统所能容纳的文件数量必然是有限的,如果以每个文件160字节去计算,200万份文件就需要占用至少600MB的内存空间,虽然以目前的情况来看是可行的,但当发展到10亿以上时,对硬件的要求就会变得很高。

  3.文件写入及修改的限制

  从目前来看,HDFS还不支持多用户对同一个文件写入的操作,也就是说,HDFS规定,一个文件只配有一个写入者,且只能在文件末尾完成,对文件修改也是如此。

  (二)Ceph分布式存储系统的问题

  1.可扩展性

  由于CRUSH 算法的存在,使Ceph对系统扩容方面充满了自信,甚至声称能够实现无限扩展,事实上也确实如此。但这种无限扩展更多是站在宏观立场去做判断,其扩展过程并不是很顺畅。由于Ceph没有中心化的数据节点,使扩容易受“容错域”制约,导致数据放置策略受到影响,所以扩容力度没办法得到提升。

  2.存储成本问题

  众所周知,Ceph是去中心化的分布式存储,元数据被分布在各个物理设备上,事实上,对象的被随机分配是无法保证均匀地存储在每一块磁盘上,所以某些磁盘的使用率会明显高于全部磁盘的平均使用率,那么这跟存储成本又有什么关系呢?在集群整体使用率不高的情况下,即便出现上述所讲的问题也没什么,但在整体使用率达到一定程度时(一般会以65%作为标准去衡量),就需要管理员对高使用率的磁盘进行reweight,如果在调整过程中另外一块磁盘也被写满了,那管理员就必须被迫在Ceph没有达到稳定状态前,又一次进行reweight操作,从而使Ceph变得越来越不稳定,加之扩展性方面的问题,这个Ceph系统运行就会很紧张。所以,很多公司为了避免出现这些问题,会选择增加成本,购买更多的物理设备,准备更多的磁盘,其实这并不是一个很省钱的办法,很多业界人士认为,一般Ceph集群在达到50%使用率时,就要开始准备扩容了,越大规模的集群,越多空置的存储资源,就会浪费越多的钱。

  三、问题改进策略

  (一)HDFS问题改进策略

  1.HBase开源数据库

  建立 HBase数据库是解决低延时问题比较有效的一个办法,在很大程度上提升了存储系统的性能,使用缓存或多master设计可以降低client的数据请求压力,以减少延时。另一方面,着手于HDFS系统内部进行修改也是一个不错的办法,但需要权衡吞吐量的问题。

  2.提高小文件存储量的有效性

  关于这方面问题的解决办法还是不少的,比如用SequenceFile、MapFile、Har等方式对小文件进行归档操作,其中比较重要的点在于,要知道与归档文件的映射关系;再有就是横向扩展,即把几个Hadoop集群拖在一个虚拟服务器后面,形成一个大的Hadoop集群,google曾经就是这样操作的;还有就是正在研发中的GFS II,它也将被改为分布式多Master设计,而且还支持Master的Failover。

  (二)Ceph问题改进策略

  1.扩充“容错域”

  在开始规划Ceph集群时,设定好更大层次的“容错域”,比如Rack。 可以是真实的Rack,即使没有也可以是逻辑的Rack。这样扩容时,可以扩一个逻辑“容错域”,就可以打破扩一台机器的限制,扩一整个Rack,至少有好几台机器。

  2.Ceph存储成本

  到目前为止,还没有太好的办法去解决Ceph储存成本的问题,有人建议过Ceph集群按整个pool去扩容,即当一個pool满了,就不扩容了,开新的pool,新的对象只准写新的pool,老的pool的对象只可以进行删除和读取操作,但这样做也就谈不上“无限扩容”了。

  分布式存储较集中式存储相比,的确为使用者提供了诸多便利,具有很明显的优势,且每一种分布式存储都有自己独特的亮点,给使用者提供了多样化的选择。但在具体应用时,还需要结合实际情况,HDFS也好,Ceph也罢,它们也都有自己的不足,没有哪种产品是十全十美的,数据中心建设的标准应遵循分布式存储的特点进行实施,这样才能最大限度提高数据使用率和保证数据安全。

posted @ 2023-03-24 12:40  Auion  阅读(208)  评论(0编辑  收藏  举报