One of the greatest attributes of Peak 10® Object Storage is that it is easy to use. Among the reasons for that is the cloud-enabled storage service employs the S3 REST (Representational State Transfer) API, an application programming interface that provides the capability to store, retrieve, list and delete objects (or binary files) via the web. (Note: The S3 REST API is sometimes referred to as the S3 RESTful API or simply as the S3 API.)
REST API Overview
If you’re not familiar with REST APIs, here’s a brief overview. Widely used by Web 2.0 service providers such as Google and Facebook, REST is a decoupled architectural style used to develop web services. Its low bandwidth usage, low latency and ease of use makes it a simpler alternative to SOAP (originally an acronym for Simple Object Access Protocol) and other web services.
A REST API uses the REST architecture and works in much the same way as a website in a browser. A resource is exposed to a program via a URL. The program accesses the URL and receives data about the resource, similar to how you type in a URL to your browser and get a web page back. It simply uses a “PUT” to change the state of or update a resource, which can be an object, file or block; a “GET” to retrieve a resource; a “POST” to create that resource; and a “DELETE” to remove it.
The S3 API and Object Storage
The thing about REST APIs is that there is no single standard, and not all REST APIs work for all use cases. However, Amazon’s S3 REST API has become popular for web application development. It’s now known as ‘the de facto’ standard for object storage — and it’s the one to use for accessing Peak 10 Object Storage.
If you’ve already written for S3, you can connect to Peak 10 Object Storage simply by changing the object location in the URL (assuming security configurations are consistent). All of your existing code should work with little or no modification. You don’t have to acquire specific platform skills; just use the S3 resources you already know.
If you are not that familiar with S3, it’s still easy to use. Objects are grouped into containers or buckets, and can be accessed through a flat hierarchy that simply references the object ID, data and metadata. With the S3 REST API, these identifiers are combined into a URL that provides a unique reference for the object. You simply use simple PUT and GET commands that encapsulate the data and response into the HTTP header and body.
Learn More About the S3 API
The best way to get an in-depth understanding for using the S3 API is to refer to Amazon’s S3 API Developer Guide, which is updated monthly.
Either way, you’ll find using the S3 API contributes some additional benefits to using cloud-enabled storage. From a security perspective, for example, there’s the access control that’s available at the account, bucket and object level. With Peak 10’s Object storage solution, data is also encrypted in flight, and by default is encrypted at rest using either system or user-generation keys.
More Information on the Way
Object storage, in general, is a cost-effective, efficient means of storing unstructured data. Peak 10 Object Storage is even more so. The S3 API compatibility is just one example. Keep watching for future blogs in which we’ll discuss more of the distinctive features of Peak 10 Object Storage.