我正在尝试从Airflow的本地副本连接到我的Hive服务器,但是好像HiveCliHook试图在连接到我的Hive的本地副本。
我正准备进行以下测试:
\\u00ca
哪个抛出此错误:
Series.str.decode('unicode-escape')
有人知道我要去哪里吗?
答案 0 :(得分:0)
虽然您可以使用HiveCliOperator
(未更改)在远程 HQL
中连接和执行Hive-Server
语句,唯一的要求是运行您的Airflow
worker
的框还必须包含已安装的Hive
个二进制文件
之所以这样,是因为hive-cli command prepared by HiveCliHook
将通过旧的bash
在工作机中运行。 At this stage,如果未在运行此代码的计算机(即您的Airflow工作人员)中安装Hive CLI
,它会根据您的情况而中断
直接解决方法是实施自己的RemoteHiveCliOperator
实际上,这似乎是几乎所有Airflow Operator
的普遍缺陷,默认情况下,它们希望每个工人都安装必需的软件包。 docs对此进行警告
例如,如果您使用HiveOperator,则配置单元CLI必须是 安装在那个盒子上