Hadoop3:集群压测-读写性能压测

一、准备工作

首先,我们要知道,平常所说的网速和文件大小的MB是什么关系。

100Mbps单位是bit;10M/s单位是byte ; 1byte=8bit,100Mbps/8=12.5M/s。

测试

配置102、103、104虚拟机网速

102上用Python开启一个文件下载服务,类似FTP

bash 复制代码
python -m SimpleHTTPServer

在103上下载102的文件

可以看到,下载速度在11.6MB/s左右。符合预期。

二、HDFS写性能测试

原理说明

两种算法

1、所有MapTask处理的文件大小总量/总时间。

2、每个MapTask的速度统计,求平均值。

正常情况下,这两个值差别不大,但是,出现个别服务器有问题,则会出现较大的偏差。

测试命令

bash 复制代码
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MB

测试结果

参数介绍:
Number of files:生成mapTask数量,一般是集群中(CPU核数-1),我们测试虚拟机就按照实际的物理内存-1分配即可

Total MBytes processed:单个map处理的文件大小

Throughput mb/sec:单个mapTak的吞吐量

计算方式:处理的总文件大小/每一个mapTask写数据的时间累加

集群整体吞吐量:生成mapTask数量*单个mapTak的吞吐量

Average IO rate mb/sec:平均mapTak的吞吐量

计算方式:每个mapTask处理文件大小/每一个mapTask写数据的时间全部相加,再求均值

IO rate std deviation:方差、反映各个mapTask处理的差值,越小越均衡

可能的报错

解决办法:
yarn-site.xml

xml 复制代码
<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
     <name>yarn.nodemanager.vmem-check-enabled</name>
     <value>false</value>
</property>

保存,分发并重启Hadoop

三、HDFS读性能测试

测试命令

bash 复制代码
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -read-nrFiles 10 -fileSize 128MB

四、删除测试文件

命令

python 复制代码
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -clean

五、放开网络限制

测试写性能

这块还是有点云里雾里。。。。

应该有更专业的测试工具。

相关推荐
大数据CLUB9 天前
基于pyspark的北京历史天气数据分析及可视化_离线
大数据·hadoop·数据挖掘·数据分析·spark
張萠飛10 天前
hive集群优化和治理常见的问题答案
数据仓库·hive·hadoop
小葛呀10 天前
互联网大数据求职面试:从Zookeeper到Flink的技术探讨
大数据·redis·zookeeper·面试·flink·互联网·yarn
高小秋12 天前
Hadoop 技术生态体系
大数据·hadoop·分布式
火龙谷13 天前
【hadoop】搭建考试环境(单机)
大数据·hadoop·分布式
liuze40813 天前
在VMware虚拟机集群中,完成Hive的安装部署
数据仓库·hive·hadoop
雷神乐乐13 天前
Hive优化详细讲解
数据仓库·hive·hadoop
Edingbrugh.南空14 天前
Hudi 与 Hive 集成
数据仓库·hive·hadoop
Edingbrugh.南空14 天前
Hive集成Paimon
数据仓库·hive·hadoop
ZKf30FkG14 天前
前端包管理工具终极对决:npm vs Yarn vs pnpm vs Bun vs Deno
前端·npm·node.js·yarn