In a blog post released by Ripple on October 31, the company explains that they have introduced history sharding. The company explains that Rippled servers operate and witness data on a blockchain. It is always important for the XRP Ledger historical data to remain readily available for all the participants.
Every single rippled server shares the responsibility for storing some part of this data. However, it is not easy sometimes to store the whole information. According to Ripple, the space required to store the full history of the XRP Ledger is over 8 terabytes, a very important sum.
With the history sharding feature that is enabled in Rippled version 0.90.0 solves this issue distributing the history into different segments that are known as shards. Each of these shards has all the data for a specific range of ledger. With this sharding implementation, individual rippled servers are able to contribute to storing historical data without having to store all the history.
It is important to mention that a shard store does not replace a ledger store. However, it helps the network to implement a reliable path towards distributed ledger history using the XRP Ledger Network. That means that servers are able to confirm the data that they agree to maintain.
In the blog post, Ripple explains about the way in which history sharding works:
“Because servers that are configured with history sharding randomly select that shards that they store, the full history of all closed ledgers is stored in a normal distribution curve, increasing the probability that the XRP Ledger Network evenly maintains the history.”
Those using rippled version 0.90.0 it is possible to use the –validateShards command to check that shard store data is valid and consistent with network history. In this way, it is possible to verify that the objects stored for every ledger stored in each shard are valid and consistent with this network.
Users that are interested in learning more about History Sharding can do it here: https://developers.ripple.com/history-sharding.html.