摘要 |
Methods, apparatus, and other embodiments associated with adaptive use of erasure codes for distributed data storage systems are described. One example method includes accessing a message, where the message has a message size, selecting an encoding strategy as a function of the message size, data storage device failure statistics, data storage device wear periods, data storage space constraints, or overhead constraints, and where the encoding strategy includes an erasure code approach, generating an encoded message using the encoding strategy, generating an encoded block, where the encoded block includes the encoded message and metadata associated with the message, and storing the encoded block in the data storage system. Example methods and apparatus may employ Reed Solomon erasure codes or Fountain erasure codes. Example methods and apparatus may display to a user the storage capacity and durability of the data storage system. |
主权项 |
1. A non-transitory computer-readable storage medium storing computer executable instructions that when executed by a computer control the computer to perform a method for storing data in a data storage system, the method comprising:
accessing a message, where the message has a message size; selecting an encoding strategy that includes an erasure code approach, where the encoding strategy is selected as a function of the message size, of failure statistics associated with one or more data storage devices in the data storage system, of wear periods associated with one or more data storage devices in the data storage system, of space constraints associated with one or more data storage devices in the data storage system, or of overhead constraints associated with one or more data storage devices in the data storage system; generating an encoded message from the message using the encoding strategy; generating an encoded block that includes the encoded message and metadata associated with the message; and storing the encoded block in the data storage system. |