Shard (database Architecture) - Disadvantages of Sharding

Disadvantages of Sharding

Sharding a database table before it has been optimized locally causes premature complexity. Sharding should be used only when all other options for optimization are inadequate. The introduced complexity of database sharding causes the following potential problems:

  • Increased complexity of SQL - Increased bugs because the developers have to write more complicated SQL to handle sharding logic.
  • Sharding introduces complexity - The sharding software that partitions, balances, coordinates, and ensures integrity can fail.
  • Single point of failure - Corruption of one shard due to network/hardware/systems problems causes failure of the entire table.
  • Failover servers more complex - Failover servers must themselves have copies of the fleets of database shards.
  • Backups more complex - Database backups of the individual shards must coordinated with the backups of the other shards.
  • Operational complexity added - Adding/removing indexes, adding/deleting columns, modifying the schema become much more difficult.

Read more about this topic:  Shard (database Architecture)

Famous quotes containing the words disadvantages of:

    Wine makes a man better pleased with himself. I do not say that it makes him more pleasing to others.... This is one of the disadvantages of wine, it makes a man mistake words for thoughts.
    Samuel Johnson (1709–1784)