hadoop获得的巨大的成功令人不得不关注和研究它。本文将从它如何提高计算性能,减少计算时间入手分析hadoop。
1.性能可以线性提高
hadoop的计算模型就是map/reduce,每一个计算任务会被分割成很多互不依赖的map/reduce计算单元,将所有的计算单元执行完毕后整个计算任务就完成了。因为计算单元之间互不依赖所以计算单元可以分配到不同的计算机上执行,这样就可以将计算压力平摊到多个机器上面。如果一个计算任务可以分成n个计算单元,每个计算单元执行时间为t,如果有m太机器那么最终的计算时间就是t*(n/m),m越多时总体计算时间越少。因此hadoop可以让系统性能随机器增加而线性提高。
当然性能线性提高是有条件的,前提是计算任务所采用的算法必须能够适应map/reduce模式。例如对于海量数据排序任务来说,绝大多数的排序算法都是不适应map/reduce模式的,如堆排序,插入排序,冒泡排序都是不适用于map/reduce的,因为这些算法都需要维护一个全局有序队列,这会导致数据与数据之间严重依赖而导致计算任务不能分解。而桶排序算法(bucket sort)是可以适应map/reduce算法的。桶排序过程是这样的,首先对数据分段,段内是无序的,段间是有序的,后段的任何一个数据大于前段任何一个数据。此时可以把每一段划分成一个计算单元,这样就可以适用map/reduce模式了,每一个段有序后,排序任务就完成了。
2.将计算和数据融为一体
用Google的话来说就是moving computation is much cheaper than moving data。
很多时候数据存放在数据中心,当需要数据的时候,通过网络下载数据到本地然后处理数据得到结果。这种情形下数据从数据中心到计算中心会有很大的IO开销,很多时候这将成为性能瓶颈。而hadoop的做法是数据存放哪台机器上,计算任务就在那台机器上执行,然后将计算结果传送到需要的地方,这样就可以节约数据传输的时间。如果计算结果的数据量大于原始数据的数据量那么hadoop是不划算的,但通常情况下,计算结果数据量远远小于原始数据的数据量,如日志分析,数据搜索等。
hadoop的实现方式是这样的。hadoop不仅是一个计算框架,hadoop也包含一个分布式文件系统HDFS,这个文件系统将文件分别存放在不同的机器上。hadoop的map/reduce计算框架会和HDFS协作,将map/reduce计算单元分配到数据存放的机器上,这样就实现了"moving computation"。
从分析可以看出,map/reduce计算框架必须和HDFS这样的分布式文件系统协作,否则会出现数据传输的瓶颈。
——————————————————————————
标题中nuclear bomb对应的中文竟然是敏感词,悲剧,只有用英语啦,见谅。
分享到:
相关推荐
Nuclear-PBL-Unit-Day-2-Mr.-Klotz's-Web-PagePPT文档.pptx
`nuclear_python`库可能包含的功能范围广泛,可能涵盖了核反应率计算、同位素衰变链分析、辐射剂量计算、核数据处理等。在实际应用中,这可能对核能研究、放射性废物处理、核医学和环境监测等领域提供强大的计算支持...
Enhancing-the-performance-of-a-tensioned-meta_2018_Nuclear-Instruments-and-M
nuclear_python库专注于核科学和工程领域的计算和模拟,为Python开发者提供了处理与核能相关的复杂问题的工具。虽然具体的库详情并未在描述中详述,但我们可以推测它可能包含以下方面的内容: 1. **数学和物理模型*...
python库。 资源全名:nuclear_python-0.15.7.7-py3-none-any.whl
资源分类:Python库 所属语言:Python 资源全名:nuclear_python-0.15.4.8-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:nuclear_python-0.14.15-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
- **干涉信号处理**:研究中使用了一种指数衰减相对相位的余弦拟合方法来处理所获得的时间依赖性干涉信号,从而计算出铷等离子体的相关参数。 #### 应用场景 1. **CERN AWAKE实验**:该技术可用于实时测量AWAKE...
### 相对效率校准:两个硅漂移探测器之间的X射线校准 #### 摘要 本文介绍了一种新的X射线校准方法,该方法利用软X射线Manson源与SYMPAX单色仪在0.1至1.5 keV的能量范围内进行校准。这种基于经典Rowland几何结构的...
- **CdZnTe**:一种半导体材料,由于其良好的辐射检测性能而被广泛应用于核医学、安全检查等领域。 - **高分辨率探测器**:指具有高空间分辨率的探测器,能够提供更为精确的成像信息。 - **三维像素化探测器**:一种...
为了提高有效电压并减少壁面功率损耗,根据CST-MWS软件计算出的电磁场结果和热分布及变形的机械分析,内部结构进行了优化。通过实验确认了多击效应(multipacting effect)的标准,并设计了冷却通道的位置和规格,以...
### Nuclear Fusion Research: Understanding Plasma-Surface Interactions #### 核聚变研究背景及意义 核聚变作为一种清洁能源的潜在来源,长期以来一直是科学研究的重点领域之一。它通过模拟太阳内部发生的自然...
The extent to which nuclear energy can be a feasible energy option has re-emerged as a subject of widespread debate following the Fukushima accident in Japan. However, relatively little is known about...
ISO 16796-2022 Nuclear energy - Determination of Gd2O3 content in gadolinium fuel blends and gadolinium fuel pellets by atomic e.pdf
var Getter = require ( './nuclear-js' ) . Getter var ReactorMixin = require ( 'nuclear-vue-mixin' ) var reactor = require ( './reactor' ) var vm = new Vue ( { mixins : [ ReactorMixin ( reactor ) ] ,...