【问题标题】:how to access hadoop hdfs with greenplum external table如何使用greenplum外部表访问hadoop hdfs
【发布时间】:2012-06-04 03:28:38
【问题描述】:

oue 数据仓库是基于 hive 的,现在我们需要将数据从 hive 转换为 greenplum,我们想使用带有 gphdfs 的外部表,但看起来有些问题。 表创建脚本是

CREATE EXTERNAL TABLE flow.http_flow_data(like flow.zb_d_gsdwal21001)
LOCATION ('gphdfs://mdw:8081/user/hive/warehouse/flow.db/d_gsdwal21001/prov_id=018/day_id=22/month_id=201202/data.txt')
FORMAT 'TEXT' (DELIMITER '      ');

当我们运行时

bitest=# select * from flow.http_flow_data limit 1;
ERROR:  external table http_flow_data command ended with error. sh: java: command not found  (seg12 slice1 sdw3:40000 pid=17778)
DETAIL:  Command: gphdfs://mdw:8081/user/hive/warehouse/flow.db/d_gsdwal21001/prov_id=018/day_id=22/month_id=201202/data.txt

我们的 hadoop 是 1.0,greenplum 是 4.1.2.1

我想知道我们是否需要配置一些东西来让 gp 访问 hadoop

【问题讨论】:

    标签: hadoop greenplum


    【解决方案1】:

    你打开端口(8081)监听month_id=201202目录了吗?

    【讨论】:

      【解决方案2】:

      我会仔细检查管理员指南,我认为您可以使用 gphdfs,但要等到 greenplum 4.2

      【讨论】:

      • gpdhs 已添加到 4.1 但这是一个非常旧的版本。我认为问题在于网址显示“mdw:8081”。那应该是 Hadoop 集群的名称节点。 mdw 通常是 Greenplum 的主主机名。您还需要确保分段主机可以连接到 Hadoop 数据节点。
      【解决方案3】:

      您是否检查过 Java 是否安装在您的 Greenplum 系统上?因为这是 gphdfs 工作所必需的。

      【讨论】: