P******d 发帖数: 137 | 1 【 以下文字转载自 Statistics 讨论区 】
发信人: PlayCold (玩酷), 信区: Statistics
标 题: 请问如何用JDBC连接R和Hive
发信站: BBS 未名空间站 (Mon Jan 13 14:48:18 2014, 美东)
因为平时都是在Hive下把数据先从Hadoop中提取出来,放到AWS的S3里面,再下载到自
己的电脑上。我想要尝试直接连接R和Hive,用JDBC Driver。
在stackoverflow上找到这个帖子:
http://stackoverflow.com/questions/6057875/establishing-a-conne
但是我在自己尝试的时候,老是出现错误
Error in .jfindClass(as.character(driverClass)[1]) : class not found
这是我的Code:
hive_connection <- function(hostname='myhostname',
port= myportnumber,
lib_dir="my/dir" ){
hive_jars <- c('commons-logging-1.1.3.jar',
'hadoop-core-1.2.1.jar',
'hive-exec-0.12.0.jar',
'hive-jdbc-0.12.0.jar',
'hive-metastore-0.12.0.jar',
'hive-service-0.12.0.jar',
'libfb303-0.9.1.jar',
'libthrift-0.5.0.jar',
'log4j-1.2.17.jar',
'slf4j-api-1.7.5.jar',
'slf4j-log4j12-1.7.5.jar' )
# lib_dir: directory containing the jars above.
hive_class_path <- sprintf('%s/%s', lib_dir, hive_jars)
drv <- JDBC( driverClass="org.apache.hadoop.hive.jdbc.HiveDriver",
classPath= hive_class_path,
identifier.quote="`" )
server <- sprintf( 'jdbc:hive://%s:%s/default', hostname, port )
return ( dbConnect( drv, server ) )
}
hive_connection()
那些.jar文件都是在http://mvnrepository.com/上下的,版本和原贴里面不太一样。因为在QuestDataHub那个软件里面没有找到.jar文件
请大牛们给点建议,多谢了 |
|