在没有 Impala JDBC 驱动程序的情况下从 R 连接到 Impala
Posted
技术标签:
【中文标题】在没有 Impala JDBC 驱动程序的情况下从 R 连接到 Impala【英文标题】:Connecting to Impala from R without Impala JDBC driver 【发布时间】:2019-08-17 09:10:23 【问题描述】:由于未公开的原因,我的 Impala 没有安装 JDBC 驱动程序。这使得connection from R to Impala 具有挑战性。
我可以通过 Putty 连接(和查询)Impala shell。例如,
impala-shell --ssl -i some_name
使用 Putty 连接机制/凭据,这可以从 RStudio 执行并将SELECT
结果引入数据帧吗?
【问题讨论】:
也许,如果结果不是太大,您可以使用impala-shell --ssl -i some_name -q "query" --output_file <output_filename> --output_delimiter=<character>
选项将其导出为csv?
可以在没有 JDBC 驱动的情况下从 R 运行此命令吗?
你可以通过远程 shell 执行它,***.com/questions/305035/…。抱歉,我不是 RStudio 专家。
【参考方案1】:
这在我的 Oracle BDA 集群中有效。
library(dsreq)
print("Connecting to Impala...")
impaladb <- impalaConnection(pool='general')
dbResultsTempTbl <- dbGetQuery(impaladb, paste0("SELECT * FROM mytable") )
print("results")
print(dbResultsTempTbl)
【讨论】:
【参考方案2】:您可以使用 ODBC 驱动程序连接到 impalaDB
library(ODBC)
drv <- odbc::odbc()
con <- DBI::dbConnect(drv = drv, driver = "Cloudera ODBC Driver for Impala",
host = "your hostname", port = 21050, Schema = "your schema")
【讨论】:
以上是关于在没有 Impala JDBC 驱动程序的情况下从 R 连接到 Impala的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 Impala JDBC 驱动程序通过 Java 应用程序连接到 Impala
为啥我可以在没有任何配置文件的情况下从 App Store 运行应用程序?