Gridstore Scale-Out Technology Overview

Gridstore is four key component technologies combined to create a scale-out storage platform with entirely different economics and capabilities. The combination of these technology components and being able to leverage the compute resources within a companies network is what makes it possible to offer this class of scale-out storage at such an affordable cost.
Instead of building larger, more complex storage systems - Gridstore does the opposite. Gridstore virtualizes the storage controller and distributes this to every client that connects to the storage. This allows us to create a distributed parallel processing capacity for effectively zero cost. Gridstore eliminates this cost from the storage system itself while increasing the capability and reliability of the storage system by eliminating single points of failure and taking advantage of parallel processing and parallel communications.
Virtual Storage Controller – Unlimited, Zero Cost Performance Scaling
Most storage systems today use a Client-Server based architecture. Not just standalone NAS, but also SAN and even clustered storage systems. Clients access the storage over a network by connecting to a controller that controls IO from a disk or multiple arrays of disks. The controller performs all storage processing, RAID processing and controls IO flow from disk and network. The larger the storage system becomes, the larger, more complex, more sophisticated and more expensive that controller becomes.
Gridstore scale-out storage technology virtualizes the storage controller and distributes this to every client that connects to the storage. This offloads the storage control and processing workload from server nodes over the network to the client – to the point of creation or consumption. This allows more sophisticated processing and optimization of data before it hits the network. With this approach, files can be broken into slices that are written in parallel to storage nodes. Each storage node only does a fraction of a simplified workload.
Unlimited, Zero Cost Performance Scaling – The Gridstore approach to scale-out storage has a unique benefit. As user demand grows in a client-server storage architecture, eventually the server is saturated and response times grow. As user demand grows on a gridstore, the number of virtual controllers grows directly in line with this. Processing capacity is always perfectly balanced with demand. And when you upgrade your client infrastructure – you are also upgrading your storage infrastructure at no extra cost.
RAIDg – Simple Fault Tolerance That Goes Beyond Enterprise Class Storage
The distribution of Virtual Storage Controllers to every client brings a significant advantage over traditional client-server based storage – significant processing power. Think about going from a single or dual controller system (or a cluster of these controllers) to having fifty, a hundred or a thousand controllers. Gridstore harnesses this processing power to deliver a level of fault tolerance that is not possible with even Enterprise RAID systems.
When a volume is created, you dial in the number of faults you want to withstand. A fault can be an entire storage node failing or a component within a node. This can be set to any number within a given set of nodes.
RAIDg Compared to RAID5/6.
Where RAID 5/6 allows 1 or 2 disk failures in array, RAIDg can suffer many entire nodes to fail without disruption or data loss. Depending on the number of total nodes, RAIDg can be set to 3, 4, 5 or more concurrent failures of entire node. In a storage system, there is more than just the disk that can fail. RAIDg covers the entire node, not just the disk – and it covers multiple concurrent failures.
RAIDg when configured to 1 or 2 node failures will have equal capacity overhead as RAID5/6 respectively. However, RAIDg eliminates the performance penalty associated with RAID5/6 because the processing is offloaded to the clients and not performed on the server. Many traditional storage installations do not use RAID5/6 due to this performance penalty and instead opt for mirroring strategies to increase performance.
RAIDg Compared to RAID10 (Mirrors) Many scale-out storage products take the approach that capacity is cheap. They use mirroring or replicas to achieve redundant data. Every write results in a copy being placed on a mirror in another node (across the network). RAID10 in scale out storage has a significant drawback – it uses 2X the capacity while only being able to suffer a single disk failure. If the wrong two disks are lost across the entire cluster, there is data loss. As a result, most systems employing RAID10 will go into a shutdown or protected mode until the first disk is recovered.
Scale-out storage systems that use RAID10 use 2X the capacity, generate 2X network traffic and only allow a single disk to fail without losing data. We think this is an extraordinary waste of resources (your money) only to allow a single disk failure. With RAIDg, depending on the number of nodes in the storage pool, that overhead is similar to RAID5/6 of 20-30% overhead in capacity and network traffic – not 200%. Most importantly, it allows you to suffer many concurrent failures of entire nodes without downtime or disruption. And it achieves this without the performance penalty that plagues RAID5/6 because this processing is offloaded from the storage nodes.
Parallel Distributed Network Protocol
At the core of Gridstore is a high performance parallel network protocol that controls the communication across a grid of storage nodes and client nodes (virtual controllers). The protocol is IP based and works on all IP based commodity technology. There are no special network cards, Host Bus Adaptors, switches or dedicated backplane networks that are common to many scale-out storage systems.
The Gridstore protocol works at the UDP level of the IP stack to eliminate the significant overhead associated with TCP level protocols. It is designed to correct for packet loss in networks and switches.
The Gridstore architecture is entirely distributed; there is no central control point such as a meta data server or lock server common with other scale-out models. Central control points are network bottlenecks and single points of failure. The Gridstore protocol eliminates both of these.
Gridstore 2.0 is designed to offer primary file serving on a local area network. The current version of the Gridstore protocol is optimized to work on gigabit Ethernet networks with low latency.
Virtual Storage Pool
The Gridstore network protocol connects any number of storage nodes to form a virtual storage pool of any size. A storage pool is a collection of physical storage nodes. On each storage pool, multiple volumes can be created and each volume can be configured differently in terms of capacity, fault tolerance and the specific nodes that contribute capacity to the volume.
Storage nodes can be added to a pool to instantly increase the pool size and volumes can then be expanded. Storage pools must contain a minimum of three nodes and have no upper limit. Regardless of the size of a storage pool, it is managed as a single entity to simplify the overall management of the scale out storage.
|