Sharding is a way of splitting up the full blockchain history so each full node doesn’t need the whole copy of it. It’s considered a scaling solution for blockchains because as they grow larger, it begins to slow the network performance if every Node is required to carry the full blockchain.