복붙노트

[HADOOP] 하이브 버전 0.14.0 및 RDBC 패키지를 통해 R에서 JDBC 연결

HADOOP

하이브 버전 0.14.0 및 RDBC 패키지를 통해 R에서 JDBC 연결

나는 기계 1에서 실행 hiveserver 데

코드에 따라 나는 JDBC 연결에 사용했다

hive_jars <- list.files("/home/jar/hive_jdbc_jar/", 
               pattern = "[.]jar", full.names=FALSE, recursive=TRUE)

lib_dir <- "/home/jar/hive_jdbc_jar/"

hive_class_path <- sprintf( '%s/%s', lib_dir, hive_jars )

.jinit(classpath=hive_class_path, parameters="-DrJava.debug=true")

hostname <- "10.140.224.64"
port <- "10000"
drv <- JDBC( 'org.apache.hadoop.hive.jdbc.HiveDriver',  classPath= hive_class_path, "`" )
server <- sprintf( 'jdbc:hive://%s:%s/default', hostname, port )
hiveconnection <- dbConnect( drv, server )

나는 점점 오전 오류

Error in .jcall(drv@jdrv, "Ljava/sql/Connection;", "connect",    as.character(url)[1],  : 
java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hive.conf.HiveConf$ConfVars

내가 추가 한 항아리

  "antlr-2.7.7.jar" 
  "antlr-runtime-3.4.jar"           "commons-logging-1.1.3.jar"      
  "derby-10.10.1.1.jar"             "hadoop-common-2.4.1.jar"         "hive-exec-0.14.0.jar"           
 "hive-jdbc-0.14.0-standalone.jar" "hive-jdbc-0.14.0.jar"            "hive-metastore-0.14.0.jar"      
"hive-service-0.14.0.jar"         "jdo-api-3.0.1.jar"               "libfb303-0.9.0.jar"             
"libthrift-0.9.0.jar"             "log4j-1.2.16.jar"                "slf4j-api-1.7.5.jar"            
"slf4j-log4j12-1.7.5.jar"

https://cwiki.apache.org/confluence/display/Hive/HiveClient

해결법

    from https://stackoverflow.com/questions/35063755/jdbc-connection-to-hive-version-0-14-0-and-from-r-via-rdbc-package by cc-by-sa and MIT license