kylin 连接 hortonworks 中的 hive 遇到的问题

    用 hortonworks(V3.1.0.0) 部署了 ambari (V2.7.3),用 ambari 部署了 hadoop 及 hive。

1.  启动 kylin(V2.6)时,遇到如下问题:

Retrieving hadoop conf dir...
KYLIN_HOME is set to /opt/programs/kylin
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Retrieving hive dependency...
Something wrong with Hive CLI or Beeline, please execute Hive CLI or Beeline CLI in terminal to find the root cause.

   经过查找,最后一行的错误信息是在 find-hive-dependency.sh 这个脚本中的,查看此脚本,是由于 hive_env 没有值引起的,

   进一步分析脚本,发现是因为脚本中的下面这段脚本没有得到值

hive_env=`hive ${hive_conf_properties} -e set 2>&1 | grep 'env:CLASSPATH'`

  直接在 shell 中运行上面的命令,确实没有输出。想了半天,把管道命令符前面的命令的输出,输出到一个文件。然后查找文件,发现是有 env:CLASSPATH 这一内容的。 但是为

    唯一能想到的原因是:管道符命令,前面命令的输出是有大小限制的,超过多少字符后,只能把最后多少个字符传给后面的命令。

    修改 find-hive-dependency.sh,把 hive_env=`hive ${hive_conf_properties} -e set 2>&1 | grep 'env:CLASSPATH'` 这一行删掉,加入下面几行后,kylin 能成功启动了。

    hive -e set >/tmp/hive_env.txt 2>&1
    hive_env=`grep 'env:CLASSPATH' /tmp/hive_env.txt`
    hive_env=`echo ${hive_env#*env:CLASSPATH}`
    hive_env="env:CLASSPATH"${hive_env}

 

2. kylin 创建 module 和 cube,可是在 build cube 时发生问题。在 stackoverflow 上提了此问题,也没有正确答案。后来还是偶然间,解决了问题。具体描述见

https://stackoverflow.com/questions/54702611/unable-to-read-hiveserver2-configs-from-zookeeper/54801284#54801284

posted @   一剑侵心  阅读(4577)  评论(3编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
点击右上角即可分享
微信分享提示