What is Object Storage?
There are three types of traditional object storage service
Object Storage Protocols
Getting Object Storage Ready for the Enterprise
Natively, object storage systems speak RESTful / HTTP protocols, the same ‘language’ as the Internet. Because of this native support for Web protocols, an object storage system is perfectly suited to Web 2.0, Cloud-native and XaaS use cases. Historically, this Web-centricity was considered an impediment to adoption by mainstream enterprise applications, which use traditional NFS, SMB, or SCSI interfaces. However, this has changed with the rise of cloud computing, mobile applications, and cloud-native applications which all use HTTP to provide and access services.
To provide universal information access within an object storage system, some object storage vendors have added support for enterprise file sharing protocols such as NFS and SMB, either natively, like Scality, or by using a cloud gateway. In addition, some object storage systems support two other important HTTP-based protocols: Amazon Web Services Simple Storage Service APIs known as S3, which is a de-facto standard; and CDMI, the Cloud Data Management Interface, an industry standard API, specified and promoted by the Storage Networking Industry Association (SNIA) for accessing cloud storage.
evaluating object storage
Object Storage solutions are often designed as a distributed architecture, a collection of distributed servers operating in parallel requiring no special machine or machines to provide or manage specific services. Instead all responsibilities are divided among the machines and don’t require a central ‘control’ machine. Thus, there is no risk of a single point of failure (SPOF) in the architecture.
When evaluating object storage, you should ask how metadata is accessed and how it scales. While they may be designed to avoid SPOF, many are still designed with a specific set of metadata nodes, or are based on non-scalable relational databases. These types of designs will suffer from performance and availability degradation at scale (e.g. tens of millions of objects, really a starting point for object stores).