Sharding is the process of splitting very large databases into smaller, faster, and easier to manage pieces, called data shards. A shard is a small portion or chunk of a large data set. The principle of sharding is to split a logical dataset into multiple databases in order to store it more efficiently. In the case of a dataset that cannot be stored in a single database, sharding is necessary.