Default Avatar
Intern
Intern
  • UID159
  • Fans1
  • Follows0
  • Posts20
Reads:60795Replies:1

Function Mapping Between OSS API and S3 API

Created#
More Posted time:Jan 8, 2016 11:49 AM
Comparison Between OSS APIs and S3 APIs
(Difference are Yellow highlighted):

Operation
  Object

S3

OSS

Can Be
  Migrated?

Difference
  Description

Service-Related

GET Service

GET Service

Yes

OSS is compatible with S3. In addition, you can also prescribe a
  limit to the list with prefix, marker and max-keys for OSS to return partial
  results. OSS returns more enriched response content, such as Location and
  partial results

Bucket-Related

DELETE Bucket

DELETE Bucket

Yes

Same

DELETE Bucket cors

DELETE Bucket cors

Yes

Same

DELETE Bucket lifecycle

DELETE Bucket Lifecycle

Yes

Same

DELETE Bucket policy

N/A

No

S3 provides an interface for deleting bucket policies

DELETE Bucket replication

N/A

No

S3 provides an interface for disabling cross-region replication
  configurations on a bucket

DELETE Bucket tagging

N/A

No

S3 provides an interface for deleting the cost allocation tag on
  a bucket

DELETE Bucket website

DELETE Bucket Website

Yes

Same

GET Bucket (List Objects)

GET Bucket(List Object)

Yes

Same

GET Bucket acl

GET Bucket Acl

Yes

Compared with OSS, S3 adds the
  Grantee and Permission information into its response returned

GET Bucket cors

GET Bucket cors

Yes

Same

GET Bucket lifecycle

GET Bucket Lifecycle

Yes

OSS and S3 return different lifecycles. The lifecycle returned
  by S3 provides three methods to process expired data while the lifecycle
  returned by OSS provides only one such method

GET Bucket policy

N/A

No

S3 provides an interface for obtaining bucket policies

GET Bucket location

GET Bucket Location

Yes

Same

GET Bucket logging

GET Bucket Logging

Yes

S3 returns more enriched authorization information, including
  Grantee, Permission, and TargetGrants

GET Bucket notification

N/A

No

S3 provides an event notification mechanism

GET Bucket replication

N/A

No

S3 provides an interface for obtaining cross-region replication
  configurations from a bucket

GET Bucket tagging

N/A

No

S3 provides an interface for obtaining the cost allocation tag
  on a bucket

GET Bucket Object
  versions

N/A

No

S3 provides an interface for obtaining the version information
  of the object stored in a bucket

GET Bucket requestPayment

N/A

No

S3 provides requesters with the information about payment
  requests and data transmission fees

GET Bucket versioning

N/A

No

S3 provides an interface for obtaining bucket version control
  information

GET Bucket website

GET Bucket Website

Yes

Same

HEAD Bucket

N/A

No

S3 provides an interface for obtaining basic bucket meta
  information

List Multipart Uploads

List Multipart Uploads

Yes

Same

PUT Bucket

PUT Bucket

Yes

Same

PUT Bucket acl

PUT Bucket Acl

Yes

Same

PUT Bucket cors

PUT Bucket Cors

Yes

Same

PUT Bucket lifecycle

PUT Bucket Lifecycle

Yes

Same

PUT Bucket policy

N/A

No

S3 provides an interface for setting bucket policies

PUT Bucket logging

PUT Bucket Logging

Yes

S3 provides more optional input authorization parameters,
  including Grantee, Permission, and TargetGrants

PUT Bucket notification

N/A

No

S3 provides an interface for setting the event notification
  mechanism

PUT Bucket replication

N/A

No

S3 provides an interface for setting the cross-region
  replication configurations of a bucket

PUT Bucket tagging

N/A

No

S3 provides an interface for adding the cost allocation tag on a
  bucket

PUT Bucket requestPayment

N/A

No

S3 provides requesters rather than bucket owners with an
  interface for setting the information about payment requests and data
  transmission fees

PUT Bucket versioning

N/A

No

S3 provides an interface for setting bucket version control
  information

PUT Bucket website

PUT Bucket Website

Yes

Same

Object-Related

DELETE Object

DELETE Object

Yes

Same

Delete Multiple Objects

DELETE Multiple Objects

Yes

Same

GET Object

GET Object

Yes

Same

GET Object ACL

GET Object ACL

Yes

Same

GET Object torrent

N/A

No

S3 provides an interface for obtaining torrent files for data
  elements less than 5 GB

HEAD Object

HEAD Object

Yes

Same

OPTIONS object

OPTIONS object

Yes

Same

POST Object

POST Object

Yes

Same

POST Object restore

N/A

No

S3 provides an interface for restoring objects of a specific
  version

PUT Object

PUT Object

Yes

Same

PUT Object acl

PUT Object acl

Yes

Same

PUT Object - Copy

Copy Object

Yes

Same

Initiate Multipart Upload

Initiate Multipart Upload

Yes

Same

Upload Part

Upload Part

Yes

Same

Upload Part - Copy

Upload Part Copy

Yes

Same

Complete Multipart Upload

Complete Multipart Upload

Yes

Same

Abort Multipart Upload

Abort Multipart Upload

Yes

Same

List Parts

List Parts

Yes

Same

Default Avatar
Intern
Intern
  • UID159
  • Fans1
  • Follows0
  • Posts20
1st Reply#
Posted time:Jan 8, 2016 11:50 AM
Summary of Comparison Between OSS APIs and S3 APIs
   Currently, there are 53 S3 APIs and 36 OSS APIs. The APIs mainly support operations on services, buckets, and objects. We find most of the main APIs are quite similar.
The differences include:
1. Policy can be set by IAM/S3 API in AWS, while for AliCloud, policy can only be set by RAM(similar to IAM)
2. AWS S3 API supports getting(deleting) bucket replication, tagging, version, notification, requestPayment functions
3.  OSS API billing is much cheaper than AWS
Default Avatar