在aws emr上创建配置单元外部表

y0u0uwnf  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(590)

我正在尝试在中创建一个外部表 hive 通过 hueAWS EMR ```
CREATE EXTERNAL TABLE IF NOT EXISTS urls (
id STRING,
date TIMESTAMP,
url STRING,
expandedUrl STRING,
domain STRING
)
PARTITIONED BY (year INT, month INT, day INT)
STORED AS PARQUET LOCATION 's3://data/processed/urls/'

我创造了 `EMR` 使用aws控制台群集(emr-5.4.0)。
已登录 `Hue` 运行以上命令 `SQL` 在metastore manager中,出现以下错误:
无法访问:s3://data/processed/url/。注意:您是hue管理员,但不是hdfs超级用户“hdfs”或hdfs超级组“hadoop”的一部分。
[errno 22]未知方案s3,可用方案:['hdfs']
在文件管理器下我也看不到s3。我可以使用cli工具从主节点访问s3。
集群创建过程中是否缺少任何配置选项?我需要给用户额外的权限吗?
更新
正如franklinsijo所建议的,我尝试过创建一个hdfs用户和一个新的数据库。
我现在在数据库中得到相同的错误:
无法访问:s3://data/processed。
[errno 22]未知方案s3,可用方案:['hdfs']
当从hivecli运行“createdatabase”sql时,我使用的是“access denied” `EMR_DefaultRole` 两者兼有 `AmazonElasticMapReduceRole` 以及 `AmazonS3FullAccess` 更新2
我在弗兰克林西霍的帮助下解决了这个问题
我可以在s3上从 `hive cli` 以及 `hue` .
我可以从表中读写数据
我看不见 `S3 Browser` 详见http://gethue.com/introducing-s3-support-in-hue/
我无法通过“metastore manager->database->table->stats->location”访问该表。我仍然得到[errno 22]
js4nwp54

js4nwp541#

[errno 22]未知方案s3,可用方案:['hdfs']
这是因为Hive default 数据库位置设置为hdfs(请参阅此处)。使用s3位置创建新的配置单元数据库。

CREATE DATABASE database_name LOCATION 'S3://Bucket/Key';

然后在这个新创建的数据库中创建表。
无法访问:s3://data/processed/url/。注意:您是hue管理员,但不是hdfs超级用户“hdfs”或hdfs超级组“hadoop”的一部分。
创建一个名为 hdfs 用户界面中的超级用户状态。作为登录 hdfs 用户执行查询。

相关问题