Adaptively tuning polling intervals of control hosts in distributed storage systems

US11099780B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11099780-B2
Application numberUS-201916384412-A
CountryUS
Kind codeB2
Filing dateApr 15, 2019
Priority dateApr 15, 2019
Publication dateAug 24, 2021
Grant dateAug 24, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The described technology is generally directed towards adaptively tuning storage systems. According to an embodiment, a system can comprise a processor and computer executable components that can comprise an interval determiner to determine a polling interval based on an estimate of a workload of a shared data store on a data storage array, based on a change activity detected by the system. Further, a host controller can receive transactions from a host application, wherein the transactions perform one or more of updating the local data store, or querying the local data store for results, and a daemon process that, at the polling interval, performs one or more of, polling the data storage array for updates to the local data store based on the shared data store, or updating the shared data store based on the local data store.

First claim

Opening claim text (preview).

What is claimed is: 1. A system, comprising: a memory that stores computer executable components; and a processor that executes the computer executable components stored in the memory, wherein the computer executable components comprise: an interval determiner to determine a polling interval based on an estimate of a workload of a shared data store on a data storage array, based on a change activity detected by the system, wherein the change activity detected by the system comprises a rate of change of a size of a local data store in comparison to a first threshold; a host controller to receive transactions from a host application, wherein the transactions perform one or more of updating the local data store, or querying the local data store for results; and a daemon process that, at the polling interval, performs one or more of: polling the data storage array for updates to the local data store based on the shared data store, or updating the shared data store based on the local data store. 2. The system of claim 1 , wherein the change activity detected by the system further comprises a number of transactions received from the host application in comparison to a second threshold. 3. The system of claim 1 , wherein the host controller further receives transactions from one or more additional host applications, and wherein the change activity detected by the system further comprises a change in a total number of host applications from which transactions are received in comparison to a second threshold. 4. The system of claim 1 , wherein the daemon process measures a time for response from the data storage array for the polling for updates to the local data store and the updating the shared data store based on the local data store, and wherein the change activity detected by the system further comprises the time for response in comparison to a second threshold. 5. The system of claim 1 , wherein the change activity detected by the system further comprises an error in one or more of, the polling the data storage array for updates and the updating the shared data store based on the local data store, and wherein the change activity detected by the system further comprises a second of errors detected in comparison to a second threshold. 6. The system of claim 5 , wherein the interval determiner further determines a pause interval based on the polling interval, and wherein upon detection of the error, the system reduces activity based on the pause interval. 7. The system of claim 1 , wherein the data storage array comprises a group name server. 8. A computer-implemented method, comprising: updating, by a data storage array comprising a processor, a shared data store, based on an update request received from a management host device; receiving, by the data storage array, a polling request from the management host device, wherein the polling request is received at a polling interval determined by the management host device based on an estimate, by the management host device, of a workload of the shared data store, wherein the estimate of the workload of the shared data store is based on a change activity detected by the management host device, wherein the change activity detected by the host management device comprises a rate of change of a size of a local data store in comparison to a first threshold; and responding, by the data storage array, to the polling request. 9. The computer-implemented method of claim 8 , wherein the change activity detected by the system further comprises a number of transactions received from host application in comparison to a second threshold. 10. The computer-implemented method of claim 8 , wherein host controller further receives transactions from one or more additional host applications, and wherein the change activity detected by the system further comprises a change in a total number of host applications from which transactions are received in comparison to a second threshold. 11. The computer-implemented method of claim 8 , wherein the daemon process further measures a time for response from the data storage array for the polling for updates to the local data store and the updating the shared data store based on the local data store, and wherein the change activity detected by the system further comprises the time for response in comparison to a second threshold. 12. The computer-implemented method of claim 8 , wherein the change activity detected by the system further comprises an error in one or more of, the polling the data storage device for updates and the updating the shared data store based on the data storage array. 13. The computer-implemented method of claim 12 , wherein the interval determiner further determines a pause interval based on the polling interval, and wherein upon detection of the error, the system reduces activity based on the pause interval. 14. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor of a network device, facilitate performance of operations, comprising: determining a polling interval based on an estimate of a workload of a shared data store on a data storage array, based on a change activity detected by the system, wherein the change activity comprises a rate of change of a size of a local data store in comparison to a first threshold; receiving transactions from a host application, wherein the transactions perform one or more of updating the local data store, or querying the local data store for results; and performing, by a daemon process at the polling interval, one or more of: polling the data storage array for updates to the local data store based on the shared data store, or updating the shared data store based on the local data store. 15. The non-transitory machine-readable medium of claim 14 , wherein the change activity further comprises a number of transactions received from the host application in comparison to a second threshold. 16. The non-transitory machine-readable medium of claim 14 , wherein the change activity further comprises a number of transactions received from the host application in comparison to a second threshold. 17. The non-transitory machine-readable storage medium of claim 14 , wherein the change activity further comprises a number of transactions received from a host application in comparison to a second threshold. 18. The non-transitory machine-readable medium of claim 14 , wherein the daemon process further measures a time for response from the data storage array for the polling for updates to the local data store and the updating the shared data store based on the local data store, and wherein the change activity detected by the system further comprises the time for response in comparison to a second threshold. 19. The non-transitory machine-readable medium of claim 14 , wherein the change activity further comprises an error. 20. The non-transitory machine-readable medium of claim 19 , wherein the operations further comprise: determining, by an interval determiner, a pause interval based on the polling interval, wherein, upon detection of the error, the system reduces activity based on the pause interval.

Assignees

Inventors

Classifications

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Improving or facilitating administration, e.g. storage management · CPC title

  • G06F3/0659Primary

    Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11099780B2 cover?
The described technology is generally directed towards adaptively tuning storage systems. According to an embodiment, a system can comprise a processor and computer executable components that can comprise an interval determiner to determine a polling interval based on an estimate of a workload of a shared data store on a data storage array, based on a change activity detected by the system. Fur…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0659. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 24 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).