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:

    If the factory people outside the colleges live under the discipline of narrow means, the people inside live under almost every other kind of discipline except that of narrow means—from the fruity austerities of learning, through the iron rations of English gentlemanhood, down to the modest disadvantages of occupying cold stone buildings without central heating and having to cross two or three quadrangles to take a bath.
    Margaret Halsey (b. 1910)