Here we describe our data striping technique
There are a number of important aspects of ZebClient that are enabled through data striping; the mechanism by which ZebClient actively manages the placement of data shards across the ZebClient Acceleration Engine cluster. The code by which ZebClient performs this active placement is a highly mathematically optimized algorithm that ensures conformance to a K+M configuration of data and parity shards.
The first is performance. With data striped across ZebClient Acceleration Engine, data will be retrieved in parallel from the nodes containing the relevant data. This effect is especially powerful when retrieving a large amount of data in a sequential fashion and where block sizes are relatively large. This configuration provides ZebClient with the ideal conditions to make optimal use of the striping effect and serves to avoid access hot spots that would otherwise degrade performance.
The second important aspect is data protection. With data distributed evenly and redundantly across the ZebClient Acceleration Engines, shards are placed to ensure there is no one part of the system that can fail and affect the rest of the system. This is a critical part of any file system and one where a parallel file system such as ZebClient can ensure a high level of redundancy without the typical compromises of scalability, capacity, or performance.
The third is data privacy. With shards striped across Acceleration Engines, it becomes straightforward for ZebClient to store this data in object storage across different regions or even different object storage providers. This functionality enables a data privacy use case where there might be sensitivity in using public cloud suppliers.