我想使用 hadoop c++ 管道来创建我的 may/reduce 代码。并且输入数据是二进制的,我想自定义输入格式来控制 getSplits 逻辑......但我不确定这是否是一个可能的解决方案。我尝试在 cli 中分配我的自定义 inputformat 类,但未能运行。
../bin/hadoop pipes -conf testframework.xml -input input -output output -inputformat TestInputFormat.class
我得到以下错误:
Exception in thread "main" java.lang.ClassNotFoundException: TestInputFormat.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:812)
at org.apache.hadoop.mapred.pipes.Submitter.getClass(Submitter.java:372)
at org.apache.hadoop.mapred.pipes.Submitter.run(Submitter.java:421)
at org.apache.hadoop.mapred.pipes.Submitter.main(Submitter.java:494)
那有意义吗?