三十三、发布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案例实施完成


相关文章
|
9月前
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
240 3
|
9月前
|
分布式计算 资源调度 数据可视化
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
141 1
|
9月前
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
160 1
|
9月前
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
243 0
|
9月前
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
112 0
|
9月前
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
161 0
|
11月前
|
分布式计算 Hadoop Java
Hadoop_MapReduce中的WordCount运行详解
MapReduce的WordCount程序在分布式系统中计算大数据集中单词出现的频率时,提供了一个可以复用和可伸缩的解决方案。它体现了MapReduce编程模型的强大之处:简单、可靠且将任务自动分布到一个集群中去执行。它首先运行一系列的Map任务来处理原始数据,然后通过Shuffle和Sort机制来组织结果,最后通过运行Reduce任务来完成最终计算。因此,即便数据量非常大,通过该模型也可以高效地进行处理。
274 1
|
10月前
|
分布式计算 资源调度 Hadoop
在YARN集群上运行部署MapReduce分布式计算框架
主要介绍了如何在YARN集群上配置和运行MapReduce分布式计算框架,包括准备数据、运行MapReduce任务、查看任务日志,并启动HistoryServer服务以便于日志查看。
155 0
|
数据采集 分布式计算 搜索推荐
Hadoop学习---7、OutputFormat数据输出、MapReduce内核源码解析、Join应用、数据清洗、MapReduce开发总结(一)
Hadoop学习---7、OutputFormat数据输出、MapReduce内核源码解析、Join应用、数据清洗、MapReduce开发总结(一)
|
存储 分布式计算 Hadoop
Hadoop基础学习---6、MapReduce框架原理(一)
Hadoop基础学习---6、MapReduce框架原理(一)