有限的原始提案。
从进化的角度来看,磁盘仍然具有很高的成本。因此,他们不太可能完全被取代在之后的一段时间。NVM技术应被视为近期未来设计的有吸引力的组成部分。在这方面,我们还应该考虑到变化的应用将引发在总体的软件的栈的变化。例如,当前的文件系统是在以毫秒的延迟优化。NVMs提供延迟减少约三个数量级在这段时间(微秒)。有的建议基于闪存的固态硬盘(SSD)支持key-value存储抽象,有利于它的工作负载。还有其他人建议固态硬盘作为传统硬盘的缓存组织(混合设计)。理想情况下NVMs应该暴露在的持久性指令集级别(ISA),操作系统可以使用他们有效(例如,通过重新设计的部件,承担记忆波动或提供给上层,放置档案资料节能NVM模块API。)的数据。另一方面,持久的记忆能力将降低分离性;可以通过持久的内存交换解决这个问题。从算法的角度设计和相关的数据结构,non-volatility可以推动替代,优化设计和索引的实现结构,键值存储数据库和文件系统,所有大数据分析的主要组件。 2.2 网络资源对于数据分析
主要考虑设计标准通信协议栈的链路,网络和传输层的设计与互操作性的不同的技术和制造商的组件。在这个设计中链路层是不可靠的,因此拥塞或不可靠的通信信道会造成数据包丢失。为了补救,传输层在最后要求让步传播,从而影响带宽。然而,一个典型的数据中心网络环境是完全不同的广域网。首先,它的信道可以被认为是无损的,这一假设应该理想地反映在它实现的流动机制。在一个单一的行政控制下,它大多是均匀的,所以向后兼容已经部署的协议不是问题。负载平衡器和应用程序代理从外部通信所以没有单独的内部交通与常规TCP公平性问题。在排队的情况下,往返时间(RTT)可小于250微秒。应用程序同时需要非常高的带宽和非常低的延迟。此外,很少有统计复用,所以一个流可以主导一个特定的路径。
数据中心网络中的一个特殊性能瓶颈是在许多大型网络应用程序广泛使用的分区/总设计模式:从更高层次的应用程序的请求被分解成块,并在较低层的代理聚集,查看这些代理的反应,然后汇总产生的结果。由此可见,数据以传回多对一的方式遍历一个瓶颈环节。随着并发者数量的增加,吞吐量的应用水平在接收时比容量低几个数量级。例如,这可能发生在MapReduce工作的shuffle阶段,当中间的键-值对多映射转移到适当的reducers。最近的一个变种TCP,TCP数据中心(DCTCP),解决了这个Fork-Join网络交通结构,利用工程变更协议在大多数商品交换中实现的扩展,允许端到端的网络拥塞通知丢弃数据包。相反,未来的性能问题可能会带动开关设备的定制。
注意,处理特定网络的缺点的细节与选择的协议基本上是相关的。这个基本的竞争者是以太网和无线带宽。无线带宽是一种能量比例网络,这个属性让这种
技术的优势,因为能源效率是一个主要的设计目标在未来数据中心。预计这两个选项将在即将到来的未来会成为应用程序为基础。
关于互连技术,光学和电气光学设计有着显着的优点。然而,由于光电转换代表能源效率的瓶颈,我们的目标是使用一个全光开关结构。这种转变将被首先消除了网络接口控制器(NIC),所以网络处理器将直接对话;同样也可以使光成为处理到内存的路径,最近发布的第一个平行光收发模块原型具有每秒传输一个TB信息能力,由IBM清楚地识别大数据分析作为目标市场,强调设备的能源效率。英特尔还计划推出一个成本有效的光学互连的雷电接口电缆(已准备在苹果产品中使用)。作为一种混合电/光开关的一个例子,太阳神是一个体系结构有显着减少的,布线,成本和功耗的开关元件。它是一个二级多根树的开关和核心交换机,其中的核心包括传统的电分组交换机和微机电系统为基础的光电路开关。包括电气交换机的原因是需要处理在聚集的交通需求之间的不同对突发性证明:支持这一类型的交通所需的(光)电路的数目将是禁止的,和电分组交换将是可取的。 2.3 大数据分析中的能量问题
能量均衡是云计算的一个重要目标系统和组件。大多数数据中心操作超过一半的峰值负载,虽然它们的效率最大化在峰值负载。能量比例意味着功率消耗与负载之间一个线性关系。这是可以实现的明确地使用能量比例的设备,或仅为计算过程中绝对必要的组件。更具体地说,工作整合通常适用于粗—像单个服务器机器一样的细粒度组件,这种方法的适用性很大程度上取决于类型的计算:批量处理产生理想的功率减少但在线或并行应用程序不允许这样的能量储蓄计划。请注意能量相称性不是名义上的光网络技术的特点(静态激光功率消费)。
然而,能量优化与系统在更大的部署中更容易节省电力,特别是在输送电子设备之前的能量,管道移动或存储数据处理。冷却功率交付在大多数情况下,适合于能源的设计和实施。安德烈等人因子数据中心的效率为三个计算设备,服务器的能源转换,执行计电子元件的效率,和计算的本身。尽管第三项是最相关的我们的讨论,前两个因素每瓦特“生产性”消耗2.2瓦的能量。以一个更整体的方法来优化第三项。巴利加等人。考虑优化能源消费在全球云系统首先分析能耗概况的运输,储存,并在各种存储即服务绘制场景服务器,软件作为一种服务,和处理作为一个云计算服务方面。
在一个更细的粒度下,已经提出了减少CPU的功耗:如动态电压和频率缩放(DVFS),关闭功能单元的选择(占到大约三分之一的能量到硬件子系统)。然而,静态功耗和性能要求的基本被限制。能源方面的考虑促使不对称设计建议(专业芯片多处理器,多核处理器);hardavellas等人。[ 42 ]填充一个大的,多样化的应用程序特定的异构内核的骰子,可以动态禁用所有,但最适用于特定的应用程序的核心(导致在黑暗的硅点),可以达到峰值性能和能源效率。
3.虚拟化技术的
虚拟化是一个云部署背后的关键的概念来协调软件和硬件之间的天然鸿沟。它的基本组成部分是虚拟机监控器(VMM),一个软件抽象层,使分区的底层硬件平台成一个或多个虚拟机[ 80 ]。最重要的是(i)应该运行未修改现有的软件在每个虚拟机,(ii)优势指令的子集必须直接在处理器上执行(iii)VMM在系统资源的完全控制(经典虚拟化)。
虚拟化是在20世纪60年代末主机上下文的技术开发,最初,高性价比的机器随后的增殖,分享,取决于虚拟化资源的需要,抓住存在,在某种程度上,现代的硬件本身不支持这种模式。然而,它提供的优点,特别是在可靠性,安全和管理硬件成为一个池资源,以运行任意服务的需求,使其使用以数据为中心,大数据分析的多租户环境中尤为重要。具体而言,VMM提供的虚拟机的封装,从而有利于负载均衡的任务,虚拟机器复制,储存和运输,暂停/恢复方案,硬件和软件/配置故障处理。此外,VMM虚拟墙之间提供隔离多台虚拟机的多个虚拟机的多路复用同样的硬件变得透明,从而产生了戏剧性的成本效益。安全性和可靠性的优点自然遵循由于故障是由于程序错误或安全妥协是孤立于其它的虚拟机,问题不宣传机器执行相同的VMM下。
所有硬件子系统(中央处理器、内存、输入/输出、网络等)都可以在原则上进行虚拟化。目前,CPU虚拟化相对成熟,其次有趣的改进是,虚拟内存管理单元(MMU)的创新和研究的建议,I / O子系统和网络。
如果它支持直接执行基本的VMM技术的CPU架构是虚拟的,虚拟机在真实的机器上执行;但是VMM有CPU的极限控制。这通常是通过运行虚拟机的特权和非特权在CPU的特权模式的代码和保留VMM的特权模式执行;当虚拟机试图执行特权操作CPU陷入VMM,从而模拟它的更新虚拟机状态。然而,无处不在的x86架构不提供安全透明的所有特权操作语义的陷阱。因此,各种技术已被提出。在半虚拟化的操作系统(OS)在虚拟机执行修补与设计适当的取代非虚拟操作,虚拟化的等价物。然而,改变操作系统的源代码也可能由于许可问题,它可能产生的不兼容。一个替代的方法,二进制翻译器运行非虚拟,特权的部分动态补丁“offending”指令,同时保留在高速缓存块的优化目的的翻译。
内存管理,VMM 维护 每个虚拟机的内存管理数据结构,其影子页表的影子。VMM 更新操作系统的变化反映出这些结构,并建立映射到实际的页面在硬件内存中。这里的挑战包括使 VMM 利用高效分页进出和跨多个虚拟机,由一个单一的 VMM 监测共享相同的物理页面的操作系统的内部状态。此共享将均匀池 (在用软件配置) 的虚拟机执行,在多核处理器的芯片,将来大数据分析的工作量尤为重要。
I/O虚拟化,至少基于x86架构的需求,将代码直接包含与目前存在的各装置的VMM层。这是一个解决托管架构:VMM运行在主机操作系统和应用程序上提出任何I/O请求从来宾操作系统。托管架构可能不是规模在服务器环境的高性能网络和磁盘子系统。因此,VMM执行源操作,利用认证的开源驱动程序来解决选择。
虚拟化是一个广义的概念,讨论的话题不局限于系统虚拟化。大数据分析,高级语言虚拟化也是一个相关的概念。最近几次目睹了虚拟的广泛采用机器(比如JVM和CLR)作为许多编译目标编程语言。显而易见的优势是立即在虚拟机和库的共享优化一套广泛的语言。有趣的是,这些优化包括引入新的(软件)操作码,主要是服务于需要高生产力的语言移植到这些运行时,例如,动态类型的脚本语言或使用实时(JIT)技术,让人想起硬件辅助的虚拟化和二进制翻译提。考虑到程序员未来的开发大数据分析软件的生产力是一个重要的成本在这个方向上的进步是重要的。 4.结论
数据操作的现代应用程序正在以惊人的速度量增长,并且给并行和分布式计算平台带来了有趣的挑战。这些挑战从构建存储系统,可以容纳这些来自地理上的分布式源存储系统大型数据集收集到的数据,对数据运行接受多样化的计算范围。资源和语义约束,如啤酒瓶盖定理,需要处理每个应用程序的基础上,开发应用的和启发式的这些问题。最近努力应对这些挑战可扩展的分布式存储系统(文件系统,键值存储,等等),可以处理多种计算模式执行引擎。在未来,随着数据规模的不断增长,这些应用程序的域的不同,这些系统将需要适应应用程序特定的优化。为了解决高度分散的性质数据,本系统可以将一些数据在源头计算,避免昂贵的数据迁移成本。
最近的硬件进步对实现分布式软件平台所需的大数据分析发挥了重要作用。未来的硬件,处理器技术的创新,较新的内存/存储或层次结构,网络架构(软件定义的网络)将继续推动软件创新。这些系统的设计重点将是在移动数据从存储到处理器或存储/计算节点之间的分布式环境中花费的时间最小化。