运行 使用 crontab 通过脚本进行 hive 查询

Running hive query through the script by using crontab

您好,我正在通过 shell 脚本执行配置单元查询,它完美地执行,同时我正在通过 crontab 调度相同的脚本,它显示了一个错误。我的脚本是休闲

出口JAVA_HOME=/install/bi/jdk hiveQuery=/install/bi/hive/bin/hive -e " set hive.security.authorization.enabled=false; select * from default.xmlsample;"

echo $hiveQuery

错误是

使用 jar:file 中的配置初始化日志记录:/install/bi/hive/lib/hive-common-0.12.0.jar!/hive-log4j.properties 失败:SemanticException [错误 10001]:未找到行 2:14 Table 'xmlsample' 哪位知道的请帮帮我

"Table not found" 错误消息表明,当您通过 cron 运行 时,未找到 Hive 元存储。 Metastore 是包含元数据的数据库,这些元数据将 table 定义映射到 HDFS 中的数据。它通常是一个单独的 RDBMS 进程,例如 MySQL 或 PostgreSQL。元存储的详细信息通常保存在 "hive-site.xml" 文件中。

您的 cron 进程似乎没有找到与您自己 运行 脚本时相同的 Metastore。可能是 $HADOOP_HOME 或 $HIVE_HOME 等环境变量未在 cron 作业 运行s.

的上下文中设置