三十三、发布MapReduce程序在集群上运行之wordcount案例实施

简介: 三十三、发布MapReduce程序在集群上运行之wordcount案例实施

环境准备:


Hadoop2.6.0

IDEA

maven3.5.4

MapReduce在本地已经可以正常运行,具体见:


MapReduce之wordcount案例(环境搭建及案例实施)https://blog.csdn.net/m0_54925305/article/details/120155693

https://blog.csdn.net/m0_54925305/article/details/120155693


案例实施:


1.在原pom.xml依赖中添加集群依赖:


<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin </artifactId>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                    <archive>
                        <manifest>
                            <mainClass>org.example.mapreduce.wordcount.WordCountDriver</mainClass>
                        </manifest>
                    </archive>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

2.修改WordCountDriver代码:


原本地代码为:


45.png


修改为集群代码:


46.png


3.生成jar包:


47.png


注:点击package生成集群运行的依赖jar包


4.找到本地生成的jar包:


成功运行完成后如图:


48.png


在这里找到jar包:


49.png


50.png


注:上面短的为不带依赖的jar包,长的为带依赖的jar包,在集群中是有很多依赖的,所以只需要导入不带依赖的jar包即可


5.拷贝并重命名jar包:


       将jar包拷贝到桌面并重命名为wc.jar


51.png


6.启动集群:(此处将以完全分布式作为案例)


52.png


 55.png


56.png


7.将jar包上传到集群上:


       此处使用Xshell,Xftp传输jar包


53.png


8. 虚拟机查看jar包是否传入:


54.png


9.将数据文件上传到HDFS上:


       (1)在HDFS根目录下新建input目录:


57.png


       (2)上传本地HelloWord.txt数据文件至HDFS的input目录下 :


58.png


注:此处依旧使用Xshell,Xftp传输数据文件

59.png


       (3)将上传到虚拟机/input目录下的HelloWord.txt上传到HDFS上:


60.png


61.png


        (4)在虚拟机浏览器地址localhost:50070找到/input目录下的HelloWord.txt


62.png

63.png


注:如图即为上传数据文件至HDFS成功


10.运行jar包程序:


       (1)先把wordcountDriver的全驱动类名copy出来:


64.png


        (2)运行:

67.png

       注:使用hadoop jar 命令 + (jar包在当前目录下无需加路径)jar包名 + 全驱动类名 + 输入路径 + 输出路径         #此处jar包根据自身实际情况进行修改


       运行过程注意观察这几处字样,即为运行成功:


65.png


66.png


11.检测运行结果:


       (1)将结果上传至HDFS:


68.png


        (2)在终端查看:


69.png


        (3)在虚拟机浏览器HDFS端查看:


70.png


       原数据为:

71.png


发布MapReduce程序在集群上运行之wordcount案例实施完成


相关文章
|
4月前
|
分布式计算 Java Hadoop
IDEA 打包MapReduce程序到集群运行的两种方式以及XShell和Xftp过期的解决
IDEA 打包MapReduce程序到集群运行的两种方式以及XShell和Xftp过期的解决
|
4月前
|
分布式计算 Hadoop Java
【集群模式】执行MapReduce程序-wordcount
【集群模式】执行MapReduce程序-wordcount
|
4月前
|
分布式计算 Java Hadoop
【本地模式】第一个Mapreduce程序-wordcount
【本地模式】第一个Mapreduce程序-wordcount
|
5月前
|
存储 分布式计算 资源调度
提交MapReduce程序至YARN执行
提交MapReduce程序至YARN执行
37 0
|
8月前
|
存储 分布式计算 Hadoop
伪分布式安装部署(运行MapReduce程序)
伪分布式安装部署(运行MapReduce程序)
|
4月前
|
分布式计算 Hadoop
Hadoop系列 mapreduce 原理分析
Hadoop系列 mapreduce 原理分析
38 1
|
7月前
|
分布式计算 Hadoop 大数据
Hadoop学习:深入解析MapReduce的大数据魔力之数据压缩(四)
Hadoop学习:深入解析MapReduce的大数据魔力之数据压缩(四)
|
7月前
|
分布式计算 Hadoop 大数据
Hadoop学习:深入解析MapReduce的大数据魔力(三)
Hadoop学习:深入解析MapReduce的大数据魔力(三)
|
4月前
|
存储 分布式计算 负载均衡
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
59 0
|
7月前
|
SQL 分布式计算 并行计算
Hadoop学习笔记(三)之MapReduce
Hadoop学习笔记(三)之MapReduce