Patentable/Patents/US-10554391
US-10554391

Technologies for dynamically allocating data storage capacity for different data storage types

PublishedFebruary 4, 2020
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Technologies for allocating data storage capacity on a data storage sled include a plurality of data storage devices communicatively coupled to a plurality of network switches through a plurality of physical network connections and a data storage controller connected to the plurality of data storage devices. The data storage controller is to determine a target storage resource allocation to be used by one or more applications to be executed by one or more sleds in a data center, determine data storage capacity available for each of a plurality of different data storage types on the data storage sled, wherein each data storage type is associated with a different level of data redundancy, determine an amount of data storage capacity for each data storage type to be allocated to satisfy the target storage resource allocation, and adjust the amount of data storage capacity allocated to each data storage type.

Patent Claims
25 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A data storage sled for allocation of data storage capacity, the data storage sled comprising: a plurality of data storage devices communicatively coupled to a plurality of network switches through a plurality of physical network connections; and a data storage controller connected to the plurality of data storage devices, wherein the data storage controller is to: (i) determine a target storage resource allocation to be used by one or more applications to be executed by one or more sleds in a data center, (ii) determine data storage capacity available for each of a plurality of different data storage types on the data storage sled, wherein each data storage type is associated with a different level of data redundancy, (iii) determine an amount of data storage capacity for each data storage type to be allocated to satisfy the target storage resource allocation, and (iv) adjust the amount of data storage capacity allocated to each data storage type, wherein the different data storage types include ephemeral data storage and durable data storage.

2

2. The data storage sled of claim 1 , wherein to determine the target storage resource allocation comprises to: receive one or more storage requests from the one or more applications; and determine, in response to receiving the one or more storage requests, a target storage resource allocation based on the one or more storage requests.

3

3. The data storage sled of claim 2 , wherein the one or more storage requests received from one or more applications includes an amount of data storage capacity requested for storing ephemeral data.

4

4. The data storage sled of claim 2 , wherein the one or more storage requests received from one or more applications includes an amount of data storage capacity requested for storing durable data.

5

5. The data storage sled of claim 1 , wherein to determine the data storage capacity available for each of the plurality of different data storage types on the data storage sled comprises to determine data storage capacity available for storing ephemeral data on the data storage sled.

6

6. The data storage sled of claim 1 , wherein to determine the data storage capacity available for each of the plurality of different data storage types on the data storage sled comprises to determine data storage capacity available for storing durable data on the data storage sled.

7

7. The data storage sled of claim 1 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to determine data storage capacity allocation among multiple data storage sleds in the data center.

8

8. The data storage sled of claim 1 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to communicate, by the data storage sled, with one or more other data storage sleds in the data center to determine data storage capacity allocation among the data storage sleds in the data center.

9

9. The data storage sled of claim 1 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to receive data storage capacity allocation data from an orchestrator server.

10

10. The data storage sled of claim 1 , wherein the data storage controller is further to: receive a data storage access request from an application executed on a compute sled of the one or more compute sleds in the data center; and determine, in response to a receipt of the data storage access request, a type of data storage access operation and a data storage type requested to be accessed based on the data storage access request; wherein the data storage access operation includes a read or write access operation.

11

11. The data storage sled of claim 10 , wherein the data storage controller is further to: determine whether the data storage access request is a write access operation request on the durable data storage; and perform, in response to a determination that the data storage access request is a write access operation request on the durable data storage, the data storage access operation on the durable data storage.

12

12. The data storage sled of claim 11 , wherein to perform the data storage access operation on the durable data storage comprises to: write data on the durable data storage on the data storage sled; and send a copy of the data to another data storage sled in the data center to store the data on the another data storage sled to store a redundant copy of the data.

13

13. One or more non-transitory, machine-readable storage media comprising a plurality of instructions stored thereon that, in response to being executed, cause a data storage sled to: determine a target storage resource allocation to be used by one or more applications to be executed by one or more compute sleds in a data center; determine data storage capacity available for each of a plurality of different data storage types on the data storage sled, wherein each data storage type is associated with a different level of data redundancy; determine an amount of data storage capacity for each data storage type to be allocated to satisfy the target storage resource allocation; and adjust the amount of data storage capacity allocated to each data storage type; wherein the different data storage types include ephemeral data storage and durable data storage.

14

14. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the target storage resource allocation comprises to: receive one or more storage requests from the one or more applications; and determine, in response to receiving the one or more storage requests, a target storage resource allocation based on the one or more storage requests.

15

15. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the data storage capacity available for each of the plurality of different data storage types on the data storage sled comprises to determine data storage capacity available for storing ephemeral data on the data storage sled.

16

16. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the data storage capacity available for each of the plurality of different data storage types on the data storage sled comprises to determine data storage capacity available for storing durable data on the data storage sled.

17

17. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to determine data storage capacity allocation among multiple data storage sleds in the data center.

18

18. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to communicate with one or more other data storage sleds in the data center to determine data storage capacity allocation among the data storage sleds in the data center.

19

19. The one or more non-transitory, machine-readable storage media of claim 13 , wherein to determine the amount of data storage capacity required for each of the plurality of different data storage types to satisfy the target storage resource allocation comprises to receive data storage capacity allocation data from an orchestrator server.

20

20. The one or more non-transitory, machine-readable storage media of claim 13 , further comprising a plurality of instructions that in response to being executed cause the data storage sled to: receive a data storage access request from an application executed on a compute sled of the one or more compute sleds in the data center; and determine, in response to a receipt of the data storage access request, a type of data storage access operation and a data storage type requested to be accessed based on the data storage access request; wherein the data storage access operation includes a read or write access operation.

21

21. The one or more non-transitory, machine-readable storage media of claim 20 , further comprising a plurality of instructions that in response to being executed cause the data storage sled to perform, in response to a determination that the data storage access request is a write access operation request on the ephemeral data storage, the data storage access operation on the ephemeral data storage.

22

22. The one or more non-transitory, machine-readable storage media of claim 20 , further comprising a plurality of instructions that in response to being executed cause the data storage sled to: determine whether the data storage access request is a write access operation request on the durable data storage; and perform, in response to a determination that the data storage access request is a write access operation request on the durable data storage, the data storage access operation on the durable data storage.

23

23. The one or more non-transitory, machine-readable storage media of claim 22 , wherein performing the data storage access operation on the durable data storage comprises to: write data on the durable data storage on the data storage sled; and send a copy of the data to another data storage sled in the data center to store the data on the another data storage sled to store a redundant copy of the data.

24

24. A method for allocation of data storage capacity on a data storage sled, the method comprising: determining, by the data storage sled, a target storage resource allocation to be used by one or more applications to be executed by one or more compute sleds in a data center; determining, by the data storage sled, data storage capacity available for each of a plurality of different data storage types on the data storage sled, wherein each data storage type is associated with a different level of data redundancy; determining, by the data storage sled, an amount of data storage capacity for each data storage type to be allocated to satisfy the target storage resource allocation; and adjusting, by the data storage sled, the amount of data storage capacity allocated to each data storage type; wherein the different data storage types include ephemeral data storage and durable data storage.

25

25. The method of claim 24 , wherein determining the target storage resource allocation comprises: receiving, by the data storage sled, one or more storage requests from the one or more applications; and determining, in response to receiving the one or more storage requests and by the data storage sled, a target storage resource allocation based on the one or more storage requests.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

December 28, 2017

Publication Date

February 4, 2020

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Technologies for dynamically allocating data storage capacity for different data storage types” (US-10554391). https://patentable.app/patents/US-10554391

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.