如何通过Spark Thrift Server访问自定义UDF?

时间:2017-08-07 18:01:15

标签: hive user-defined-functions amazon-emr spark-thriftserver

我在EMR上运行Spark Thrift Server。我通过以下方式启动Spark Thrift Server:

  sudo -u spark /usr/lib/spark/sbin/start-thriftserver.sh --queue interactive.thrift --jars /opt/lib/custom-udfs.jar

请注意,我有一个客户UDF jar,我想将它添加到Thrift Server类路径中,所以我在上面的命令中添加了--jars /opt/lib/custom-udfs.jar。

我进入EMR后,发出以下命令连接到Spark Thrift Server。

beeline -u jdbc:hive2://localhost:10000/default

然后我能够发布show database这样的命令。但是如何访问自定义UDF?我想通过在Thrift Server启动脚本中添加 - jars 选项,这将添加用于Hive资源的jar。

我现在可以访问自定义UDF的唯一方法是将客户UDF jar添加到Hive资源

add jar /opt/lib/custom-udfs.jar

然后创建UDF的功能。

问题: 有没有办法自动配置自定义UDF jar而不必每次都向jar会话添加jar?

谢谢!

1 个答案:

答案 0 :(得分:0)

最简单的方法是最后编辑文件start-thriftserver.sh

  1. 等待服务器已准备就绪
  2. 执行安装程序SQL查询

您还可以在JIRA上发布提案,这是一项非常好的功能,“在启动时执行设置代码”。