gpt4 book ai didi

使用 RHive 包的 R 到 Hive 连接

转载 作者:行者123 更新时间:2023-12-04 05:19:11 25 4
gpt4 key购买 nike

我在 Windows PC 上安装了 R 2.15.2。
Hadoop 和 Hive 在另一台 PC 上。
我将 RHive 及其依赖项加载到 R 中。
现在我正在尝试连接到 Hive。

> Sys.setenv(HIVE_HOME="/home/hadoop/hive-0.7.0-cdh3u0")
> Sys.setenv(HADOOP_HOME="/home/hadoop/hadoop-0.20.2-cdh3u0")
> library(RHive)
> rhive.env(ALL=TRUE)

Hive Home Directory : /home/hadoop/hive-0.7.0-cdh3u0
Hadoop Home Directory : /home/hadoop/hive-0.7.0-cdh3u0
Hadoop Conf Directory :
No RServe
Disconnected HiveServer and HDFS
RHive Library List
C:/Program Files/R/R-2.15.2/library/RHive/java/rhive_udf.jar /home/hadoop/hive-0.7.0-cdh3u0/conf


> rhive.init()

[1] "there is no slaves file of HADOOP. so you should pass hosts argument when you call rhive.connect()."
Error in .jnew("org/apache/hadoop/conf/Configuration") : java.lang.ClassNotFoundException
In addition: Warning message:
In file(file, "rt") : cannot open file '/home/hadoop/hadoop-0.20.2-cdh3u0/conf/slaves': No such file or directory


> rhive.connect(hdfsurl="hdfs://212.63.135.149:9000/")

Error in .jnew("org/apache/hadoop/conf/Configuration") : java.lang.ClassNotFoundException



结果是连接错误!

甚至尝试过 rhive.connect(host = "212.63.135.149", port = 10000, hdfsurl="hdfs://212.63.135.149:9000/") ,但没有用。

最佳答案

几周前我在安装 RHive 时遇到了同样的问题。这是因为一些 jar 文件不在 rhive.init 中设置的 classpath 中。
您需要设置参数 hive、libs、hadoop_home、hadoop_conf、hlibs,它们指示这些 jar 文件所在的位置。

我首先从源代码安装,它与 rhive.init 一起工作,但 rhive.connect 无法正常工作。当我通过 Cloudera 管理器安装 Hive 时,它​​确实发挥了作用 https://ccp.cloudera.com/display/CDH4DOC/Hive+Installation .所以我建议你按照那里的说明进行操作,它有据可查。

关于使用 RHive 包的 R 到 Hive 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13856185/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com