OpenIO is a software company, and we sell a scale-out storage solution that can manage petabytes of data, and that can be installed almost anywhere: from a computer as small as a Raspberry Pi up to piles of fat 90+ disk servers. Regardless of the size of the installation, the software is the same; depending on available hardware resources and end user needs, it can be configured in several cluster layouts, with different protection schemes, geo-replication, and so on. A single cluster can also be built out of nodes with different CPUs. (In the lab we have a cluster made of Raspberry Pis, X86 servers, Orange Pi boards, and even a MIPS-based node. Yes MIPS, is not officially supported, but an engineer did it just for fun.)
When we talk about software defined and flexibility we really mean it! There is total separation between hardware and software, and, even though we have certified partners like Huawei and SuperMicro, we have already demonstrated that we can run efficiently on anything.
Our goal is to take advantage of all available resources and make use of them efficiently. This means that the cluster can be built out of nodes with different capacities, CPU, RAM, and connectivity, and they all participate in the cluster by giving what they can. To manage all of this we have an internal load balancing mechanism called Conscience. Each node continuously computes its quality score and shares it with others. The score, ranging from 0 to 100, is an index of the availability of that node, with 0 meaning totally unavailable and 100 meaning fully receptive.
Conscience picks the best node available at the time for each operation. It goes further - such as, the way we organize the key space - but Conscience is ultimately what allows OpenIO SDS to run on any server and take advantage of all its resources.
Conscience is part of the story, and the flip side is the lightweight design that empowers SDS and makes it highly efficient.
Today, we are releasing a new sizing guide for X86 systems to help our customers evaluate the hardware needed to build an SDS-based cluster, and - at the same time - to do a quick comparison between SDS and other scale-out solutions.
You will find interesting information on the size of nodes for common configurations and the resources needed to configure single and split configurations (with the front-end access layer and back-end storage nodes separated). I think this will be a good read, and it will give you a clear idea of how efficient OpenIO SDS is.
Software Defined doesn't (only) mean that OpenIO SDS is software that can be installed on standard X86 servers. Yes, SDS is software, but its characteristics give it the same set of features and best-in-class performance consistency no matter what hardware it runs on.
At the same time, thanks to its lightweight design, OpenIO SDS needs less hardware resources and performs better than competing object stores.