IDEA【spark&mapreduce混合配置】mapreduce spark 本地调试
2017-01-02 17:04
363 查看
本文主要讲解在一个普通java的mevan工程中,添加scala,并实现写spark
同时可以在这一个工程中本地调试mapreduce和spark
而且打的jar分别也能在集群中运行mapreduce和spark
睡到半夜起来。发现1号【过往记忆】有篇博客更新
scala和java可以放到一个mevan工程里面,https://www.iteblog.com/archives/1947
一不做二不休,起来试试吧
pom配置文件里面的插件地方要添加这些
主要是这几个插件
org.apache.maven.plugins
net.alchim31.maven
maven-assembly-plugin 貌似感觉第3个没用,查查中央库,没看明白干嘛,我就引了前面2个
添加完pom后
需要在目录中建立一个scala的文件夹
一个jar,既可以跑MR又可以跑spark,有意思
但是这都是上传到集群上跑的呀,多麻烦呀,我试试本地调试呢。
spark是没问题。
hadoop的mapreduce怎么在idea上本地调试呢?
搭建本地mapreduce调试环境,与scala spark工程共存
网上大部分说是
1.下载hadoop的2.6.0 source版
2.配置环境变量
3.在project structure 中添加一个modules,在dependencies添加hadoop share中的common,hdfs,mapreduce,yarn,lib目录 (在project的最顶端按f4可以直接打开)
4.在project structure/artifacts 中添加一个空jar
5.取个名字
6.在下面的加号中选择module output (这一步差不多输出目录的意思吧)
7.在工程中添加输入输出目录
8.最后编辑需要运行的工程edit configurtations,添加输入 输出目录(这一步网上各有说法,我尝试了很多种,最后是使用如下的方式才能成功)
主要是在program arguments中添加输入 输出目录(有些博客这地方也会添加jar包路径和主类名称,我都尝试了,但是不成功,最后只添加输入 输出目录)
添加hadoop2.6.0 source版的这些包
运行的时候出现错误
第一个自己发现的文件,发现 slf4j jar包有冲突,先去掉从hadoop2.6.0 source版引入的
错误消除
继续运行,出现错误
java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO
网上大部分说的是修改源码,这感觉有点不好弄呀,再找找
个人感觉主要问题,好像还是hadoop的环境变量问题或者像是少了这个winutils.exe?
2017-01-02 13:52:07,645 ERROR [main] util.Shell (Shell.java:getWinUtilsPath(378)) - Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable E:\chenxi\开发\hadoop\hadoop-2.6.0\bin\winutils.exe in the Hadoop binaries.
找了到一篇博客
http://www.cnblogs.com/longshiyVip/p/4805418.html
博主提供了如下文件,大致内容可以阅读该博客
把以上内容全部放到hadoop bin目录和windows system32目录后
MR正常运行
但是这里有2个引包的部分
从mevan中引
从hadoop2.6.0 source版目录中引
我从hadoop中引完包,可以运行,也能正常输出运行日志没问题
但是不想这样,我想全部走mevan中引
加了几条pom的信息,去掉从hadoop2.6.0 source版目录的引入
pom信息hadoop方面的如下
最后MR还是能运行,但是不出运行日志,错误如下
自己在另一个spark工程里有个这样的操作,单独搞了个log4j文件(也是运行日志方面的操作),我在这边也试试看能不能行。
把另一个spark工程里的log4j文件复制到这个工程中
引个包
import org.apache.log4j.PropertyConfigurator;
在需要运行的main函数中加入如下代码
PropertyConfigurator.configure(".\\src\\log4j.properties");
好了,可以跑了
当然了,mapreduce能本地调试
spark肯定也没问题啦,而且spark只需要引几个包就行了比mapreduce配置要简单很多
同时可以在这一个工程中本地调试mapreduce和spark
而且打的jar分别也能在集群中运行mapreduce和spark
睡到半夜起来。发现1号【过往记忆】有篇博客更新
scala和java可以放到一个mevan工程里面,https://www.iteblog.com/archives/1947
一不做二不休,起来试试吧
pom配置文件里面的插件地方要添加这些
主要是这几个插件
org.apache.maven.plugins
net.alchim31.maven
maven-assembly-plugin 貌似感觉第3个没用,查查中央库,没看明白干嘛,我就引了前面2个
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <scala.version>2.10.4</scala.version> <java-version>1.7</java-version> </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>3.1.6</version> <configuration> <scalaCompatVersion>2.10</scalaCompatVersion> <scalaVersion>${scala.version}</scalaVersion> </configuration> <executions> <execution> <phase>compile</phase> <goals> <goal>compile</goal> <goal>testCompile</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
添加完pom后
需要在目录中建立一个scala的文件夹
一个jar,既可以跑MR又可以跑spark,有意思
但是这都是上传到集群上跑的呀,多麻烦呀,我试试本地调试呢。
spark是没问题。
hadoop的mapreduce怎么在idea上本地调试呢?
搭建本地mapreduce调试环境,与scala spark工程共存
网上大部分说是
1.下载hadoop的2.6.0 source版
2.配置环境变量
3.在project structure 中添加一个modules,在dependencies添加hadoop share中的common,hdfs,mapreduce,yarn,lib目录 (在project的最顶端按f4可以直接打开)
4.在project structure/artifacts 中添加一个空jar
5.取个名字
6.在下面的加号中选择module output (这一步差不多输出目录的意思吧)
7.在工程中添加输入输出目录
8.最后编辑需要运行的工程edit configurtations,添加输入 输出目录(这一步网上各有说法,我尝试了很多种,最后是使用如下的方式才能成功)
主要是在program arguments中添加输入 输出目录(有些博客这地方也会添加jar包路径和主类名称,我都尝试了,但是不成功,最后只添加输入 输出目录)
添加hadoop2.6.0 source版的这些包
运行的时候出现错误
第一个自己发现的文件,发现 slf4j jar包有冲突,先去掉从hadoop2.6.0 source版引入的
错误消除
继续运行,出现错误
java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO
网上大部分说的是修改源码,这感觉有点不好弄呀,再找找
个人感觉主要问题,好像还是hadoop的环境变量问题或者像是少了这个winutils.exe?
2017-01-02 13:52:07,645 ERROR [main] util.Shell (Shell.java:getWinUtilsPath(378)) - Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable E:\chenxi\开发\hadoop\hadoop-2.6.0\bin\winutils.exe in the Hadoop binaries.
找了到一篇博客
http://www.cnblogs.com/longshiyVip/p/4805418.html
博主提供了如下文件,大致内容可以阅读该博客
把以上内容全部放到hadoop bin目录和windows system32目录后
MR正常运行
但是这里有2个引包的部分
从mevan中引
从hadoop2.6.0 source版目录中引
我从hadoop中引完包,可以运行,也能正常输出运行日志没问题
但是不想这样,我想全部走mevan中引
加了几条pom的信息,去掉从hadoop2.6.0 source版目录的引入
pom信息hadoop方面的如下
<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-common</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-jobclient</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-core</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-yarn</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-yarn-common</artifactId> <version>2.6.0-cdh5.5.0</version> </dependency>
最后MR还是能运行,但是不出运行日志,错误如下
自己在另一个spark工程里有个这样的操作,单独搞了个log4j文件(也是运行日志方面的操作),我在这边也试试看能不能行。
把另一个spark工程里的log4j文件复制到这个工程中
引个包
import org.apache.log4j.PropertyConfigurator;
在需要运行的main函数中加入如下代码
PropertyConfigurator.configure(".\\src\\log4j.properties");
好了,可以跑了
当然了,mapreduce能本地调试
spark肯定也没问题啦,而且spark只需要引几个包就行了比mapreduce配置要简单很多
相关文章推荐
- Windows 使用Eclipse配置连接hadoop,编译运行MapReduce --本地调试WordCount
- Spark - 使用IDEA远程调试位于Yarn-Client模式下的Spark集群相关配置
- idea本地调试spark
- Spark远程调试配置,在IDEA中的配置
- Inteliij IDEA 配置CDH5.11.0版本spark本地开发环境
- [置顶] 安装Idea(集成scala)以及在windows上配置spark(hadoop依赖)本地开发环境
- 关于在eclipse中调试mapreduce任务的环境搭建和配置过程
- weblogic配置debug本地调试
- 【C++&&OpenCV】解决cvLoadImage等函数不能进行单步调试的OpenCV配置问题
- 用“本地系统帐户”登录而SQL Server配置作为服务运行,则SP调试可能不会正常工作。
- VS2010 混合模式程序集是针对"v1.1.4322"版的运行时生成的 在没有配置其他信息的情况下 无法再4.0运行中
- Spark插件二次开发时在Eclipse的调试配置
- webservice Server Error in '/' Application 本地调试没错,服务器上就错误的解决方法
- Archlinux下wordpress本地安装 &&Archlinux下lampp环境配置..
- win7安装hadoop及eclipse调试mapreduce的配置方法
- Windows下 maven3.0.4的安装步骤+maven配置本地仓库<转>
- MapReduce 程序本地调试 / Hadoop 操作本地文件系统
- inux环境生成core文件 &&Linux Core Dump 配置与调试
- 编译器&调试---Android在Xp下的环境配置
- 思科交换机密码配置和清除思科交换机密码配置 及路由器设置本地登录用户