我尝试使用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
答案 0 :(得分:1)
打开终端并按照以下步骤操作。
首先启动你的hadoop hdfs
cd / usr / local / hadoop&& /bin/start-all.sh
启动你的hive服务
cd / usr / local / hive /& amp;& 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表
答案 1 :(得分:0)
我也遇到了同样的问题,并且能够通过在Linux CentOS 6.2中通过简单命令重新配置Java for R来解决此问题:
$R CMD javareconf