Global in-line extent-based deduplication
US-2015193169-A1 · Jul 9, 2015 · US
US10007459B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10007459-B2 |
| Application number | US-201715642958-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 6, 2017 |
| Priority date | Oct 20, 2016 |
| Publication date | Jun 26, 2018 |
| Grant date | Jun 26, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Performance tuning in a storage system that includes one or more storage devices, including: storing, by a primary controller of the storage system, data corresponding to one or more computer processes into one or more of the one or more storage devices, determining, by a secondary controller that is configured similarly to the primary controller, one or more utilization patterns of the data, and initiating, in dependence upon the one or more utilization patterns of the data, a modification to a manner in which the one or more computer processes access the data stored in the one or more storage devices.
Opening claim text (preview).
What is claimed is: 1. A method of performance tuning in a storage system that includes one or more storage devices, the method comprising: storing, by a primary controller of the storage system, first data of a first workload type and second data of a second workload type into one or more of the one or more storage devices; determining, by a secondary controller that is configured similarly to the primary controller, a first utilization pattern associated with the first workload type and a second utilization pattern associated with the second workload type, wherein at least some of the data access rights of the primary controller supersede the data access rights of the secondary controller; and initiating, in dependence upon a comparison of the first utilization pattern and the second utilization pattern to utilization patterns exhibited by known workload types, a modification to a manner in which one or more computer processes access the first data and the second data stored in the one or more storage devices, wherein the modification initiates one or more remedial measures which include initiating or terminating one or more processes, powering up or powering down at least one storage device, and moving data from one storage device to another storage device. 2. The method of claim 1 , wherein the one or more computer processes correspond to one or more software applications from one or more of: a user application layer, an operating system layer, or a data storage layer. 3. The method of claim 2 , wherein at least one of the one or more computer processes is a process at the data storage layer, and wherein initiating the modification to the manner in which the one or more computer processes access the first data and the second data comprises: modifying one or more system configuration parameters of the one or more storage devices. 4. The method of claim 2 , wherein initiating the modification to the manner in which the one or more computer processes access the first data and the second data comprises: sending, from the secondary controller to an application programming interface of the one or more software applications, the first utilization pattern and the second utilization pattern. 5. The method of claim 4 , wherein at least one of the one or more software applications is a management application for a virtual computing environment, and wherein the first utilization pattern and the second utilization pattern each correspond to one or more configurable virtual or physical resource constraints. 6. The method of claim 1 , further comprising: creating a snapshot of data stored within the one or more storage devices, wherein the snapshot includes the data corresponding to the one or more computer processes; wherein determining, by the secondary controller, the first utilization pattern and the second utilization pattern comprises analyzing the snapshot to determine one or more of: workload patterns, client access patterns, or tracing information. 7. The method of claim 1 , wherein determining, by the secondary controller, the first utilization pattern and the second utilization pattern comprises: evaluating, by the secondary controller, metadata corresponding to each input/output (I/O) operation handled by the primary controller to determine tracing information. 8. The method of claim 7 , wherein the tracing information includes one or more of: an indication that a given I/O operation is a read operation, an indication that a given I/O operation is a write operation, an indication of a source entity for a given I/O operation, an indication of a volume identification for a target volume of a given I/O operation, an indication of addressing information for a given I/O operation, or an indication of a memory size for a given I/O operation. 9. The method of claim 1 , further comprising: determining, in dependence upon one or more utilization patterns, a second storage location for one or more portions of data stored within a first storage location on the one or more storage volumes; and moving the one or more portions of the data to the second storage location, wherein the second storage location that has better performance characteristics than the first storage location on the one or more storage volumes. 10. The method of claim 1 , further comprising: for a section of data stored within the one or more storage devices, reverse mapping the section of data to a software application, wherein the data corresponding to the one or more computer processes includes the section of data; and sending, in dependence upon reverse mapping the section of data, one or more utilization patterns to the software application. 11. An apparatus that includes one or more storage devices, the apparatus including a computer processor and a computer memory, the computer memory including computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the steps of: storing, by a primary controller of the storage system, first data of a first workload type and second data of a second workload type into one or more of the one or more storage devices; determining, by a secondary controller that is configured similarly to the primary controller, a first utilization pattern associated with the first workload type and a second utilization pattern associated with the second workload type, wherein at least some of the data access rights of the primary controller supersede the data access rights of the secondary controller; and initiating, in dependence upon a comparison of the first utilization pattern and the second utilization pattern to utilization patterns exhibited by known workload types, a modification to a manner in which one or more computer processes access the first data and the second data stored in the one or more storage devices, wherein the modification initiates one or more remedial measures which include initiating or terminating one or more processes, powering up or powering down at least one storage device, and moving data from one storage device to another storage device. 12. The apparatus of claim 11 , wherein the one or more computer processes correspond to one or more software applications from one or more of: a user application layer, an operating system layer, or a data storage layer. 13. The apparatus of claim 12 , wherein at least one of the one or more computer processes is a process at the data storage layer, and wherein initiating the modification to the manner in which the one or more computer processes access the first data and the second data comprises: modifying one or more system configuration parameters of the one or more storage devices. 14. The apparatus of claim 12 , wherein initiating the modification to the manner in which the one or more computer processes access the first data and the second data comprises: sending, from the secondary controller to an application programming interface of the one or more software applications, the first utilization pattern and the second utilization pattern. 15. The apparatus of claim 14 , wherein at least one of the one or more software applications is a management application for a virtual computing environment, and wherein the first utilization pattern and the second utilization pattern each correspond to one or more configurable virtual or physical resource constraints. 16. The apparatus of claim 12 , wherein the computer program instructions, when executed by the computer processor, cause the computer processor to further carry out the steps of: for a section of data stored within the o
Improving I/O performance · CPC title
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation {; Recording or statistical evaluation of user activity, e.g. usability assessment} · CPC title
by assessing time · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.