gpt4 book ai didi

hadoop - 使用 spark thrift 服务的 s3 位置创建/访问配置单元外部表的问题

转载 作者:可可西里 更新时间:2023-11-01 15:55:57 27 4
gpt4 key购买 nike

我已经使用 hadoop-credential api 在 jceks 文件中配置了 s3 key (访问 key 和 secret key )。用于相同的命令如下:

hadoop 凭据创建 fs.s3a.access.key -provider jceks://hdfs@nn_hostname/tmp/s3creds_test.jceks

hadoop 凭据创建 fs.s3a.secret.key -provider jceks://hdfs@nn_hostname/tmp/s3creds_test.jceks

然后,我使用 beeline 打开到 Spark Thrift Server 的连接,并在连接字符串中传递 jceks 文件路径,如下所示:

beeline -u "jdbc:hive2://hostname:10001/;principal=hive/_HOST@?hadoop.security.credential.provider.path=jceks://hdfs@nn_hostname/tmp/s3creds_test。 jceks;

现在,当我尝试使用 s3 中的位置创建一个外部表时,它失败并出现以下异常:

CREATE EXTERNAL TABLE IF NOT EXISTS test_table_on_s3 (col1 String, col2 String) 行格式分隔字段以 ',' LOCATION 's3a://bucket_name/kalmesh/' 结尾;

异常:错误:org.apache.spark.sql.execution.QueryExecutionException:失败:执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。 MetaException(消息:出现异常:java.nio.file.AccessDeniedException s3a://bucket_name/kalmesh:s3a://bucket_name/kalmesh 上的 getFileStatus:com.amazonaws.services.s3.model.AmazonS3Exception:禁止(服务:Amazon S3 ; 状态码: 403; 错误码: 403 Forbidden; Request ID: request_id), S3 Extended Request ID: extended_request_id=) (state=,code=0)

最佳答案

我不认为 jceks 支持 fs.s3a。 secret 一直持续到 Hadoop 2.8。我不认为;从源头上很难说。如果是这种情况,并且您使用的是 Hadoop 2.7,那么就不会发现 secret 。恐怕你必须把它放在配置中。

关于hadoop - 使用 spark thrift 服务的 s3 位置创建/访问配置单元外部表的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44062349/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com