我正在尝试将自定义环境变量传递给 Hive 转换中使用的可执行文件(下面示例中的 my-mapper.script) 例如:
SELECT
TRANSFORM(x, y, z)
USING 'my-mapper.script'
FROM
(
SELECT
x, y, z
FROM
table
)
我知道在 Hadoop 流中这可以使用
来实现-cmdenv EXAMPLE_DIR=/home/example/dictionaries/
但我不知道如何在 Hive Transform/MapReduce 中执行此操作。
有什么想法吗?
最佳答案
您可以使用简单的 2 行 bash 脚本包装脚本来设置环境。例如
#!/bin/sh
export FOO=boo
my-mapper.script
然后在查询中使用这个脚本
USING 'wrapper.sh'
my-mapper.script 将在环境中看到 FOO(值为“boo”)。
关于hadoop - 将环境变量传递给 Hive Transform 或 MapReduce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16339123/