这里是我的代码,它连接到hadoop机器,执行一组验证,并在另一个目录上编写。
public class Main{
public static void main(String...strings){
System.setProperty("HADOOP_USER_NAME", "root");
String in1 = "hdfs://myserver/user/root/adnan/inputfile.txt";
String out = "hdfs://myserver/user/root/cascading/temp2";
Properties properties = new Properties();
AppProps.setApplicationJarClass(properties, Main.class);
HadoopFlowConnector flowConnector = new HadoopFlowConnector(properties);
Tap inTap = new Hfs(new TextDelimited(true, ","), in1);
Tap outTap = new Hfs(new TextDelimited(true, ","), out);
Pipe inPipe = new Pipe("in1");
Each removeErrors = new Each(inPipe, Fields.ALL, new BigFilter());
GroupBy group = new GroupBy(removeErrors, getGroupByFields(fieldCols));
Every mergeGroup = new Every(group, Fields.ALL, new MergeGroupAggregator(fieldCols), Fields.RESULTS);
FlowDef flowDef = FlowDef.flowDef()
.addSource(inPipe, inTap)
.addTailSink(mergeGroup, outTap);
flowConnector.connect(flowDef).complete();
}
Cascading.tap.hadoop.io.MultiInputSplit在org.apache.hadoop.mapred.maptask.getSplitDetails(maptask.java:348)在org.apache.hadoop.mapred.maptask.runoldMapper(maptask.java:389)在org.apache.hadoop.mapred.maptask.run(maptask.java:333)在org.apache.hadoop.mapred.child$4。run(child.java:268)在
java.lang.ClassNotFoundException:在org.apache.hadoop.conf.Configuration.GetClassByName(Configuration.java:1493)中找不到类Cascading.tap.hadoop.io.MultiInputSplit
注意:1。我是从我的windows机器上运行的,而hadoop是在不同的盒子上设置的。2.我使用的是cloudera发行版的hadoop,也就是CDH4。
您的属性文件为空,因此集群上的此作业配置可能关闭。必须为HadoopflowController
提供正在使用的配置。在调用new Configuration
时发现的Hadoop配置文件中包含的信息属于properties
对象-例如fs.default.name=file:///
等。我想当您通过“线”运行级联作业时,情况就更糟了。
问题内容: 这是我的代码,它连接到hadoop机器并执行一组验证并写在另一个目录上。 } 我的工作正在提交给hadoop机器。我可以在作业追踪器上查看此信息。但是工作失败了,下面出现了异常。 在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:389)的org.apache.hadoop.mapred.MapTask.getSpl
问题内容: 在Eclipse中运行JUnit测试时出现此错误: 尽管我正在使用maven,但我尝试在类路径中添加库,而JUnit库位于POM依赖项中。 我已经尝试清理项目,并使用Eclipse的JUnit插件创建了一个新的JUnit测试用例,但仍然遇到相同的错误。 问题答案: 出现这种情况的原因是,使用时只有源代码正在编译(我使用的是maven 3.1.0,所以我不确定它是否始终如此)。 如果运行
我正在尝试用单节点hadoop集群运行一个示例程序。我在运行示例程序(jar文件)时遇到一个异常。 多谢了。
javac-cp“lib/*”src/com/company/main.java 在myproject/src中,我尝试使用: JAVA-CP。COM/公司/主要 C:\myproject\src>javac-cp“lib/*”com/company/main.java C:\myproject\src>java-cp.;“lib/*”com/company/main 现在,代码编译和执行没有任何
我在一台机器上安装了sqoop(sqoop-1.4.4.bin__hadoop-1.0.0.tar.gzhttp://www.apache.org/dist/sqoop/1.4.4/)。当我尝试运行"$SQOOP_HOME/sqoop help"或任何其他命令时, 我收到以下错误: 警告:$HADOOP_HOME已弃用。 异常线程"main"java.lang.NoClassDefFoundErr