Please download the dossier by clicking on the dossier button x
×

Dynamically building a visualization filter

  • US 10,156,961 B1
  • Filed: 09/24/2013
  • Issued: 12/18/2018
  • Est. Priority Date: 09/24/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method, performed by a computing device, of dynamically constructing and displaying a filtered performance visualization for a distributed data storage system using a graphical user interface (GUI) on the computing device, the method comprising:

  • receiving, from a remote data server, a set of data points representing performance of the distributed data storage system, the set of data points including data points that represent performance of each data storage array of a set of data storage arrays of the distributed data storage system at a sequence of time periods, the performance of any given data storage array at a given time period being a measure of Input/Output (I/O) operations per second performed by that data storage array during that time period;

    displaying, using the GUI, an unfiltered graph of the set of data points in an aggregated manner plotted against time by;

    for each time period, calculating an aggregated I/O operations per second measurement of the distributed data storage system by summing together all the measures of I/O operations per second of every data storage array of the set of data storage arrays; and

    displaying a graph of the calculated aggregated I/O operations per second measurement of the distributed data storage system against time;

    receiving a list of filterable categories from the remote data server, the filterable categories representing respective categories of elements for which the distributed data storage system records regarding performance of the distributed data storage system;

    displaying the list of filterable categories to the user via the GUI;

    subsequent to displaying the list of filterable categories to the user via the GUI, receiving a category selection of a particular filterable category of the received list of filterable categories from a user via the GUI;

    sending the category selection to the remote data server;

    in response to sending the category selection to the remote data server, receiving a set of filterable elements from the remote data server, the filterable elements of the set respectively representing specific instances of a feature of the distributed data storage system represented by the selected particular filterable category;

    displaying the set of filterable elements of the selected particular filterable category to the user via the GUI;

    after displaying the set of filterable elements, receiving, from the user, an element selection of a particular filterable element of the set of filterable elements;

    receiving another list of filterable categories from the remote data server, the other list of filterable categories being different than the list of filterable categories by having the selected particular filterable category removed, the other list of filterable categories having been created by the remote data server in response to the element selection;

    displaying the other list of filterable categories to the user via the GUI, wherein displaying the other list includes displaying the other list of filterable elements while refraining from displaying the selected particular filterable category as part of the other list;

    after displaying the other list of filterable categories, receiving another category selection of another particular filterable category of the other list of filterable categories from the user via the GUI;

    sending the other category selection to the remote data server;

    in response to sending the other category selection to the remote data server, receiving another set of filterable elements from the remote data server, the filterable elements of the other set respectively representing specific instances of another feature of the distributed data storage system represented by the other selected particular filterable category;

    displaying the other set of filterable elements of the other selected particular filterable category to the user via the GUI;

    after displaying the other set of filterable elements, receiving, from the user, another element selection of another particular filterable element of the other set of filterable elements;

    filtering performance data of the distributed data storage system by removing data points from the set of data points that do not represent both the selected particular filterable element and the other selected particular filterable element, yielding a filtered set of data points; and

    displaying, using the GUI, a graph of the filtered set of data points in an aggregated manner plotted against time by;

    for each time period, calculating a filtered aggregated I/O operations per second measurement of the distributed data storage system by summing together all the measures of I/O operations per second of every data storage array of the set of data storage arrays, disregarding the removed data points; and

    displaying a graph of the calculated filtered aggregated I/O operations per second measurement of the distributed data storage system against time;

    wherein communicating with the remote data server is done using a representational state transfer (REST) architecture.

View all claims
  • 9 Assignments
Timeline View
Assignment View
    ×
    ×