2013-09-12 2 views
0

Я пытаюсь использовать пакет RJDBC для подключения R (на локальном компьютере) с помощью Hive (server), и я вижу ошибки:Ошибка RJDBC при попытке подключиться к серверу Hive: org.apache.thrift.TApplicationException: Недопустимое имя метода: 'execute'

Ошибка в .jcall (DRV @ jdrv, "Ljava/SQL/Connection;", "подключить", as.character (URL) [1],: java.sql.SQLException: org.apache.thrift.TApplicationException: Недопустимое имя метода: 'execute'

Я непосредственно скопировал банки, которые работают на сервере, на мою локальную машину, что не должно быть проблемой с версиями драйвера. пытался использовать более ранние версии sions пакета RJDBC, но это не сработало.

Я бы очень признателен за любые идеи/предложения.

Мой сценарий:

#

hive_connection < - функция (имя хоста, порт, lib_dir, hive_jars) { библиотека (RJDBC) библиотека (DBI) библиотека (rJava) библиотека (Rserve)

# lib_dir: каталог, содержащий баночки & драйверы hive_class_path < - file.path (lib_dir, hive_jars)

drv < - JDBC ('org.apache.hadoop.hive.jdbc.HiveDriver', classPath = hive_class_path, "` ") сервер < - sprintf ('jdbc: hive: //% s:% s', hostname , порт)

возврата (БДСВЯЗЬ (DRV, сервер, 'улья', 'улей'))}

< сопп - hive_connection ('имя хоста', 9083, 'lib_dir', list.files (» lib_dir '))

ответ

0

Это связано с драйвером и портом, я столкнулся с такой же ошибкой при подключении улья с драйвером jdbc. наконец, я узнал, как правильно управлять драйвером и улей с портом. он работал нормально.

0

Попробуйте
drv <- JDBC('org.apache.hadoop.hive.jdbc.HiveDriver',c(hive_class_path ,pattern="jar$" ,full.names=T))

0

Я решил один и тот же вопрос, выполнив два шага -

Изменить 1:

drv <- JDBC('org.apache.hive.jdbc.HiveDriver', classPath= hive_class_path, "`") 

Изменение в драйвере, обратите внимание, я вынул .hadoop

Изменение 2:

server <- sprintf('jdbc:hive2://%s:%s', hostname, port) 

Я добавил «2» в URL для подключения, чтобы подключиться к hiveServer2.

Я получил подробное объяснение, прочитав это - http://jayunit100.blogspot.com/2013/12/the-anatomy-of-jdbc-connection-in-hive.html