我正在尝试使用 Dbeaver 并通过 Spark Hive 处理数据。当以下命令有效时,连接稳定:
select * from database.table limit 100
但是,一旦我与简单的获取查询不同,我就会遇到异常。例如。运行查询
select count(*) from database.table limit 100
导致异常:
SQL 错误 [2] [08S01]:org.apache.hive.service.cli.HiveSQLException:错误 while处理语句:FAILED:执行错误,返回代码2 来自 org.apache.hadoop.hive.ql.exec.tez.TezTask。顶点失败, vertexName=地图 1,vertexId=vertex_1526294345914_23590_12_00, 诊断=[顶点 vertex_1526294345914_23590_12_00 [地图 1] 由于以下原因而被杀死/失败:ROOT_INPUT_INIT_FAILURE,顶点输入:发布 初始化失败,vertex=vertex_1526294345914_23590_12_00 [地图 1], com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: 错误请求(服务:Amazon S3;状态代码:400;错误代码:400 错误 要求;请求 ID:95BFFF20D13AECDA),S3 扩展请求 ID: fSbzZDf/Xi0b+CL99c5DKi8GYrJ7TQXj5/WWGCiCpGa6JU5SGeoxA4lunoxPCNBJ2MPA3Hxh14M=
有人可以帮我吗?
400/错误请求是 S3/AWS 通用“不喜欢您的有效负载/请求/身份验证”响应。 ASF S3A 文档 中有一些详细信息,但这是针对 ASF 连接器的,而不是针对亚马逊的(您的是,来自堆栈跟踪)。经过 v4 验证的存储桶的不良端点通常是问题 #1,之后...谁知道呢?
hadoop fs -ls s3://bucket/path
操作。