Hadoop系列——Hadoop练手、压测day2-2
Hadoop练手
Hadoop HDFS简单使用
Hadoop本质上就是一个文件系统,所以他是有目录树的,可以分目录,主要用于对大文件进行处理
创建文件夹(目录)
命令式
语法:
hadoop fs -mkdir 文件夹名称
例子:
hadoop fs -mkdir /test
UI界面
上传文件
命令式
语法:
hadoop fs -put 文件名称 文件夹名称
例子:
hadoop fs -put hello.txt /test
可以看到已经上传上去了
UI界面
Hadoop MapReduce简单使用
MapReduce本质上是个程序
由于yarn管理程序执行的运算资源,所以MapReduce需要首先对yarn进行访问
适合处理大数据场景
MapReduce
测试计算圆周率
//进入mapreduce案例目录
cd /export/server/hadoop-3.3.4/share/hadoop/mapreduce
//运行jar包
hadoop jar hadoop-mapreduce-examples-3.3.4.jar pi 2 4
你应该看到如下的显示:
执行完后我们在监视页(端口:8088,如:http://node1:8088/cluster)也可以看到
词频统计
我们创建一个txt文件插入如下内容:
中国*第二十次全国代表大会新闻发言人定于2022年10月15日(星期六)下午在人民大会堂举行新闻发布会。新闻发布会在北京新世纪日航饭店三层世纪厅设分会场,记者在分会场参会。欢迎各位记者报名参加。
境内记者接待组
电话:68356200、68356300
传真:68356700、68356800
港澳台记者接待组
电话:68350700、68350800
传真:68350900、68351900
外国记者接待组
电话:68350100、68350200
传真:68350400、68350500
外国记者需通过后附小程序报名。
然后上传到hadoop上
hadoop fs -put word.txt /test/wordcount/input
hadoop jar hadoop-mapreduce-examples-3.3.4.jar wordcount /test/wordcount/input /test/wordcount/output
执行成功后我们可以看到
我们将文件进行下载:
文件内容如下:
可以发现统计的话是按照一行一行进行计算统计的
我们可以稍微修改一下word.txt再此尝试
我们将电话和传真都改成一样之后发现
(注意如果重新测试需要删除原始输出目录或更换原始输出目录)
统计没有问题
Hadoop压测
测试写入速度
我们会用到hadoop-mapreduce-client-jobclient-3.3.4-tests.jar
jar包在我们的/export/server/hadoop-3.3.4/share/hadoop/mapreduce
目录下
语法
//向HDFS文件系统中写入数据,10个文件,每个文件10MB
//文件存放到/benchmarks/TestDFSIO中
hadoop jar hadoop-mapreduce-client-jobclient-3.3.4-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 10MB
- Throughput∶吞吐量
- Average IO rate:平均IO率
- IO rate std deviation : IO率标准偏差
执行结果如下:
测试读取速度
//向HDFS文件系统中读取数据,10个文件,每个文件10MB
hadoop jar hadoop-mapreduce-client-jobclient-3.3.4-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 10MB
删除测试数据
测试数据如下
在根目录下的/benchmarks/TestDFSIO
中
接下来用以下命令进行清除
hadoop jar hadoop-mapreduce-client-jobclient-3.3.4-tests.jar TestDFSIO -clean