Shard-Query and Distributed Set Processing
About Shard-Query:
Shard-Query is an open source tool kit which helps improve the performance of queries against a MySQL database by distributing the work over multiple machines and/or multiple cores. This is similar to the divide and conquer approach that Hive takes in combination with Hadoop. Shard-Query applies a clever approach to parallelism which allows it to significantly improve the performance of queries by spreading the work over all available compute resources.
And how it applies the relational algebra to distribute operations:
Every SQL statements breaks down into a relational algebra equation. In Algebra you learn that some operations are “distributable”, that is, you can split them up into smaller units, and when you put those units back together the result is the same as if you didn’t take it apart. Projection,
GROUP BY,SUM,COUNT,MIN*, andMAX* are distributable. With a little elbow grease, all non-distributable aggregate functions (AVG,STDDEV,VARIANCE, etc) can be decomposed into distributable functions using simple substitution rules.
Original title and link: Shard-Query and Distributed Set Processing (NoSQL databases © myNoSQL)