失效链接处理 |
基于hadoop子项目_Hive的云计算性能测试_沙恒 PDF 下载
本站整理下载:
相关截图:
主要内容:
Hadoop分布式集群配置
硬件:浪潮 NF5220、16CPU、13GB内存。
操 作 系 统:Linux-CentOS6.1,并使用系统自带的
KVM 虚拟机进行其它节点的虚拟。
实验 模 型:本次实验首先分布了4个 集 群 节 点:1个
主节点和3个从节点,其中,Master在原 CentOS上 配 置,
其余3个 Slave从 节 点 配 置 在 KVM 虚 拟 机 上,为 每 个
Slave节点分配了同样的配置:4CPU、1GB 内 存、100GB
HDFS。
本次实 验 的 目 的 在 于 测 试 基 于 Hive的 MapReduce
分布式计算性能。
MapReduce较 HPC的优势在于数据本地化,即 计 算
数据在本地。HPC海量数据计算适用于密集型计算,它
的瓶颈在于网络带宽,而 Hadoop的 MapReduce改善了这
一点:Hadoop首先将海量数据负载均衡地分布在每一个
计算节点上 的 HDFS。在 Map阶 段,任务的执行节点和
输入数据的存储节点为同一节点,减少了网络带宽的依
赖,提高了其计算性能。 在 Map阶段,将输入数据分割成固定大小的片段,成
为分片(splits),这个大小一般为64M,与 HDFS的块大小
相同。因为如果分片大小超过了 HDFS块 大 小,则 一 个
Map任务不可 以 在 一 个 HDFS块 内 完 成,需 要 其 它 节 点
的数据,这样就需要消耗网络带宽并增加其它一些开销,
大大降低计算性能。
当访问磁盘时,如果 数 据 较 小,则访问总时间由磁盘
的寻址时间决定,而数 据 较 大 时,则由数据的传输时间决
定。同样,Hadoop的 MapReduce对待计算的数据也有数
据大小的 权 衡,它适用于大数据的计算。MapReduce的
Map任务通常是在一个时间内运行操作一个块,因 此,如
果任务数过少,作业的运行速度显然就比预期的慢。如果
集群数量足够大,待计 算 数 据 较 大,那么这个数据会被负
载均衡到每一个计算节点,并 进 行 并 发 map计 算,达 到 良
好的预期效率。
本实验测试 目 的 就 在 于 测 试 Hadoop分 布 式 计 算 的
性能与待计算数据大小的关系以及分布式计算的性能与
计算节点数量的关系。 3 实验结果及结论
首先将一个比较小的待计算数据存储至 HDFS中,
大小为260M。
将原 始 数 据 复 制 50 份形成一个新文件存储至
HDFS,同样分别复制100、200、300份 形 成 另 外3个 文 件
存储至 HDFS。
分别对这4份 数 据 基 于 Hive的 HiveQL(其 低 层 是
MapReduce计算)进行同一 条 数 据 记 录 查 询,并 分 别 记 录
对应的结果,进行数据分析。见图2。
图表中,X轴 代 表job执 行 的 时 间,Y 轴 代 表 对 应 原
始数据拷贝数的文件。由图中数据曲线可知,当数据拷贝
数在50份 到100份 间,计算效率达到了一个峰值。说 明
MapReduce的效率随待处理数据的增大而增大,到 了 一
个固定值就几乎稳定不变,即达到了最大并发量的 map。 图2 三计算节点效率统计
接下来新 增 一 计 算 节 点,考察计算节点数目增多时
MapReduce的效率线性增加问题。
由于 NF5220CPU、内存等硬件条件有限,无 法 继 续
使用 KVM 虚拟节点,故使用一台普通的4CPU、4G 内 存
的 PC机做新增的计算节点。
使用 Hadoop框架自带的负载均衡器将之前的 3台
计算节点上 HDFS中的数据负载均衡到新增加的计算节
点上,然后进行同 上 的 HiveQL 查 询,并进行数据统计做
对照图,如图3所示。
|