may/reduce コードを作成するために Hadoop C++ パイプを使用したいと考えています。そして、入力データはバイナリです。getSplits ロジックを制御するために inputformat をカスタマイズしたいのですが、それが可能な解決策であるかどうかはわかりません。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)
それは理にかなっていますか?