Enzo SQL Shard

This library provides a Shard technology that allows you to spread the load of database queries over multiple databases easily (SQL Server and SQL Azure). Uses the Task Parallel Library (TPL) and caching for high performance.

About the Shard Strategies Implementations

This library allows you to perform all the usual tasks in database management: create, read, update and delete records. Except that your code can execute against two or more databases seemlessly. Using the usual SqlCommand object, spread the load of your commands
to multiple databases to improve performance and scalability. This library uses a Horizontal Partion Shard (the ShardStrategyExpanded class), which requires your tables to be partitionned horizontally, or a federation library for SQL Database federations (the
ShardStrategyFederation class), or a Compress Strategy (the ShardStrategyCompressed class) allowing you to build SaaS and Multitenant applications easily. The download comes with three sample applications that shows you how to use each library.

The project is organized by centralizing common sharding operations in specialized classes. In addition, the basic underlying core logic of performing a shard call was placed in a Core class. By inheriting this class, any new strategy gains access to specific
sharding options and settings. The Federation and Compressed Shard Strategies uses the Core class and additional capabilities provided by this release, such as the Distributed Query.