Amazon redshift 使用AWS RedShiftBasicItemer时出现S3ServiceException

Amazon redshift 使用AWS RedShiftBasicItemer时出现S3ServiceException,amazon-redshift,amazon-kinesis,Amazon Redshift,Amazon Kinesis,我使用的是来自GitHub的示例AWS kinesis/redshift代码。我在EC2实例中运行了该代码,并遇到以下异常。注意,从Kinesis到S3的发射实际上成功了。但是从S3到红移的发射失败了。由于同一个程序中的两个发射器使用相同的凭据,我非常困惑为什么只有一个发射器失败 我知道大多数人获得“您提供的AWS访问密钥Id在我们的记录中不存在”的异常可能会导致正确设置S3密钥对的问题。但这里的情况似乎并非如此,因为向S3发射成功了。如果凭据没有读取权限,则应该抛出授权错误 请评论,如果你有任

我使用的是来自GitHub的示例AWS kinesis/redshift代码。我在EC2实例中运行了该代码,并遇到以下异常。注意,从Kinesis到S3的发射实际上成功了。但是从S3到红移的发射失败了。由于同一个程序中的两个发射器使用相同的凭据,我非常困惑为什么只有一个发射器失败

我知道大多数人获得“您提供的AWS访问密钥Id在我们的记录中不存在”的异常可能会导致正确设置S3密钥对的问题。但这里的情况似乎并非如此,因为向S3发射成功了。如果凭据没有读取权限,则应该抛出授权错误

请评论,如果你有任何见解

Mar 16, 2014 4:32:49 AM com.amazonaws.services.kinesis.connectors.s3.S3Emitter emit INFO: Successfully emitted 31 records to S3 in s3://mybucket/495362565978733426345566872055061454326385819810529281-49536256597873342638068737503047822713441029589972287489 Mar 16, 2014 4:32:50 AM com.amazonaws.services.kinesis.connectors.redshift.RedshiftBasicEmitter executeStatement SEVERE: org.postgresql.util.PSQLException: ERROR: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.,Status 403,Error InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/sdd4RgffTgfgfdfgdfgfffgghgdse56f,CanRetry 1 Detail: ----------------------------------------------- error: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.,Status 403,Error InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/sdd4RgffTgfgfdfgdfgfffgghgdse56f,CanRetry 1 code: 8001 context: Listing bucket=mfpredshift prefix=49536256597873342637951299872055061454326385819810529281-49536256597873342638068737503047822713441029589972287489 query: 3464108 location: s3_utility.cpp:536 process: padbmaster [pid=8116] ----------------------------------------------- Mar 16, 2014 4:32:50 AM com.amazonaws.services.kinesis.connectors.redshift.RedshiftBasicEmitter emit SEVERE: java.io.IOException: org.postgresql.util.PSQLException: ERROR: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.,Status 403,Error InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/sdd4RgffTgfgfdfgdfgfffgghgdse56f,CanRetry 1 Detail: ----------------------------------------------- error: S3ServiceException:The AWS Access Key Id you provided does not exist in our records.,Status 403,Error InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/sdd4RgffTgfgfdfgdfgfffgghgdse56f,CanRetry 1 code: 8001 context: Listing bucket=mybucket prefix=495362565978733426345566872055061454326385819810529281-49536256597873342638068737503047822713441029589972287489 query: 3464108 location: s3_utility.cpp:536 process: padbmaster [pid=8116] ----------------------------------------------- 2014年3月16日上午4:32:49 com.amazonaws.services.kinesis.connectors.s3.s3 信息:在S3://mybucket/49536256578733426345566872055061454326385819810529281-4953625657873342638068737503047822713441029589972287489中成功地向S3发送了31条记录 2014年3月16日上午4:32:50 com.amazonaws.services.kinesis.connectors.redshift.RedshiftBasicEmitter executeStatement 严重:org.postgresql.util.PSQLException:错误:S3ServiceException:您提供的AWS访问密钥Id在我们的记录中不存在,状态403,错误无效访问密钥Id,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/SDD4RGFFTGGFGDFGGHSE56F,可以重试1 详情: ----------------------------------------------- 错误:S3ServiceException:您提供的AWS访问密钥Id在我们的记录中不存在,状态403,错误InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/SDD4RGFFTGGFDFFGGHSE56F,可以重试1 代码:8001 上下文:Listing bucket=mfpredshift prefix=495362565978773342637951299872055061454326385819810529281-4953625657873342638068737503047822713441029589972287489 查询:3464108 位置:s3_实用程序。cpp:536 进程:padbmaster[pid=8116] ----------------------------------------------- 2014年3月16日上午4:32:50 com.amazonaws.services.kinesis.connectors.redshift.redshiftbasicmitter 严重:java.io.IOException:org.postgresql.util.psqleexception:错误:S3ServiceException:您提供的AWS访问密钥Id在我们的记录中不存在,状态403,错误无效访问密钥Id,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/SDD4RGFFTGFGDFFGFGGHSE56F,可以重试1 详情: ----------------------------------------------- 错误:S3ServiceException:您提供的AWS访问密钥Id在我们的记录中不存在,状态403,错误InvalidAccessKeyId,Rid 5TY6Y784TT67,ExtRid qKzklJflmmgnhtttthbce+8T0NIR/SDD4RGFFTGGFDFFGGHSE56F,可以重试1 代码:8001 上下文:Listing bucket=mybucket prefix=49536256597733426345566872055061454326385819810529281-4953625659978733426380687375030478227134410295972287489 查询:3464108 位置:s3_实用程序。cpp:536 进程:padbmaster[pid=8116] -----------------------------------------------
我遇到了同样的错误。我正在使用IAM角色获取凭据。在我的例子中,通过修改
redshiftbasicmitter
添加
,解决了这个问题;token=token
to
CREDENTIALS
参数(最后我创建了自己的
IEmitter


请参见

您确定您拥有正确的密钥并且顺序正确(访问和保密)?它们在param文件中的顺序可能不正确。您的红移集群是否与S3存储桶位于同一区域?我已为此问题发送了请求。谢谢那个请求帮助了我。我确实发表了一条评论,要求您对manifest发射器类进行相同的更改。