大数据集群部署 虚拟机 vs 物理机 测试报告1.0(1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大数据集群部署:虚拟机 vs 物理机
下面重点分析虚拟机集群和物理服务器集群部署大数据的优缺点:
一、物理服务器集群部署大数据
图1 X86服务器集群
单台X86服务器的存储和计算能力已经无法满足海量数据存储和快速计算能力的要求,需要多台X86服务器组成集群进行横向扩展和分布式计算,X86物理服务器集群在大数据处理上具备很多优势:
1.海量数据存储能力:物理服务集群采用share-nothing技术架构,集群可以实现Scale out横向扩展,
集群主机数量从几台到几千台规模,采用服务器本地硬盘及分布式存储技术可以支持PB、EB级海量数据存储能力。
2.快速数据计算能力:大数据集群注重计算和存储在同一个节点,大数据可以按照哈希分片(Hash
Partition)、虚拟桶(Virtual Buckets)等算法将数据有序存储在集群中的数据节点上,当调用大量数据进行分布式计算时,需要在数据节点上完成所在节点数据的计算,即需要计算节点和数据节点部署的同一个节点,这样才能实现计算向数据靠近,计算的过程中减少数据的移动,实现快速数据读取和计算。
物理服务器集群采用本地计算资源和本地硬盘资源,将计算节点和数据节点部署在同一个节点,满足计算向数据靠近的原则,计算过程中减少数据在服务器之间的移动,降低网络I/O,实现快速数据读取和计算。
3.高速数据吞吐能力:为每台物理服务器节点配置多块硬盘,每块硬盘具备独立的I/O能力,支持数据并
行读写,实现高速数据吞吐能力。
4.高速网卡带宽能力:大数据集群采用分布式计算架构,节点之间存在大量的数据交换,通常会要求网卡
满负荷运作,物理机可以通过多万兆网卡负荷分担来提高网络带宽。
二、虚拟机集群部署大数据
虚拟机技术目标和大数据的技术要求实际上是背离的,虚拟机以提升服务器资源利用率为目标,把单台服务器物理资源虚拟化成多个逻辑资源,并分配给不同APP使用;而大数据技术要求构建多服务器集群进行分布式存储和计算来解决单台服务器的存储和计算能力不足问题。
虚拟机集群部署大数据集群时面临的下列问题:
图2 统一存储虚拟机集群
1.数据存储能力有限:统一存储设备采用共享存储方式,存储容量通过Scale up纵向扩展,可以支持几
百T数据存储能力,不能支持PB、EB级海量数据。
此外,统一存储成本相比X86的本地硬盘要昂贵。
2.数据计算能力降低:Hadoop、MPP等大数据均采用分布式计算框架,需要通过大数据集群的多个主机分
担同一个计算任务,并且主机的计算资源越强则大数据的处理性能就越快。
把单台服务器物理资源虚拟化成多个虚拟机资源,单个虚拟主机的计算能力降低。
在相同主机数量的情况下,虚拟机集群计算性能也会比物理机集群计算能力要低。
此外,虚拟化处理hypervisor也会消耗5%-10%的服务器性能。
3.数据吞吐能力有限:大数据集群每次执行计算任务时,都需要把大容量的数据从磁盘读到主机内存中,
并且计算过程数据和结果数据也需要写磁盘,I/O频率和带宽都要求很高。
而在虚拟机集群中,多个虚拟机并行从统一存储设备中大容量、高频率读写数据,统一存储设备的I/O能力、网络带宽都会成为瓶颈,并且不能随主机数量增加而线性扩展。
4.虚拟机网卡带宽有限:一个大数据集群的多个虚机主机有可能被分配在同一个物理服务器上,多个虚拟
机网卡会共用一个物理网卡,虚拟网卡带宽在大数据量交换的情况下也会成为瓶颈。
三、测试报告
1.总体测试思路
排序通常用于衡量分布式数据处理框架的数据处理能力。
Terasort是Hadoop中的的一个排序作业,在2008年,Hadoop在1TB排序基准评估中赢得第一名,耗时209秒。
Terasort算法思想是:在map阶段,每个map task 都会将数据划分成R个数据块(R为reduce task个数),其中第i(i>0)个数据块的所有数据都会比第i+1个中的数据大;在reduce阶段,第i个reduce task处理(进行排序)所有map task的第i块,这样第i个reduce task产生的结果均会比第i+1个大,最后将1~R个reduce task的排序结果顺序输出,即为最终的排序结果。
说明:Terasort计算过程有大量的数据I/O。
本次测试采用3台物理机大数据集群和通过与物理机相同配置的3台服务器虚拟化出来的6个虚拟机测试同样大数据程序,进行性能数据对比。
2.物理机集群部署
用途CPU 内存系统盘数据硬盘网络节点一4路8核128G 1*600G 4*600G 10GbE
节点二4路8核128G 1*600G 4*600G 10GbE
节点三4路8核128G 1*600G 4*600G 10GbE
3.虚拟机集群部署
用途CPU 内存系统盘数据硬盘网络节点一2路8核62G 1*600G 1.2T 10GbE
节点二2路8核62G 1*600G 1.2T 10GbE
节点三2路8核62G 1*600G 1.2T 10GbE
节点四2路8核62G 1*600G 1.2T 10GbE
节点五2路8核62G 1*600G 1.2T 10GbE
节点六2路8核62G 1*600G 1.2T 10GbE
4.Hadoop测试结果
功能物理机集群虚拟机集群虚拟机集群/物理机集群295秒395秒133.9%MR 生成TeraSort标
准排序数据100G
3006秒4342秒144.4%MR Terasort 100G
数据培训测试
说明:Terasort计算过程有大量的数据I/O,虚拟机对磁盘I/O的抢占,导致性能损耗较多。
四、总结
从测试中可得出采用虚拟机的方式性能会降低30%以上。
综上所述,对大数据量和高性能要求的生产环境需要采用物理服务器集群部署大数据,虚拟机集群部署大数据只能用于小数据量、性能要求不高的实验环境。