You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Steve Loughran (JIRA)" <ji...@apache.org> on 2019/05/02 12:25:00 UTC

[jira] [Commented] (HADOOP-12020) Support AWS S3 reduced redundancy storage class

    [ https://issues.apache.org/jira/browse/HADOOP-12020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16831580#comment-16831580 ] 

Steve Loughran commented on HADOOP-12020:
-----------------------------------------

{{S3AFileSystem.cloneObjectMetadata()}} needs to add the storage class as part of what it clones

> Support AWS S3 reduced redundancy storage class
> -----------------------------------------------
>
>                 Key: HADOOP-12020
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12020
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3
>    Affects Versions: 2.7.0
>         Environment: Hadoop on AWS
>            Reporter: Yann Landrin-Schweitzer
>            Priority: Major
>
> Amazon S3 uses, by default, the NORMAL_STORAGE class for s3 objects.
> This offers, according to Amazon's material, 99.99999999% reliability.
> For many applications, however, the 99.99% reliability offered by the REDUCED_REDUNDANCY storage class is amply sufficient, and comes with a significant cost saving.
> HDFS, when using the legacy s3n protocol, or the new s3a scheme, should support overriding the default storage class of created s3 objects so that users can take advantage of this cost benefit.
> This would require minor changes of the s3n and s3a drivers, using 
> a configuration property fs.s3n.storage.class to override the default storage when desirable. 
> This override could be implemented in Jets3tNativeFileSystemStore with:
>       S3Object object = new S3Object(key);
>       ...
>       if(storageClass!=null)  object.setStorageClass(storageClass);
> It would take a more complex form in s3a, e.g. setting:
>     InitiateMultipartUploadRequest initiateMPURequest =
>         new InitiateMultipartUploadRequest(bucket, key, om);
>     if(storageClass !=null ) {
>         initiateMPURequest = initiateMPURequest.withStorageClass(storageClass);
>     }
> and similar statements in various places.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org