Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between an S3 Object and an ObjectSummary?

In boto3 (and AWS's API in general) what is the distinction between an Object and an Object Summary? When might I prefer to use one over the other?

I appreciate that Amazon, in their libraries seem to be trying to provide as general and as thin a layer over the actual http calls as seems reasonable, but this doesn't make for a particularly intelligible API.

like image 623
cmyr Avatar asked Apr 05 '16 22:04

cmyr


People also ask

What is non current object in S3?

It is the number of days from when the version of the object becomes noncurrent (that is, when the object is overwritten or deleted) that Amazon S3 will perform the action on the specified object or objects.

Is S3 a object storage?

Amazon Simple Storage Service (Amazon S3) is an object storage service offering industry-leading scalability, data availability, security, and performance.

Who owns an S3 object?

By default, an S3 object is owned by the AWS Account that uploaded the object. S3 Object Ownership gives you a simple bucket setting that changes this default behavior, so that new objects uploaded with the bucket-owner-full-control access control list (ACL) will instead be owned by you.

How many objects can S3 make?

Buckets. Buckets are logical containers in which data is stored. S3 provides unlimited scalability, and there is no official limit on the amount of data and number of objects you can store in an S3 bucket. The size limit for objects stored in a bucket is 5 TB.


1 Answers

Object Summary:

Contains the summary of an object stored in an Amazon S3 bucket. This object doesn't contain the object's full metadata or any of its contents.

Object:

Represents an object stored in Amazon S3. This object contains the data content and the object metadata stored by Amazon S3, such as content type, content length, etc.

Object Metadata:

Represents the object metadata that is stored with Amazon S3. This includes custom user-supplied metadata, as well as the standard HTTP headers that Amazon S3 sends and receives (Content-Length, ETag, Content-MD5, etc.).

You would use Object Summary when you only need a summary of information about the object (personally I've never had a use for this). You would use Object when you want to get the actual object (in other words, use then when you want to download the actual file from S3). And you would use Object MetaData when you need the metadta about the object but don't want to waste time and bandwidth downloading the contents of the object.

Note: I pulled the quotes from the Java AWS SDK docs, which seems to have better description text than the Python AWS SDK docs.

like image 86
Mark B Avatar answered Sep 22 '22 12:09

Mark B