2017-05-24 20 views
0

リモートサーバー上のHue経由でアクセスしているHiveのデータにRStudioを接続しようとしています。RをリモートサーバーのHiveに接続する

これは私の現在のコードです:

options(java.parameters = "-Xmx20g") 
library("DBI") 
Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre1.8.0_131') 
library("rJava") 
library("RJDBC") 
drv <- JDBC("org.apache.hadoop.hive.jdbc.HiveDriver", 
      c(list.files("C:/Users/xxx/Desktop",pattern="jar$",full.names=T), 
       list.files("C:/Users/xxx/Desktop",pattern="jar$",full.names=T))) 

私は私のデスクトップにハイブのJARファイルをダウンロードし、xxxは正しいファイルパスです。ここまでのすべてがRStudioで正常に動作します。しかし

、私は次の行を実行すると:

IPアドレス、ユーザー名、およびパスワードは、私は次のエラーがすべて正しい経験しているでは
conn <- dbConnect(drv, "jdbc:hive2://IP ADDRESS", "usrnm", "password") 

Error in .jcall([email protected], "Ljava/sql/Connection;", "connect", as.character(url)[1], : java.lang.NoClassDefFoundError: org/apache/thrift/TBase 

どれでも役立つだろう大変感謝しています。どうもありがとうございます。

答えて

1

あなたには、欠けているジャー/ライブラリはありません。

したがって、TBaseクラスを見つけることができません。

hive-exec-x.x.x.jarを追加して正常に動作するかどうかを確認してください。

このリンクをチェックしてください http://snacktrace.com/artifacts/org.apache.hive/hive-exec/1.1.1/org.apache.thrift.TBase

それが役に立てば幸い!

+0

ありがとうございます。私はこの瓶をダウンロードして再び走った。現在、次のエラーが発生しています。エラー.jcall(drv @ jdrv、 "Ljava/sql/Connection;"、 "接続"、as.character(URL)[1]: java.lang.NoClassDefFoundError:com/ –

+0

クラスパスに必要なすべてのライブラリ/ jarファイルを確実に追加できましたか? –

+0

@Grunvaldskaya Bitva:答えが提供された場合、あなたの質問が解決されます。私の答えは緑の矢印で正しいとし、新しいスレッドで新しい質問をしてください。 –

関連する問題