Patent ID: 11966592
Assignee: QUMULO, INC.
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 6:
7. A system for managing data comprising:
a network computer, comprising:
a memory that stores at least instructions; and
one or more processors that execute instructions that are configured to cause performance of actions, including:
providing a file system that includes a plurality of protection groups that each are associated with a plurality of block stores, wherein each block store associated with the plurality of protection groups is encoded based on a first erasure code and a first block store size;
storing each of the one or more block stores in one or more of plurality of slots that are defined for separately storing a block store on a different one of a plurality of storage devices that are separately located in the file system;
dividing the file system into a first partition and a second partition, wherein a portion of a storage space in the file system is shifted from the first partition to the second partition to provide sufficient storage space for one or more of the plurality of protection groups in the second partition based on a specification for a second erasure code, and wherein the first partition is associated with the first erasure code and the second partition is associated with the second erasure code;
in response to adding one or more additional storage devices to the storage space of the file system, providing additional storage space to the second partition;
in response to the second partition having sufficient storage space to store one or more of the plurality of protection groups, performing further actions, including:
determining one or more block stores in the first partition associated with the one or more protection groups;
transcoding contents of the one or more block stores into one or more other block stores based on the second erasure code and a second block store size, wherein the one or more other block stores are sized based on the second block store size for the second erasure code;
storing the one or more other block stores in the second partition, wherein the one or more other block stores are stored in one or more of plurality of slots that are defined for separately storing the one or more other block stores on different storage devices that are separately located in the file system;
deleting the one or more block stores from the first partition; and
shifting another portion of the storage space from the first partition to the second partition, wherein the shifted other portion increases a size of the second partition to provide sufficient storage space for one or more other protection groups and the first partition is decreased in size based on the deletion of the one or more block stores; and

in response to the second partition reaching a maximum size, reporting that the file system is encoded based on the second erasure code; and

a client computer, comprising:
a memory that stores at least instructions; and
one or more processors that execute instructions that are configured to cause performance of actions, including, providing one or more of one or more client requests or information associated with the second erasure code.