properties - NiFi 的 PutHiveStreaming 处理器不会从 hive-site.xml 中获取属性
问题描述
我想使用 NiFi 将数据插入配置单元表。
我见过的最好和最简单的选择是使用“PutHiveStreaming”处理器。我知道使用此处理器需要满足的设置;其中一些是关于可以在表创建期间完成的 hive 表,有些是关于 hive 属性,例如:
- hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.DbTxnManager
- hive.compactor.initiator.on = true
- hive.compactor.worker.threads > 0
我在 $HADOOP_HOME/conf 目录中的 hive-site.xml 中设置了这些属性,并在“Hive 配置资源”下提供了该处理器的完整路径。但是,hive-site.xml 中的这些属性不会被此处理器拾取。
不幸的是,我们无权 $HIVE_HOME/conf 或 /etc/hive/conf 直接更改 hive-site.xml。
有人可以解释为什么赋予该处理器的 hive-site.xml 属性没有被拾取,以及在使用 NiFi 时覆盖 hive 属性的解决方法是什么?即:有没有办法为给定的流文件执行多个查询?
解决方案
我相信这些是需要在 HiveServer2 实例上设置的服务器属性,而不是 NiFi 客户端。
仅供参考,如果您运行的是 1.2.0 之前的 NiFi 版本,您可能会遇到NIFI-3530。我不认为这是这里的问题,而是您需要在 HiveServer2 实例使用的 hive-site.xml 文件中设置这些属性。
推荐阅读
- node.js - next.js 逐步构建源文件
- python - 机器学习回归以支持多变量回归
- python - 根据列中的值操作熊猫数据框
- unity3d - 是否可以强制派生类覆盖 Unity 中的整个基类?
- git - Azure Pipeline“致命:无法读取用户名”访问第二个存储库
- python - 有没有更快的方法从 python 运行这个 matlab 脚本?
- webpack - 在使用 NextJS 进行 Amplify 构建期间“错误:无法解析 'bufferutil'”
- kubernetes - 如何通过 Kustomize 替换注释中的变量?
- aws-appsync - AppSync:创建具有子类型的资源
- javascript - 回调函数的返回值未定义