Sharding is the division of data into parts (shards) to distribute the load across multiple servers. However, performance improvement is not proportional to the number of shards, as some operations (such as aggregation or cross-shard transactions) cannot be fully parallelized. Amdahl's Law shows that the maximum speedup is limited by the share of sequential operations. Therefore, even with 20 shards, the speedup may be much less than 20 times.