If we have a table that grows rapidly and generates problems reading and writing data in a business environment, we need to apply a solution that deals with the problem of performance as well as the problem with data volume.
The sharding pattern is a pattern that divides a data store horizontally into partitions or shards. This can improve scalability and performance. The shards can run in the same node or in multiples nodes, but each shard has the same schema. When we divide a single database into shards, the rows of the database are distributed between them. Furthermore, a sharding pattern can be implemented by the database, if it has support, or by the application.
The sharding pattern has three common strategies ...