I'm trying to connect R to Hadoop using Phoenix but I get the following error:
Error in .jcall(drv@jdrv, "Ljava/sql/Connection;", "connect", as.character(url)[1], : java.sql.SQLException: java.lang.IllegalArgumentException: Can't get Kerberos realm
Below you can find my R code. Anyone knows how to correct this to be able to connect without errors?
library(RJDBC)
library(rJava)
library(DBI)
Sys.setenv(JAVA_TOOL_OPTIONS="-Djava.security.krb5.conf=/path/to/krb5.conf")
.jinit(,"-Djavax.security.auth.useSubjectCredsOnly=false")
.jaddClassPath(Sys.glob("/path/to/site-xml"))
# this folder contains core-site.xml, hbase-site.xml and hdfs-site.xml
drv <- JDBC("org.apache.phoenix.jdbc.PhoenixDriver",
"/path/to/phoenix-4.4.0.2.3.2.0-2950-client.jar",
identifier.quote = "'"
)
conn <- dbConnect(
drv,
"jdbc:phoenix:IP1,IP2,IP3:2181:/hbase-secure:USER@HADOOP.COM:/path/to/keytab/file.keytab",
"",
""
)
result <- dbGetQuery(conn, "select * from \"TABLE_NAME\"")
print(result)