Just to clarify a point in your post – Gridstore does not consume processing power from every machine on the network.
Gridstore works by virtualizing the storage controller that normally sits in front of the storage system disk arrays. The Virtual Storage Controller is moved across the network to the client that connects to the storage – the effect of this is to eliminate the physical storage controller and offloaded its workload to the Virtual Storage Controller running on the client. When the client reads/writes files – there is some additional processing done on the file. This processing is isolated to the same machine – the processing does not consume any resources from other machines.
Gridstore does not aggregate processing from other machines. Instead, Gridstore works by distributing the workload normally done on a single storage controller and distributing a virtual controller to each of the machines connecting to the storage. In effect, you go from having a single (or dual controller in larger systems) - to having 50, 100 or 1000 virtual controllers (the number of clients connecting to the storage grid). With each of these working independent of each other and with no effect on the others (except for locking of files). It is like they each have their own storage system.
This architecture means that the client is now the bottleneck (not the traditional server). The performance from that clients perspective will be constrained by how fast it can process data and get it on/off the network – once on the network, the data is written in parallel and striped across the storage nodes which now do only a fraction of the total file IO. On current low cost desktop PCs, you can expect to achieve between 50-80MB/s (higher on higher grade CPUs) and add about 10% overhead on the client machine as it reads / writes from the grid. This overhead is only temporary as it processes the data being written and is isolated to only that machine.
Gridstore Marketing Team