4

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

  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 服务器。

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

然后我就可以发出类似 show databases 的命令了。但是如何访问自定义 UDF?我想通过在 Thrift Server 启动脚本中添加--jars选项,这将添加 jar 以供 Hive 资源使用。

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

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

然后创建UDF的函数。

问题: 有没有一种方法可以自动配置自定义 UDF jar,而无需每次都向 spark 会话添加 jar?

谢谢!

4

1 回答 1

0

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

  1. 等待服务器准备好
  2. 执行设置 SQL 查询

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

于 2019-07-22T09:37:28.923 回答