0

我试图使用连接到蜂巢,RHive但我收到连接被拒绝错误。

library(RHive)
Loading required package: rJava
Loading required package: Rserve
This is RHive 0.0-7. For overview type â?RHiveâ.
HIVE_HOME=/home/surya/hive-0.8.1
call rhive.init() because HIVE_HOME is set.
> rhive.connect()
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl,  :
  org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused
NULL
4

2 回答 2

1

打开您的终端并按照以下步骤操作。

  1. 首先启动你的 hadoop hdfs

    cd /usr/local/hadoop && /bin/start-all.sh

  2. 开始你的蜂巢服务

    cd /usr/local/hive/ && bin/hive --service hiveserver

它将开始进程并且不会关闭您的终端

现在打开您的 R/Rstudio 并运行以下语句

library(Rserve) #loading R server package
Rserve(args=”—no-save”)
Sys.setenv(HADOOP_HOME=”/usr/local/hadoop”)
Sys.setenv(HIVE_HOME=”/usr/local/hive”)
library(RHive)
rhive.connect()
rhive.env()
rhive.init()
x=1:10
y=x**2
xy=data.frame(x,y)
rhive.write.tables(xy)
rhive.list.tables()

现在你可以在 hive 上看到一张 xy 表

于 2013-07-04T07:13:40.207 回答
0

我也遇到了同样的问题,并且能够通过在 Linux CentOS 6.2 中通过简单的命令为 R 重新配置 Java来解决这个问题:

$R CMD javareconf

于 2013-12-11T20:07:55.860 回答