亚马逊AWS雅典娜S3和冰川混合桶

Ste*_*lum 9 amazon-s3 amazon-web-services amazon-glacier amazon-athena

带有S3 Glacier的Amazon Athena日志分析服务

我们在S3中有数PB的数据.我们是https://www.pubnub.com/,我们将使用数据存储在我们网络的S3中以进行计费.我们在S3存储桶中存储了制表符分隔的日志文件.雅典娜给了我们一个HIVE_CURSOR_ERROR失败.

我们的S3存储桶设置为在6个月后自动推送到AWS Glacier.除了Glacier备份文件之外,我们的存储桶还具有热门的S3文件并且可以随时读取.由于这个原因,我们收到了Athena的访问错误.错误中引用的文件是Glacier备份.

我的猜测答案是:不要将冰川备份放在同一个桶中.由于我们的数据量大小,我们没有这个选项.我相信雅典娜不会在这个设置中工作,我们将无法使用Athena进行日志分析.

但是,如果我们有办法使用雅典娜,我们会很激动.是否有解决方案HIVE_CURSOR_ERROR和跳过Glacier文件的方法?我们的s3水桶是没有文件夹的扁平水桶.

AWS Athena S3操作例外

屏幕截图中省略了上下屏幕截图中显示的S3文件对象名称.HIVE_CURSOR_ERROR实际上是Glacier对象中的文件引用.您可以在我们的S3 Bucket的屏幕截图中看到它.

Athena访问的Glacier中的Amazon S3 Bucket对象

注意我试图在https://forums.aws.amazon.com/发布,但这不是bueno.

在此输入图像描述

小智 7

AWS于2017年5月16日发布的文档明确指出,Athena不支持GLACIER存储类:

Athena不支持LOCATION子句指定的存储桶中的不同存储类,不支持GLACIER存储类,也不支持Requester Pays存储桶.有关更多信息,请参阅存储类,更改| S3 |中对象的存储类 ,以及请求者在Amazon Simple Storage Service开发人员指南中支持存储.

我们也对此感兴趣; 如果你让它工作,请告诉我们如何.:-)


The*_*heo 5

2019 年 2 月 18 日发布以来 Athena 将忽略具有 GLACIER 存储类的对象,而不是使查询失败:

[…] 作为解决此问题的结果,Athena 会忽略转换到 GLACIER 存储类的对象。Athena 不支持从 GLACIER 存储类查询数据。