にハイブ登録UDFを使用しは、私は、以下のものを使用してビーラインを通じてハイブでUDFを登録スパーク
期待を返すSELECT udfTest(name) from myTable;
結果。
は、私はその後、スパーク・シェルを起動して、失敗し、次の
sqlContext.sql("SELECT udfTest(name) from myTable")
を実行します。スタックは数百行の長さである(私はここに貼り付けることができない)が、重要な部分は、以下のとおりです。
- org.apache.spark.repl.SparkIMain $ TranslatingClassLoaderはjava.net.URLClassLoader にキャストすることはできませんdefault.udftestのためのリソースを読み込むことができません
- :java.lang.IllegalArgumentExceptionが:登録できません[/tmp/blarg/pathToMyJar.jar]
何かが際立っている場合、私はより詳細な情報を提供することができます。
SparkでHiveを通じて登録されたUDFを使用することはできますか?
スパークバージョン1.3.0
これは、spark-shellを実行しているときに、実際のUDFクラスに対するjar内のクラスパスを知る必要があります。これは、アプリケーションの実行時にわからないことです。これ以外の方法はありますか? –
UDF JarをHDFS内のディレクトリ/パスにコピーして、それを知るようにspark-shellのパスを指定することができます。 – janeshs