【问题标题】:Read hive table from R using ORCH使用 ORCH 从 R 读取配置单元表
【发布时间】:2017-01-18 07:36:26
【问题描述】:

在 Oracle 大数据机中,我们使用 Oracle R 发行版,我们的 Hadoop 是 Kerberos 安全的。首先,我从 kerberos 取票

R>   system("echo **[myPass]** | kinit **[myUser]**")

我在集群中使用 Oracle R 发行版。所以我在 R 中安装了 ORCH 包。并将我的矿石类型设置为 Hive。

R>   library("ORCH")
R>   ore.connect(type="HIVE")

之后,我想读取一个位于 hive 中的维度简单表

R>   dim(ore.get(name = "a_trial", schema = "tgar"))

然后我收到以下错误。

get(name, envir = env) 中的错误:找不到对象“a_trial”

实际上,a_trial 表存在于 tgar 模式中。假设表有问题,我正在尝试这样的简单查询

R> ore.sync(query = c("QUERY1" = "SHOW DATABASES"))

错误是这样的

错误:HIVE 命令失败

我做错了什么?如何通过 ORCH 库成功连接 R 中的 hive?

【问题讨论】:

  • 我更改了我的简单查询示例 :) @SamsonScharfrichter
  • 我对 R 的一般知识一无所知,尤其是对那个奇怪的 Oracle 扩展一无所知,但他们的文档指出 ore.attach()"...附加当前 envt 所必需的. 进入R的搜索路径”
  • 我也试过了。但没有任何改变@SamsonScharfrichter

标签: r oracle hadoop hive


【解决方案1】:

我们前段时间遇到过同样的问题。 我们解决了将领域传递给模式参数的问题,如下所示:

ore.connect(user="USERNAME", password="PASSWORD", host="HOSTNAME", schema="SCHEMA_NAME;principal=REALM", type="HIVE"),

其中 REALM 取自 hive-conf.xml。 建立有效连接后,您可以显式更改架构,例如:

ore.sync(schema="SCHEMA_NAME", table="TABLE_NAME")

【讨论】:

  • 当我在 ore.connect 函数中传递架构属性时,我收到错误:未使用的参数 (schema = "TGAR;principal=REALM") 或未使用的参数 (schema = "TGAR")。添加 REALM 作为值没有意义。 @Gianluca我的完整脚本是这样的 ore.connect(user = "xx", password="yyy", host="helloKitty", schema="TGAR;principal=REALM", type="HIVE" )
猜你喜欢
  • 1970-01-01
  • 2021-12-22
  • 1970-01-01
  • 2022-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-01
  • 1970-01-01
相关资源
最近更新 更多