我有一个用Scala编写的胶水作业(Spark作业),我想将参数传递给它。我使用lambda函数来触发作业。我应该如何访问传递给作业的参数?
这是正确的方法吗?
def main(sysArgs: Array[String]) {
/** This is input parameter */
val par = sysArgs(0)
}
还是其他?
答案 0 :(得分:3)
使用GlueArgParser解析参数:
import com.amazonaws.services.glue.util.GlueArgParser
val args = GlueArgParser.getResolvedOptions(
sysArgs, Array(
"JOB_NAME",
"CUSTOM_PARAMETER")
)
val param = args("CUSTOM_PARAMETER")
请注意,参数应使用前缀--
(即--CUSTOM_PARAMETER
)传递