US20160026552A1 - System, Method, and Computer Program Product for Storage Management Dashboard - Google Patents

System, Method, and Computer Program Product for Storage Management Dashboard Download PDF

Info

Publication number
US20160026552A1
US20160026552A1 US14/341,508 US201414341508A US2016026552A1 US 20160026552 A1 US20160026552 A1 US 20160026552A1 US 201414341508 A US201414341508 A US 201414341508A US 2016026552 A1 US2016026552 A1 US 2016026552A1
Authority
US
United States
Prior art keywords
storage
attribute
graph
user interface
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/341,508
Inventor
James Holden
Omri Kessel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NetApp Inc
Original Assignee
NetApp Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NetApp Inc filed Critical NetApp Inc
Priority to US14/341,508 priority Critical patent/US20160026552A1/en
Assigned to NETAPP, INC. reassignment NETAPP, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HOLDEN, JAMES, KESSEL, OMRI
Publication of US20160026552A1 publication Critical patent/US20160026552A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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
    • G06F11/3409Recording 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 for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/065Generation of reports related to network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Definitions

  • the present disclosure relates generally to computing system monitoring and, more particularly, to providing visual information about the state of computing systems.
  • Information storage systems may include a variety of different hardware and software components.
  • a storage system may include one or more storage controllers, where each of the storage controllers provides the low-level control for a plurality of physical storage drives.
  • the storage system may also include network connections and other items that are ancillary to the storage functionality of the system.
  • Storage systems continue to become more and more complex, with storage controllers hosting an increasing number of logical storage volumes and storage controllers being clustered rather than simply standing alone.
  • FIG. 1 is a simplified block diagram of an example computing system according to one embodiment.
  • FIG. 2 is a simplified block diagram of an example relationship among applications and a storage cluster according to one embodiment.
  • FIG. 3 is a simplified diagram of an example display of contextual information of a computing system according to one embodiment.
  • FIG. 4 is a simplified diagram of an example method of displaying contextual information of a computing system according to one embodiment.
  • FIG. 5 is a simplified diagram of an example method of displaying contextual information of a computing system according to one embodiment.
  • FIG. 6 is a simplified diagram of an example service-oriented architecture (SOA) according to one embodiment.
  • SOA service-oriented architecture
  • One embodiment includes a user interface that provides graphing of performance metric data for one or more storage resources.
  • a storage resource may include multiple storage drives, virtual volumes, network connections, switches, and virtual machines, among other assets.
  • a human user has a convenient visual comparison tool in the user interface that enables the user to compare information about one or more storage resources.
  • Silos of information may exist in different repositories in a storage environment. For example, some information may be stored in databases or management presentations. It may be desirable for a dashboard to provide visibility into a storage environment with sufficient context to enable the user to make informed decisions, ask relevant questions, and track the progress of one or more storage resources. Rather than just have a view of the raw or available storage capacity, the user may be able to determine (e.g., from a financial view point) how the storage usage is progressing in accordance with a plan (e.g., the target state).
  • a plan e.g., the target state
  • a monitoring system accesses and displays information associated with storage systems and the components, assets, and elements in those storage systems.
  • a storage resource may refer to a component that stores data or assists in the storage of data.
  • An attribute of a storage resource may refer to an object closely associated with or belonging to the storage resource.
  • the storage resource is a storage server
  • the storage attribute is the response time of the storage server.
  • the current state of an attribute of a storage resource may be determined.
  • the current state may be monitored by a system monitoring tool.
  • a value of the attribute may range among different values and the attribute may have an acceptable range. For example, an acceptable range may be up to 5 milliseconds (0-5 ms).
  • a user interface including contextual information regarding the storage resource attribute may be displayed.
  • a graph may be rendered in the user interface, where the graph is representative of the current state and the acceptable range for the storage resource attribute.
  • the graph may also include a use forecast, which may refer to a projection of a value of the storage resource attribute. In an example, linear regression may be used to determine the user forecast.
  • the graph enables the user to visualize the attributes of storage resources and be more knowledgeable of the storage infrastructure and environment.
  • the storage resource is a storage server
  • the storage attribute is storage capacity.
  • the current state and target state of an attribute of a storage resource may be determined.
  • the current state may be monitored by a system monitoring tool, and a user may provide the target state of the storage resource attribute.
  • a user interface including contextual information regarding the storage resource attribute may be displayed.
  • a graph may be rendered in the user interface, where the graph is representative of the current state and the target state of the storage resource attribute.
  • the graph may be, for example, a Bullet graph including the current state, the target state, and the use forecast of the storage resource attribute.
  • the Bullet graph may be representative of the current storage capacity, target storage capacity, and the use forecast of the storage environment monitored by the performance monitoring tool.
  • all categories displayed may be hyperlinked such that a user selecting the hyperlink may be provided with a report regarding the current state, target state, and/or use forecast of the storage resource attribute.
  • the user interface may also display visual indications to highlight particular categories that violate a user-configured policy or that may violate a user-configured policy if not dealt with soon by the user.
  • FIG. 1 is directed to a network storage system, and the scope of embodiments is applicable to a wide variety of computer systems other than storage systems. Accordingly, the concepts described herein for monitoring and providing contextual information may be applied to computing systems generally.
  • FIG. 1 is an illustration of a network storage system 190 adapted according to one embodiment. Various embodiments of the present disclosure may be implemented by the network storage system 190 , as described in more detail below.
  • the system 190 includes server system 110 connected to client system 160 via a network 165 .
  • the server system 110 accesses storage subsystems 100 that are connected to the server system 110 via a network 167 .
  • the storage subsystems 100 are included in a cluster 135 .
  • Each storage system 100 in the cluster 135 includes a set of storage devices 130 for storing client data, the storage devices 130 of the cluster 135 providing the shared storage of the storage system 100 .
  • Each storage subsystem 100 also includes a storage controller 101 .
  • Each storage controller 101 exercises low-level control over physical storage devices 130 to provide virtualized storage to server system 110 and client 160 . Examples of storage hardware that can be used as physical storage devices 130 includes, e.g., hard disk drives and solid state drives, though the scope of embodiments is not limited to any particular storage hardware.
  • Each storage device 130 may store data from logical storage entities such as one or more storage volumes, where each volume has a file system implemented on the volume.
  • a file system implemented on the logical storage entity may provide multiple directories in a single volume, each directory containing various filenames each of which may be mapped to a multitude of storage devices 130 .
  • Client system 160 may run one or more applications (e.g., word processing or database programs, typified by application 161 ) that use the storage system.
  • Client system 160 includes a computer system that interacts with server system 110 for submitting read/write access requests and for receiving or transmitting data from or to the server system 110 over the network 165 .
  • application 161 on client system 160 may interact over the network 165 with one or more virtual machines (VMs) 115 executing on server system 110 .
  • VMs virtual machines
  • System 190 may include a system monitoring tool that receives data from the system assets, monitors performance of the system assets, and provides user access to analyzed system data.
  • System 190 includes a system monitoring tool that is implemented as an application.
  • a system monitoring tool can be implemented as application 161 at client 160 .
  • the system monitoring tool may be implemented as one of applications 112 , 117 , 119 .
  • application 117 is described as the system monitoring tool.
  • the system monitoring tool 117 receives system data by communicating with storage operating systems at each storage controller 101 .
  • system monitoring tool 117 may communicate via one or more application programming interfaces (APIs) to receive system information, such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • APIs application programming interfaces
  • system information such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • system information such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • system information such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • System 190 also includes a dashboard manager that provides contextual information of the system to a human user in an easily understandable format.
  • Dashboard manager 119 may be implemented as an application.
  • application 119 is described as the dashboard manager 119 .
  • the dashboard manager 119 receives system data by retrieving the data collected by the system monitoring tool 117 .
  • system monitoring tool 117 collects the data and stores the data in a data warehouse.
  • Dashboard manager 119 may communicate with the data warehouse via one or more application programming interfaces (APIs) to receive system information, such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • APIs application programming interfaces
  • system information such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like.
  • Server system 110 includes a computer system that executes applications and interacts with the client system 160 for receiving read/write access requests and receiving or transmitting data from or to the client system 160 over the network 165 .
  • Server system 110 in this example is connected to the client system 160 over a network 165 such as a local area network (LAN), an Ethernet subnet, a peripheral component interconnect (PCI) or PCI express (PCIe) subnet, a switched PCIe subnet, a wide area network (WAN), a metropolitan area network (MAN), the Internet, or the like.
  • LAN local area network
  • Ethernet subnet such as a peripheral component interconnect (PCI) or PCI express (PCIe) subnet, a switched PCIe subnet, a wide area network (WAN), a metropolitan area network (MAN), the Internet, or the like.
  • PCIe peripheral component interconnect
  • WAN wide area network
  • MAN metropolitan area network
  • the Internet or the like.
  • the server system 110 may include any appropriate computer hardware and software.
  • server system 110 includes a general-purpose computer configured to execute any of a variety of operating systems, including the UnixTM, LinuxTM, and Microsoft WindowsTM operating systems.
  • Server system 110 includes hypervisor 113 , which creates and manages one or more Virtual Machines (VMs)—in this case, VM 115 .
  • VMs Virtual Machines
  • the present example shows only a single VM 115 , though in other embodiments, the server 110 includes multiple VMs (not shown), each VM being used by and connected with a client 160 through computer network 165 .
  • systems with more than one client 160 may include more than one VM 115 , each client being supported by at least one VM.
  • VM 115 includes an encapsulation or instance of an operating system and applications 112 , 117 , and 119 executing on top of that instance.
  • application 112 provides read/write access to the clients 160 to data stored in cluster 135 .
  • Application 117 is a system monitoring tool described in more detail below.
  • different types of VM hypervisors 113 may be used (e.g., VMwareTM ESX, MicrosoftTM Hyper-V, etc.).
  • Application 119 provides contextual information of one or more storage resources for a user.
  • Each storage system 100 is configured to allow server system 110 to access its data, for example, to read or write data to the storage system.
  • the server system 110 executes application 112 that “connects” to storage systems 100 over computer network 167 to send an access request (read or write request) to storage system 100 for accessing particular data stored on the storage system 100 .
  • the VM application 112 executing on the server 110 services the connected client 160 by receiving the client access requests and submitting the access requests to the storage system 100 for execution.
  • system 190 The scope of embodiments is not limited to the particular architecture of system 190 .
  • other systems may include additional servers, each server being similar to server system 110 .
  • FIG. 1 shows only one client 160 , it is understood that any appropriate number of clients may be supported by the system 190 .
  • cluster 135 shows two storage subsystems 100 a and 100 b , it is understood that any appropriate number of controllers and storage drive arrays may be used with various embodiments.
  • some embodiments may include only a single storage subsystem, whereas other embodiments may include three or more storage subsystems. In other words, the scope of embodiments is not limited to a single storage cluster.
  • System monitoring tool 117 monitors the assets of system 190 , where the assets include any hardware or software component that is included in the architecture of system 190 or affects the performance of the system 190 .
  • assets include the underlying storage drives (e.g., HDDs and SSDs), virtual volumes, storage controllers, storage subsystems, aggregates of storage subsystems, network connections, virtual machines, hypervisors, applications, and the like.
  • FIG. 2 is a block diagram illustration of an exemplary conceptual layout according to one embodiment.
  • Application 117 is a system monitoring application that provides for data collection, analysis, and display for performance aspects and contextual information of system 190 .
  • tool 117 may be run in a VM in a storage server; additionally or alternatively, a performance management tool may be embodied as an application run on a client (not shown) or on any appropriate computer in communication with cluster 135 .
  • a human user interacts with system monitoring tool 117 via UI 118 .
  • UI 118 may include a command line interface, a graphical user interface (GUI), or other appropriate interface.
  • GUI graphical user interface
  • the human user may rely on UI 118 for troubleshooting and viewing performance data. For instance, the human user may input information identifying requested contextual information, performance statistics, identify new assets, and change settings using UI 118 .
  • FIG. 3 describes an example screen that may be displayed by UI 118 .
  • Storage operating systems (OSs) 136 run on storage controllers 100 ( FIG. 1 ). The scope of embodiments may include any appropriate OS that provides low-level control to implement virtual storage on storage drives. Storage OS instances 136 run on one or more processors at storage controllers 100 . Also, communication between storage OSs 136 and system monitoring tool 117 go through communication links, such as network 167 ( FIG. 1 ).
  • System monitoring tool 117 automatically imports information on the various infrastructure assets in system 190 , providing accurate and real-time visibility of servers, virtual servers, Host Bus Adaptors (HBAs), switches, storage arrays, and the like.
  • system monitoring tool 117 discovers the assets by polling each of the assets that it is aware of.
  • Each of the deployed assets provides one or more APIs that can be used to request information therefrom.
  • System monitoring tool 117 is programmed to use those APIs to automatically import the information.
  • Imported information can include, but is not limited to, storage capacity, data usage, device type, latency, operations per second, faults, and the like.
  • the scope of embodiments is not limited to any particular asset information, and any appropriate asset information may be imported in various embodiments.
  • FIG. 3 is an example display 3000 of system contextual information according to one embodiment.
  • FIG. 3 may be presented by UI 118 ( FIG. 1 ) on a display screen of a computing device to a human user.
  • the underlying data analysis is performed by system monitoring tool 117 and dashboard manager 119 ( FIG. 1 ).
  • FIG. 3 shows a graphical display in which contextual information for multiple, different assets is displayed, thereby providing the human user with intuitive, digestible information.
  • Dashboard manager 119 provides contextual information of the storage environment to a user via dashboard 3002 .
  • Display 3000 illustrates a storage manager dashboard 3002 , which in this example is provided in a single screen of information providing contextual information for the management of storage infrastructure and services. Silos of information may exist in different repositories in the storage environment. For example, some information may be stored in databases or management presentations. Dashboard 3002 provides visibility into a storage environment with sufficient context to enable the user to make informed decisions, ask relevant questions, and track the progress of one or more storage resources. Rather than just have a view of the raw or available storage capacity, the user may be able to determine (e.g., from a financial view point) how the storage usage is progressing in accordance with a plan (e.g., the target state).
  • a plan e.g., the target state
  • Dashboard 3002 highlights issues and may allow an administrator to easily compare a current state of an attribute of one or more storage resources to a target state of the attribute of the one or more storage resources.
  • a storage resource may refer to a component that stores data or assists in the storage of data.
  • a storage resource may be a networked storage device (e.g., storage server), storage controller, network controller, caching unit, disk pool, storage drive (e.g., solid-state drive (SSD) or a disk), storage cluster, rack server, redundant array of independent disks (RAID), physical or virtual storage volume, or storage aggregate.
  • An attribute of a storage resource may refer to an object closely associated with or belonging to the storage resource.
  • Dashboard manager 119 may determine a current state of the attribute of one or more storage resources. The current state of the storage resource attribute may be monitored by system monitoring tool 117 .
  • the storage resources are storage servers, and an attribute of the storage server is its storage capacity.
  • dashboard manager 119 may determine the current storage capacity of the storage servers (e.g., used and allocated memory).
  • the storage resources are storage servers, and an attribute of a storage server is its acceptable range of response times. In such an example, dashboard manager 119 may determine the acceptable range of response times (e.g., for different storage tiers). In another example, the storage resources are storage servers, and an attribute of a storage server is its response time. In such an example, dashboard manager 119 may determine the current response time of the storage servers (e.g., for different storage consumers). In another example, the storage resources are storage servers, and an attribute of a storage server is its input/output per seconds (IOPS). In such an example, dashboard manager 119 may determine the current IOPS of the storage servers.
  • IOPS input/output per seconds
  • Dashboard manager 119 may also break down the storage by tiers.
  • an attribute of the storage server may be a tier of the storage server (e.g., tier 1 storage, tier 2 storage, etc.).
  • an attribute of the storage server is a location of a data center that includes the storage server.
  • the storage resources are storage servers, and an attribute of the storage server is storage traffic.
  • dashboard manager 119 may determine the current storage traffic of a storage server within a time frame (e.g., daily storage traffic, traffic within the last seven days, or traffic within the last month, etc.).
  • Dashboard manager 119 may, for the storage servers, determine the daily mean for the storage traffic within the particular time frames and render graphs representative of the daily means.
  • Storage traffic may be in accordance with the number of requests received from one or more clients, IOPS, number of blocks accessed, number of bytes retrieved, etc.
  • the storage resources are fiber channel (FC) switch ports, and an attribute of the FC switch port is a connection.
  • dashboard manager 119 may determine the current number of FC switch port connections (e.g., number of FC switch port connections and the total number of FC switch ports).
  • the storage resource is FC bandwidth, and an attribute of the FC bandwidth is utilization. In such an example, dashboard manager 119 may determine the current FC bandwidth utilization.
  • the user may also be referred to as an administrator.
  • An administrator may be tasked with overseeing the storage infrastructure.
  • the administrator may set a target state of an attribute of the one or more storage resources in a variety of ways.
  • the administrator has a best guess capacity projection (e.g., I want to buy X storage capacity) and sets this as the target state of the attribute.
  • the administrator determines a target capacity for each storage tier and the sum of each of the target capacities determines the final target storage capacity.
  • the total storage capacity of the environment may be determined and the target state of the attribute may depend on the total storage capacity of the environment.
  • Dashboard 3002 may also allow the user to easily compare current state of an attribute of one or more storage resources to a use forecast of the attribute of the one or more storage resources.
  • dashboard 3002 allows the rapid visualization of current and future issues in the storage infrastructure.
  • Storage information is structured in dashboard 3002 in a highly visible format such that it is easy for the human user to understand the context of storage resources.
  • Dashboard 3002 is displayed on a single window viewable in, for example, a Web browser via, for example, a laptop, desktop, or mobile device.
  • the information displayed in dashboard 3002 is collected from system monitoring tool 117 and may be stored in a data warehouse. Additionally, the collected data may be augmented with information that is configurable by the user to give context to the storage resources and allow comparisons between storage resources.
  • the human user provides the system with information via UI 118 .
  • Dashboard 3002 displays a variety of discrete panes providing contextual storage management. For example, an administrator may look into different storage attributes and compare them to expectations.
  • dashboard 3002 includes panes 3004 , 3006 , 3008 , 3010 , 3012 , 3014 , and 3016 .
  • Each pane contains contextual information on certain aspects of the storage environment and provides a condensed format to enable the administrator to find storage information quickly.
  • the panes displayed in dashboard 3002 may provide the administrator with a story regarding the availability and usage of storage resources in the storage environment. Accordingly, the administrator may feel in control of and knowledgeable about the storage environment.
  • dashboard 3002 is illustrated as including seven panes, this is not intended to be limiting and other embodiments may include more or fewer than seven panes.
  • the dashboard may include one or more panes.
  • Pane 3004 is labeled “Summary” 3020 and is displayed in the upper left-hand corner of dashboard 3002 . Pane 3004 displays a summary, detailing storage capacity 3022 , fiber channel (FC) switch ports 3024 , and FC bandwidth 3026 , and how they trend over time for the last twelve months.
  • FC fiber channel
  • Dashboard manager 119 may display a user interface including contextual information regarding an attribute of one or more storage resources. For example, dashboard manager 119 may render in the user interface a graph representative of the current state, the target state, and/or use forecast of the attribute of the one or more storage resources. In an example, dashboard manager 119 renders a Bullet graph including the current state, the target state, and the use forecast of the storage resource attribute, as will be explained further below.
  • Storage capacity in terms of use and allocation are plotted against time (last 12 months) on a graph 3028 .
  • Bullet graphs are used in a storage context.
  • a Bullet graph 3030 in pane 3004 illustrates the overall capacity of the storage environment and enables a user to discern storage capacity trends in relation to a current state, a target state, and a use forecast of storage capacity.
  • Storage capacity 3022 is visually depicted in relation to used and allocated storage capacity.
  • dashboard manager 119 may determine a current state of an attribute of one or more storage resources in network storage system 190 .
  • the current state of the storage resource attribute may be monitored by system monitoring tool 117 .
  • system monitoring tool 117 stores the data collected regarding the storage capacity in a data warehouse, and dashboard manager 119 retrieves that data from the data warehouse, processes the data, and displays the data in dashboard 3002 .
  • the attribute may be storage capacity 3022 .
  • dashboard manager 119 determines that 13 petabytes (PBs) are currently being used.
  • the current state of storage capacity may indicate the actual storage capacity in network storage system 190 .
  • Dashboard 3002 shows the current state of storage capacity, which is illustrated numerically by the “13 PB” displayed to the left of Bullet graph 3030 and is also illustrated in a left portion 3032 of Bullet graph 3030 .
  • Dashboard manager 119 may determine the use forecast for an attribute of one or more storage resources in network storage system 190 by, for example, running an algorithm.
  • dashboard manager 119 predicts the storage capacity by running the algorithm on data collected on the storage capacity in network storage system 190 .
  • the algorithm may include a linear regression algorithm.
  • the linear regression algorithm may model the collected data as a best fit line (e.g., to minimize a square of the errors between the collected data and the data as modeled by the best fit line) over time and extract a forecast in the future by projecting along the best fit line.
  • the increase in storage capacity may be used in the linear regression algorithm to determine the storage capacity in the future and also a use forecast in terms of how much storage capacity will be consumed throughout the year.
  • the algorithm may be applied to each of the storage resource attributes to determine the user forecast for the storage resource attribute.
  • dashboard manager 119 determines that the use forecast is 20 PBs.
  • the use forecast for storage capacity 3022 is illustrated numerically by the “20 PB” displayed to the right of Bullet graph 3030 and is also illustrated in a right portion 3036 of Bullet graph 3030 .
  • Dashboard manager 119 may provide a context by allowing entry of a target state of storage resource attribute in network storage system 190 .
  • Dashboard manager 119 may determine the target state of the attribute of the one or more storage resources.
  • a user provides dashboard manager 119 with information regarding the target state of an attribute for one or more storage resources in network storage system 190 .
  • the user may provide dashboard manager 119 with the target state via UI 118 .
  • the user may provide 17.5 PBs as the target storage capacity to use.
  • Dashboard manager 119 may receive the target state (e.g., target storage capacity) input by the user and depict the target state by a mark 3034 at a position that represents the target state on Bullet graph 3030 .
  • Mark 3034 is placed between 15 PBs and 20 PBs and is at a position representing 17.5 PBs in Bullet graph 3030 .
  • the administrator may have allocated funds for 17.5 PBs of storage capacity.
  • the storage resource attribute is storage capacity
  • Bullet graph 3030 is representative of the current storage capacity, target storage capacity, and the use forecast of a storage environment monitored by system monitoring tool 117 .
  • the storage environment includes the one or more storage resources.
  • the human user may visually discern the current state, target state, and use forecast of storage capacity.
  • the user may track storage usage, and compare and contrast the current state, system's prediction(s) (e.g., dashboard manager 119 's prediction(s)), and/or target state of storage capacity.
  • the user may configure the system to show the target state and use forecast of a storage resource attribute for the end of the financial year so that the user can track storage capacity growth compared to the use forecast. Accordingly, users may compare the data to their understanding of the storage environment and be able to adjust their trajectories and budget allocation.
  • dashboard 3002 illustrates the storage capacity state in December at the end of the year, the administrator may determine that she over budgeted. If, however, dashboard 3002 illustrates the storage capacity state in February at the beginning of the year, the administrator may be concerned because the actual storage capacity may be quickly approaching the target storage capacity and the administrator may have under budgeted. In another example, the administrator may view Bullet graph 3030 and identify that the target state (17.5 PBs) is less than the use forecast (20 PBs). In such an example, the administrator may conclude that she under-budgeted on storage capacity and may need to purchase more storage.
  • the storage resource is an FC switch port
  • the attribute is an FC switch port connection.
  • FC switch port connections are plotted against time (last 12 months) on a graph 3038 .
  • a Bullet graph 3040 illustrates the FC switch port connections in the storage environment and enables a user to discern FC switch port connection trends in relation to a current state, a target state, and a use forecast of FC switch ports.
  • FC switch ports 3024 are visually depicted in relation to connections and total quantity of FC switch ports.
  • dashboard manager 119 may determine a current state of FC switch port connections in network storage system 190 .
  • dashboard manager 119 determines that 65,000 FC switch ports are currently connected in network storage system 190 .
  • the current state of FC switch port connections may indicate the actual quantity of FC switch ports currently connected in network storage system 190 .
  • Dashboard 3002 shows the current state of FC switch port connections, which is illustrated numerically by the “65K” displayed to the left of Bullet graph 3040 and is also illustrated in a left portion 3042 of Bullet graph 3040 .
  • Dashboard manager 119 may determine the use forecast for FC switch port connections as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the use forecast for FC switch ports 3024 , dashboard manager 119 determines that the use forecast of FC switch ports is 115,000 FC switch port connections.
  • the use forecast for FC switch ports 3024 is illustrated numerically by the “115K” displayed to the right of Bullet graph 3040 and is also illustrated in a right portion 3046 of Bullet graph 3040 .
  • Dashboard manager 119 may determine the target state of FC switch ports 3024 as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the target state of FC switch ports 3024 , the user may provide 130,000 as the target FC switch port connections to use. Dashboard manager 119 may receive the target state (e.g., target FC switch port connections) input by the user and depict the target state by a mark 3044 at a position that represents the target state on Bullet graph 3040 . Mark 3044 is placed between 125K and 150K and is at a position representing 130K in Bullet graph 3040 . In such an example, the administrator may have allocated funds for 130,000 FC switch port connections.
  • target state e.g., target FC switch port connections
  • Mark 3044 is placed between 125K and 150K and is at a position representing 130K in Bullet graph 3040 .
  • the administrator may have allocated funds for 130,000 FC switch port connections.
  • the storage resource attribute is FC switch port connections
  • Bullet graph 3040 is representative of current FC switch port connections, target FC switch port connections, and the use forecast of FC switch port connections in a storage environment monitored by system monitoring tool 117 .
  • the human user may visually discern the current state, target state, and use forecast of FC switch ports.
  • the user may track the quantity of FC switch port connections, and compare and contrast the current state, system's prediction(s) (e.g., dashboard manager 119 's prediction(s)), and/or target state of FC switch port connections.
  • the administrator may view Bullet graph 3040 and identify that the use forecast (115,000 FC switch port connections) is less than the target state (130,000 FC switch port connections). Thus, the administrator may conclude that it is unnecessary to purchase more FC switch ports.
  • the storage resource is FC bandwidth
  • the attribute is FC bandwidth utilization.
  • FC bandwidth is plotted against time (last 12 months) on a graph 3058 .
  • a Bullet graph 3050 illustrates the FC bandwidth utilization of the storage environment and enables a user to discern FC bandwidth utilization trends in relation to a current state and a use forecast of FC bandwidth.
  • FC bandwidth 3026 is visually depicted in relation to utilization and capacity.
  • the FC bandwidth utilization data set does not include a target state but does include acceptable ranges.
  • the human user configures the acceptable ranges of the FC bandwidth via, for example, UI 118 .
  • the acceptable ranges of the FC bandwidth are already set and the user is unable to change the acceptable ranges.
  • Dashboard manager 119 may determine an acceptable range for the attribute of the one or more storage resources (e.g., FC bandwidth) and display a user interface including contextual information regarding the attribute of the one or more storage resources.
  • Dashboard manager 119 may render in the user interface a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources.
  • Bullet graph 3050 displays the actual utilization compared against these acceptable ranges.
  • the acceptable ranges include three different levels of acceptable ranges—low utilization (0-50 percent utilization), mid utilization (51-75 percent utilization), and high utilization (76-100 percent utilization).
  • Other embodiments may include fewer or more than three utilization levels and may differ in their utilization percentages for each level.
  • dashboard manager 119 may determine a current state of FC bandwidth utilization in network storage system 190 .
  • dashboard manager 119 determines that 60 percent of FC bandwidth is currently being used.
  • the current state of FC bandwidth utilization may indicate the actual use of FC bandwidth currently being consumed in network storage system 190 .
  • Dashboard 3002 shows the current state of FC bandwidth utilization, which is illustrated numerically by the “60%” displayed to the left of Bullet graph 3050 and is also illustrated in a portion 3052 of Bullet graph 3050 .
  • Dashboard manager 119 may determine the use forecast for FC bandwidth utilization as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the use forecast for FC bandwidth 3026 , dashboard manager 119 determines that the use forecast is 312 terabytes (TBs) per second. The use forecast for FC bandwidth 3026 is illustrated numerically by the “312 TB/s” displayed to the right of Bullet graph 3050 .
  • the storage resource attribute is FC bandwidth utilization
  • Bullet graph 3050 is representative of current FC bandwidth utilization, target FC bandwidth utilization, and the use forecast of FC bandwidth utilization in a storage environment monitored by system monitoring tool 117 .
  • the human user may visually discern the current state and use forecast of FC bandwidth utilization.
  • the user may track FC bandwidth utilization, and compare and contrast the current state and system's prediction(s) (e.g., dashboard manager 119 's prediction(s)) of FC bandwidth utilization.
  • the user may configure the system to show the current state and use forecast of FC bandwidth. If the current state of FC bandwidth utilization is 40 percent, the administrator may decide to not allocate any more funds to FC bandwidth. If, however, the current state of FC bandwidth utilization is 75 percent, the administrator may decide to allocate more funds to FC bandwidth.
  • Dashboard manager 119 may provide a hyperlink that corresponds to a storage resource attribute. In response to a user selecting the hyperlink, dashboard manager 119 provides a report regarding the current state, target state, and/or use forecast of the storage resource attribute. The report may have information on, for example, the current state, target state, and/or use forecast of the storage resource attribute over a threshold period of time.
  • a user may provide a policy in relation to one or more storage resources.
  • dashboard manager 119 determines whether a violation in a policy (e.g., user-configured policy) for a storage resource attribute has occurred. The user may enter the policy via UI 118 .
  • dashboard manager 119 may display in dashboard 3002 a visual indication that the violation has occurred. The visual indication is used to alert the human user of the violation.
  • a visual indication may be displayed near the particular category that has violated a policy in dashboard 3002 to enable rapid visualizations of issues in the storage environment and to highlight where in dashboard 3002 the administrator should look first. An administrator may use dashboard 3002 to identify issues relative to the data.
  • the administrator may select a visual indication to receive more information about what is causing the violation.
  • the visual indication may be a hyperlink selectable by the administrator to obtain more information about the violation.
  • the hyperlink corresponds to the storage resource attribute that has violated a policy.
  • the administrator may select the visual indication by, for example, pointing a mouse and clicking on the visual indication or touching the visual indication with the administrator's finger (for touch-sensitive screens).
  • a graph or text that is displayed in dashboard 3002 and that is associated with the violation may be a hyperlink selectable by the administrator to obtain more information about the violation.
  • the administrator may select the graph or text, for example, by pointing a mouse and clicking on the graph or text or by touching the graph or text with the administrator's finger (for touch-sensitive screens).
  • the violation may be a global violation or a local violation (potential violation).
  • a global violation may refer to an actual violation of a policy (e.g., user-configured policy).
  • a visual indication of a global violation may be depicted with a solid circle.
  • a visual indication 3054 is displayed adjacent to storage capacity 3022 to indicate that a global violation in a user-configured policy for storage capacity 3022 has occurred.
  • Visual indication 3054 is a solid circle. Accordingly, the human user is directed to visual indication 3054 and may easily determine that a global violation of a user-configured policy for storage capacity 3022 has occurred.
  • Visual indication 3054 may be displayed if, for example, a growth rate threshold or a targeted consumption has been exceeded.
  • the use forecast (20 PB) exceeds the target state (17.5 PB), indicating that dashboard manager 119 predicts the actual storage usage will exceed what the administrator targeted to use.
  • a visual indication may be displayed near storage capacity 3022 to alert the administrator of this.
  • a local violation may refer to a potential violation of a policy (e.g., user-configured policy) and that may actually violate the policy if not dealt with soon.
  • dashboard manager 119 determines whether a potential violation in a user-configured policy for a storage resource attribute exceeds a threshold.
  • tier 3 storage may abide by user-configured policies but a data center including tier 3 stage may be almost full and its free storage below N megabytes.
  • dashboard manager 119 may determine that a potential violation in a user-configured policy for the storage resource attribute exceeds a threshold. in response to determining that the potential violation in the user-configured policy for the storage resource attribute exceeds the threshold, dashboard manger 119 displays in the user interface a visual indication that the potential violation in the user-configured policy for the storage resource attribute exceeds the threshold.
  • a visual indication indicating a local violation/potential violation highlights issues that are not of prime importance but should be displayed to make the administrator aware of potential issues.
  • the problem does not appear in the summarized information and resides in a lower level of infrastructure.
  • a visual indication of the potential violation may be depicted with a hollow circle.
  • a visual indication 3071 is displayed adjacent to tier 3 storage, which is also discussed in the next section, and indicates that there is a potential for a violation in a user-configured policy for tier 3 storage, such as exceeding a capacity threshold.
  • Visual indication 3071 is a hollow circle.
  • the human user is directed to visual indication 3071 and may easily determine that a potential violation of a user-configured policy for tier 3 storage exceeds the threshold.
  • Visual indication 3071 may be displayed if, for example, tier 3 storage does not actually violate a policy but a particular data center is almost full and it would be advantageous to alert the user that the particular data center is almost full.
  • the storage resource is a storage server, and a first attribute is a storage tier and a second attribute is capacity.
  • Pane 3006 is labeled “Storage Tiers Capacity” 3060 and is displayed in the middle left portion of dashboard 3002 . Different types of storage may be broken down into different tiers. Pane 3006 displays a plurality of storage tiers and their capacity. In dashboard 3002 , pane 3006 includes five storage tiers—tier 1 , tier 2 , tier 3 , tier 4 , and tier 5 . Although dashboard 3002 is illustrated as including five storage tiers, this is not intended to be limiting and other embodiments may include and/or display more or fewer than five storage tiers. Dashboard 3002 may include one or more storage tiers.
  • Pane 3006 may be configurable to display as many tiers as requested by the human user. Different storage tiers may have different prices and/or capabilities. For example, tier 1 storage may be very expensive compared to tier 5 storage, and the administrator may budget accordingly. The administrator may look into different investments to determine whether her target storage goals are being met.
  • pane 3006 For each of the displayed storage tiers, pane 3006 displays the capacity usage for the last twelve months and a Bullet graph that illustrates the overall capacity of the particular storage tier. Each Bullet graph has a value representing the actual usage to its left, the use forecast, and a target state of the storage tier's capacity. Additionally, for each storage tier, storage capacity is plotted against time (last 12 months). Accordingly, the administrator is able to discern storage capacity trends in relation to a current state, a target state, and a use forecast for a particular storage tier. Thus, the administrator may be able to compare different storage tiers relative to each other and their usage patterns.
  • dashboard manger 119 may determine a current state of a storage tier in network storage system 190 .
  • dashboard manager 119 determines that 4,200 TBs of tier 1 storage are currently being used.
  • the current state of tier 1 storage capacity may indicate the actual storage capacity of tier 1 storage in network storage system 190 .
  • Dashboard 3002 shows the current state of tier 1 storage capacity, which is illustrated numerically by the “4,200 TB” displayed to the left of Bullet graph 3064 and is also illustrated in a left portion 3066 of Bullet graph 3064 .
  • the use forecast for tier 1 storage is 10 PBs
  • the target storage capacity for tier 1 storage is 6 PBs, represented by the rectangular mark in Bullet graph 3064 .
  • a visual indication 3070 is displayed adjacent to tier 1 storage and indicates that a global violation in a user-configured policy for tier 1 storage has occurred. Accordingly, the administrator is directed to visual indication 3070 and may easily determine that a global violation of a user-configured policy for tier 1 storage has occurred. This may alert the administrator that tier 1 storage may run out of capacity in, for example, two months. The user may select visual indication 3070 or the text and/or graph corresponding to tier 1 storage to determine what caused the display of visual indication 3070 and may then become aware that the tier 1 storage may projected to run out of space in two months.
  • dashboard manager 119 determines that 5,600 TBs of tier 2 storage are currently being used.
  • the current state of tier 2 storage capacity may indicate the actual storage capacity of tier 2 storage in network storage system 190 .
  • Dashboard 3002 shows the current state of tier 2 storage capacity, which is illustrated numerically by the “5,600 TB” displayed to the left of the Bullet graph associated with tier 2 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 2 storage is 9 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • dashboard manager 119 determines that 3,913 TBs of tier 3 storage are currently being used.
  • the current state of tier 3 storage capacity may indicate the actual storage capacity of tier 3 storage in network storage system 190 .
  • Dashboard 3002 shows the current state of tier 3 storage capacity, which is illustrated numerically by the “3,913 TB” displayed to the left of the Bullet graph associated with tier 3 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 3 storage is 6 PBs and the target storage capacity is 5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • a visual indication 3071 is displayed adjacent to tier 3 storage and indicates that a potential violation in a user-configured policy for tier 3 storage has occurred. Accordingly, the administrator is directed to visual indication 3071 and may easily determine that a potential violation of a user-configured policy for tier 3 storage has occurred.
  • Visual indication 3071 may be displayed if, for example, a problem exists but does not actually breach a user-configured policy.
  • the visual indications indicating a potential violation highlights issues that are not of prime importance but should be displayed to make the administrator aware of potential issues. In an example, the problem does not appear in the summarized information and resides in a lower level of infrastructure.
  • the tier 3 storage summaries may be within the user-configured policies; however, an indication location with tier 3 storage may have violated a “local policy” that does not violate a “global policy” in the summaries.
  • the total capacity of tier 3 storage in the data centers as a whole may have enough storage capacity, but one particular data center may be running out of space.
  • the user may select visual indication 3071 or the text and/or graph corresponding to tier 3 storage to determine what caused the display of visual indication 3071 and may then become aware that the data center is running out of space.
  • dashboard manager 119 determines that 4,500 TBs of tier 4 storage are currently being used.
  • the current state of tier 4 storage capacity may indicate the actual storage capacity of tier 4 storage in network storage system 190 .
  • Dashboard 3002 shows the current state of tier 4 storage capacity, which is illustrated numerically by the “4,500 TB” displayed to the left of the Bullet graph associated with tier 4 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 4 storage is 6 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • dashboard manager 119 determines that 5,500 TBs of tier 5 storage are currently being used.
  • the current state of tier 5 storage capacity may indicate the actual storage capacity of tier 5 storage in network storage system 190 .
  • Dashboard 3002 shows the current state of tier 5 storage capacity, which is illustrated numerically by the “5,500 TB” displayed to the left of the Bullet graph associated with tier 5 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 5 storage is 8 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • a histogram is displayed under “Total Capacity” showing the total capacity of the respective storage tier. This histogram allows an understanding of how much of a share of the storage environment is distributed among the storage tiers.
  • tier 4 storage has the largest share and tier 1 storage has the smallest share compared to each of the other displayed storage tiers.
  • the storage capacities of tier 2 storage, tier 3 storage, and tier 5 storage fall somewhere in between tier 1 storage and tier 4 storage.
  • a bar graph is displayed under “Months to Full” showing the predicted number of months until the respective storage tier is full.
  • This bar graph may be thought of as similar to a fuel gauge—the smaller the capacity, the smaller the bar displayed.
  • tier 1 storage is expected to be full in about two months
  • tier 2 storage is expected to be full in about eight months
  • tier 3 storage is expected to be full in about nine months
  • tier 4 storage is expected to be full in about 5 months
  • tier 5 storage is expected to be full in about one year.
  • the storage resource is a storage server
  • the attribute is storage traffic.
  • Pane 3008 is labeled “Daily Storage Traffic” 3080 and is displayed in the lower left-hand corner of dashboard 3002 .
  • Pane 3008 provides the administrator with a heartbeat of the storage environment in general.
  • Pane 3008 displays a daily storage traffic chart 3082 including three lines that enable the administrator to compare and contrast previous storage traffic.
  • a first line graph 3084 represents yesterday's mean of the storage traffic
  • a second line graph 3086 represents a daily mean of the storage traffic within the last seven days
  • a third line graph 3088 represents a daily mean of the storage traffic within the last six months.
  • Daily storage traffic chart 3082 enables the user to visualize any abnormalities in the way the storage infrastructure has been performing, as it gives information, which would highlight both cyclical (e.g., last seven days) and seasonal variations (e.g., last six months).
  • the administrator may compare the line graphs and in particular, the data spikes in the line graphs. For example, the administrator may look into yesterday's traffic represented by first line graph 3084 and determine that the peak of data traffic (50 TBs) occurred at 4:00 P.M yesterday.
  • first line graph 3084 is described as being designed for a daily view, this is not limiting and other embodiments may illustrate a performance for any time frame (e.g., weekly or monthly).
  • the other line graphs may also represent other data traffic values for other time frames.
  • the line graphs may be displayed in different colors or patterns for ease of review.
  • the storage resources are data centers, and an attribute of a data center is its location.
  • System monitoring tool 117 may monitor a large storage environment containing a plurality of data centers.
  • Pane 3010 is labeled “Data Centers Time to Full” 3090 and is displayed in the upper right-hand corner of dashboard 3002 .
  • Pane 3010 displays the different storage tiers and the cities in which the data centers are located.
  • Pane 3010 is designed to give the user, for each storage tier, an easy to read view into how much storage capacity is left in each data center.
  • pane 3010 indicates data centers of a particular storage tier that are expected to run out of space within a particular time period and/or data centers of a particular storage tier that have sufficient space and that the user need not be concerned with.
  • the solid black color indicates that the storage capacity for that particular data center will be full in less than three months
  • the dashed lines indicate that the storage capacity for that particular data center will be full within three to six months
  • the solid white color indicates that the storage capacity for that particular data center will take more than six months to be full.
  • the darkness of a color may be used to indicate a data center's time until it is full. For example, the darker the color the less space is available in the data center, and the lighter the color the less concerned the administrator should be.
  • the default is that the darkest color indicates that the storage capacity for that particular data center will be full in less than three months, the lighter color indicates that the storage capacity for that particular data center will be full within three to six months, and the lightest color indicates that the storage capacity for that particular data center will take more than six months to be full.
  • the human user may configure pane 3010 to display particular storage tiers and may also configure how to indicate that less space is available in a data center.
  • the human user sets the thresholds based on purchasing constraints. In such an example, if it takes two weeks to purchase and stand up storage the darkest color may be set to two weeks (rather than three months).
  • the example in pane 3010 shows three ranges or categorizations of time periods (e.g., less than three months, between three and six months, and more than six months), this is not intended to be limiting and other embodiments may include fewer or more than three ranges or categorizations of time periods and/or time periods of different lengths.
  • the storage resources are storage servers, and a first attribute of a storage server is its storage capacity, and a second attribute of the storage server is its response time.
  • Pane 3012 is labeled “Top 10 Applications” 3110 and is displayed in the middle right portion of dashboard 3002 .
  • Pane 3012 displays the top ten storage consumers and enables the human user to more easily understand the location of the issues and identity of the storage consumers.
  • pane 3012 is illustrated as displaying applications, this is not intended to be limiting, and pane 3012 may display whatever the business categorizes as the consumers.
  • other components may be used such as business units, projects, tenants, and/or storage arrays.
  • Availability may be a function of how much time the application is up and running
  • Pane 3012 enables the administrator to see one level below the storage capacity by drilling down into the actual consumers of the storage. The administrator is able to identify the top critical services and look at their individual consumption contributions to storage capacity. Pane 3012 lists out the consumers in order of greatest capacity and displays how much storage the consumers have used over the last 12 months. For example, the administrator may look at applications listed in pane 3012 and ask important questions, such as “What is growth of the storage capacity in terms of this application?” and “What is the speed of the response time that is being delivered to this application?”
  • storage capacity is plotted against time (last 12 months) on a graph.
  • a histogram is displayed under “Capacity” showing the total capacity of the respective application. This histogram allows an understanding of how much of a share of the storage infrastructure is distributed among the applications.
  • Pane 3012 shows a summary of the top ten storage consumers' response times using a box-and-whisker graph.
  • Each box-and-whisker graph is overlaid on a block with a dotted background, where the dotted block represents an acceptable service level range.
  • a left of the acceptable range represents the minimum (e.g., fastest) response times, and the right of the acceptable range represents the maximum (e.g., slowest) response times.
  • dashboard manager 119 renders a box-and-whisker graph overlaid on an object representative of acceptable response times for one or more storage resources, where the box-and-whisker graph is representative of actual response times of the one or more storage resources.
  • Pane 3012 displays a block with a dotted background, where the dotted block is representative of acceptable response times for one or more storage resources, and the actual performance of the storage is superimposed on the acceptable response times.
  • a box-and-whisker graph shows a spread of the actual data points of the response times and median response times of the storage.
  • dashboard manager 119 renders a box-and-whisker graph 3115 for the “Juice” application.
  • a left-most data point of a “whisker” 3117 of box-and-whisker graph 3115 represents the fastest response time of the storage (approximately 10 milliseconds (ms)).
  • a right-most data point of a “whisker” 3118 of box-and-whisker graph 3115 represents the slowest response time of the storage (approximately 19 ms).
  • a thick solid box 3119 of box-and-whisker graph 3115 represents the actual data measurements (e.g., actual data points), and the thin vertical line inside thick solid box 3119 represents the median response time of the storage.
  • a first quartile of the response times falls between the left-most data point of whisker 3117 and the intersection of whisker 3117 and thick solid box 3119 .
  • a second quartile of the response times falls between the intersection of whisker 3117 and thick solid box 3119 and the median response time.
  • a third quartile of the response times falls between the median response time and the intersection of thick solid box 3119 and whisker 3118 .
  • a fourth quartile of the response times falls between the intersection of thick solid box 3119 and whisker 3118 and the right-most data point of whisker 3118 .
  • Half of the response times are less than the median response time, and half of the response times are greater than the median response time. Additionally, between 25-75 percent of the response times fall within thick solid box 3119 .
  • the graph is described as being broken down into quarters of a whole (e.g., quartiles), this is not intended to be limiting and in other embodiments the graph may be broken down into different portions of the whole (e.g., quintiles, etc.). Additionally, the graph may be broken down into unequal portions.
  • the administrator may view the box-and-whisker graph overlaid on the dotted block representative of acceptable response times and determine whether consumers are experiencing acceptable or unacceptable response times.
  • Pane 3012 provides the administrator with a contextual view of, for example, the acceptable response rates for particular applications. From looking at pane 3012 , the administrator may be able to determine when most of the responses to the application workload are outside of the acceptable range.
  • the box-and-whisker graph completely resides to the far left of the acceptable range this could suggest the consumer is on storage that is delivering more performance than required and an opportunity may exist to move the consumer to a different type of storage. For example, if an application is on tier 3 storage and experiencing very fast response times, the administrator may decide to move the application to, for example, tier 4 storage. If, however, the box-and-whisker graph completely resides to the far right of the acceptable range this could suggest the consumer is on storage that is delivering far less performance than required and an opportunity may exist to move the consumer to a different type of storage. For example, if an application is on tier 3 storage and experiencing unacceptable response times, the administrator may decide to move the application to, for example, tier 1 storage or tier 2 storage.
  • Visual indications 3112 and 3114 are solid circles and are displayed to the left of the consumer categories that have a global violation in a user-configured policy.
  • visual indications 3112 and 3114 highlight the consumer categories “Prophet” and “Beacon” and provide the administrator with an easy visual aid in identifying consumer categories that are associated with a global violation in a user-configured policy.
  • the policy specifies that the mean response time should always be within the acceptable service range.
  • visual indication 3114 highlights a consumer category in which the mean response time is outside of the acceptable service range.
  • Visual indications 3112 and 3114 may refer to the same or different global-policy violation.
  • visual indication 3116 is a hollow circle and is displayed to the left of the consumer category that is associated with a potential violation in a user-configured policy.
  • visual indication 3116 highlights the consumer category “GlobalCollab” and provides the administrator with an easy visual aid in identifying consumer categories that is associated with a potential violation in a user-configured policy. For example, by viewing visual indication 3116 in pane 3012 , the administrator may be able to more easily see that the capacity of the storage delivering the “GlobalCollab” application may be running out of space.
  • the storage resources are storage servers, and a first attribute of a storage server is its storage tier, and a second attribute of the storage server is its performance (e.g., response time and/or IOPS).
  • Pane 3014 is labeled “Storage Tiers Daily Performance” 3120 and is displayed in the bottom middle portion of dashboard 3002 .
  • the administrator is able to see the overall storage tiers and how they are performing. In particular, the administrator is able to look into different storage tiers from a statistical performance point of view rather than a raw capacity point of view.
  • the response time and throughput I/O per second (IOPS) is displayed for each storage tier.
  • the administrator is able to determine whether a particular storage tier should be used over another storage tier and more easily tie the particular storage tier to performance. For example, looking at pane 3014 , the administrator may be able to determine the acceptable range of I/O that justifies being in tier 1 storage.
  • Pane 3014 shows a summary of the previous day's response times and throughput (IOPS) using box-and-whisker graphs. Each box-and-whisker graph is overlaid on a block with a dotted background, where the dotted block represents an acceptable service level range for that tier.
  • a left of the acceptable range represents the minimum (e.g., fastest) response times
  • the right of the acceptable range represents the maximum (e.g., slowest) response times.
  • IOPS a left of the acceptable range represents the minimum (e.g., fastest) IOPS
  • the right of the acceptable range represents the maximum (e.g., slowest) IOPS.
  • Pane 3014 displays acceptable response times for the storage tiers, and the actual performance of the storage is superimposed on the response times.
  • a box-and-whisker graph shows a spread of the actual data points of the response times and median response times of that storage tier.
  • dashboard manager 119 renders a box-and-whisker graph 3123 for tier 1 storage.
  • a left-most data point of a “whisker” 3124 of box-and-whisker graph 3123 represents the fastest response time of the storage (approximately 2 ms).
  • a right-most data point of a “whisker” 3125 of box-and-whisker graph 3123 represents the slowest response time of the storage (approximately 8 ms).
  • a thick solid box 3126 of box-and-whisker graph 3123 represents the actual data measurements (e.g., actual data points), and the thin vertical line inside thick solid box 3126 represents the median response time of tier 1 storage.
  • a first quartile of the response times falls between the left-most data point of whisker 3124 and the intersection of whisker 3124 and thick solid box 3126 .
  • a second quartile of the response times falls between the intersection of whisker 3124 and thick solid box 3126 and the median response time.
  • a third quartile of the response times falls between the median response time and the intersection of thick solid box 3126 and whisker 3125 .
  • a fourth quartile of the response times falls between the intersection of thick solid box 3126 and whisker 3125 and the right-most data point of whisker 3125 .
  • Half of the response times are less than the median response time, and half of the response times are greater than the median response time. Additionally, between 25-75 percent of the response times fall within thick solid box 3126 .
  • the administrator may view the box-and-whisker graph overlaid on the block with the dotted background and determine whether particular storage tiers are providing acceptable or unacceptable response times.
  • Pane 3014 provides the administrator with a contextual view of, for example, the acceptable response rates for each storage tier. From looking at pane 3014 , the administrator may be able to determine when most of the responses of a storage tier are outside of the acceptable range. Accordingly, the administrator may see if there is opportunity to consolidate tiers or realign workloads delivered from those tiers.
  • visual indication 3122 is a solid circle and is displayed to the left of the storage tier that has a global violation in a user-configured policy.
  • visual indication 3122 highlights tier 2 storage and provides the administrator with an easy visual aid in identifying that tier 2 storage has violated a user-configured policy.
  • the storage resources are storage servers, and an attribute of a storage server is orphaned capacity.
  • Pane 3016 is labeled “Orphaned Capacity” 3130 and is displayed in the lower right-hand corner of dashboard 3002 .
  • Orphaned storage may be storage capacity that has been paid for but is not being used at the moment.
  • a horizontally stacked bar 3132 is a visualization illustrating that the storage environment contains 325 TBs. Additionally, inside horizontally stacked bar 3132 is a utilization bar 3134 representing that 2.5 percent of the 325 TBs is currently being used. Utilization bar 3134 shows the actual capacity that is orphaned.
  • each TB costs $4,000
  • the administrator may reconsider how much storage to purchase because only 2.5 percent of the already purchased 325 TBs is being used.
  • the percentages shown in horizontally stacked bar 3132 are user-configured and show the acceptable ranges. The more to the left utilization bar 3134 is, the more unacceptable the situation is.
  • a bar graph 3136 is a visualization representing the orphaned capacity detailed by storage tier. Bar graph 3136 enables the administrator to understand which categories should be investigated for finding savings. Bar graph 3136 breaks the storage down into different tiers, which shows the weight of storage capacity itself broken down into different tiers.
  • Orphaned Capacity 3130 may be user configured.
  • orphaned capacity is storage orphaned by configuration, which refers to storage allocated to a host but the configuration has not been done properly and the host cannot access the storage.
  • An ignore feature for storage may appear in this category. The ignore feature enables the administrator to remove from the calculations storage the administrator knows is going to appear in pane 3016 but should be ignored for a valid reason. For example, the administrator may want to ignore the storage if it is being migrated and will be removed from the data center floor.
  • orphaned capacity is storage orphaned by performance, which refers to storage that is correctly configured to be accessed by a host but a user-defined value of unacceptable small amounts of storage traffic exists over a user-defined period.
  • An ignore feature for storage may appear in this category. The ignore feature enables the administrator to remove from the calculations storage the administrator knows is not going to be used for a significant time period but could because of disaster failover or other unexpected reasons. The ignored storage would not appear in the calculation.
  • Dashboard 3002 may include more or fewer than the panes displayed in display 3000 . Further, each pane may include more or less information that that displayed in the pane, and the information displayed in a pane may be included or combined with another pane.
  • visual indications 3054 , 3070 , 3112 , 3114 , and 3122 are solid circles and represent global violations
  • visual indications 3071 and 3116 are hollow circles and represent potential violations exceeding a threshold.
  • visual indications may be any visual indications that highlight particular categories, tiers, storage consumers, etc.
  • a visual indication may be an exclamation mark, orange star, and/or the like using any suitable symbol, shape, color, etc.
  • dashboard 3002 may use a color scheme that enables colorblind users to understand the data and the page can also be printed on a black and white printer and still convey the information.
  • the storage information may be structured in the dashboard such that the most commonly used or required information is displayed in the upper left portion of the screen and the least frequently used or required information is displayed in the bottom right portion of the screen.
  • dashboard manager 119 may render a first graph in a first pane and render a second graph in a second pane.
  • Dashboard manager 119 may identify a most commonly used graph of the first and second graphs rendered in the user interface.
  • dashboard manager 119 may render the first graph in a first portion of the user interface and render the second graph in a second portion of the user interface, where the first portion is closer to the upper left-hand corner of the user interface than the second portion.
  • dashboard manager 119 may render the first graph in the second portion of the user interface and render the second graph in the first portion of the user interface.
  • a user and/or administrator may select the content and location of panes.
  • the administrator may be more concerned with the storage capacity and thus choose to have pane 3004 , which shows the storage capacity, in the upper-left hand corner of dashboard 3002 .
  • the administrator may also select what content is shown in each of the panes. For example, the administrator may choose to combine the information in panes 3004 and 3006 into one pane. In another example, the administrator may choose to remove FC bandwidth 3026 from pane 3004 and insert the information from pane 3010 into pane 3004 .
  • Various embodiments may provide advantages over conventional systems. For instance, the rendering of performance metric data, current state, target state, and/or use forecast for one or more storage resources on a single graph ( FIG. 3 ) is not only new, but highly intuitive for a user who wants to compare the progression and state of a storage resource (e.g., performance, IOPS, etc.) in the system. For example, in a Bullet graph, multiple data about a storage resource (e.g., current state, target state, and/or use forecast) may be shown on a single graph and conveyed in an easy to understand manner.
  • a storage resource e.g., current state, target state, and/or use forecast
  • multiple data about storage resources and/or their consumers may be shown on a single graph and conveyed in an easy to understand manner. Accordingly, space on the display may be saved, thus using UI real estate economically.
  • FIG. 4 is a simplified diagram of an example method 400 of displaying contextual information of a computing system according to one embodiment.
  • Method 400 is not meant to be limiting and may be used in other applications.
  • Method 400 includes blocks 410 - 465 .
  • a current state of an attribute of one or more storage resources is determined, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool.
  • dashboard manager 119 determines a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by system monitoring tool 117 .
  • the storage resource attribute is the response time of a storage server.
  • the storage resource attribute is the IOPS of a storage server.
  • the attribute may be any of the attributes described with respect to FIG. 3 and/or any other storage resource attribute.
  • an acceptable range for the attribute of the one or more storage resources is determined.
  • dashboard manager 119 determines an acceptable range for the attribute of the one or more storage resources.
  • the acceptable ranges may be determined by a user and/or an administrator, based on prior observed ranges for the attributes, based on statistical analyses, and/or the like.
  • the acceptable range may be determined by calculating an average response time and providing that average response time as the acceptable range.
  • a user interface including contextual information regarding the attribute of the one or more storage resources is displayed.
  • dashboard manager 119 displays a user interface including contextual information regarding the attribute of the one or more storage resources.
  • a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources is rendered in the user interface.
  • dashboard manager 119 renders in the user interface a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources.
  • the graph may be, for example, a box-and-whisker graph overlaid on an object representative of acceptable response times for one or more storage resources (e.g., the block with the dotted background).
  • the graph is also representative of a forecast of how much time until a data center is full (e.g., in pane 3080 ).
  • the forecast may be illustrated by the use of colors and patterns (e.g., darker color or a particular pattern represents data centers to which the administrator should be pay extra attention).
  • dashboard manager 119 determines whether a violation in a user-configured policy for the storage resource attribute has occurred.
  • dashboard manager 119 determines whether a violation in a user-configured policy for the storage resource attribute has occurred.
  • a visual indication is displayed in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred.
  • dashboard manager 119 displays a visual indication in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred.
  • dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold.
  • dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold.
  • a visual indication is displayed in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • dashboard manager 119 displays a visual indication in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • a graph, text, and/or a visual indication displayed in the user interface and corresponding to a storage resource attribute may be a hyperlink that, when selected by a user, provides a link to more detailed reports regarding the storage resource attribute.
  • a block may be inserted into method 400 to determine whether the graph, text, and/or a visual indication has been selected. In response to determining that the graph, text, and/or a visual indication has been selected, a more detailed report regarding the storage resource attribute may be provided to the user.
  • FIG. 5 is a simplified diagram of an example method 500 of displaying contextual information of a computing system according to one embodiment.
  • Method 500 is not meant to be limiting and may be used in other applications.
  • Method 500 includes blocks 510 - 565 .
  • a current state of an attribute of one or more storage resources is determined, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool.
  • dashboard manager 119 determines a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by system monitoring tool 117 .
  • the storage resource attribute is the response time of a storage server.
  • the storage resource attribute is the IOPS of a storage server.
  • the attribute may be any of the attributes described with respect to FIG. 3 and/or any other storage resource attribute.
  • a target state of the attribute of the one or more storage resources is determined.
  • dashboard manager 119 determines a target state of the attribute of the one or more storage resources.
  • the target state of the attribute is storage capacity of a storage server.
  • the target state of the attribute is the number of FC switch port connections.
  • the target state may be determined by a user and/or an administrator, based on prior observed ranges for the storage resource attributes, based on statistical analyses, and/or the like.
  • the administrator has a best guess capacity projection (e.g., I want to buy X storage capacity) and sets this as the target state of the attribute.
  • the target state is the total of what the administrator budgeted for minus a safety margin. For example, if the administrator has budgeted for 20 PB of storage capacity, the target state may be 20 PB minus a safety margin of 5 PB, which brings the target state to 15 PB of storage capacity.
  • a user interface including contextual information regarding the attribute of the one or more storage resources is displayed.
  • dashboard manager 119 displays a user interface including contextual information regarding the attribute of the one or more storage resources.
  • a graph representative of the current state and the target state of the attribute of the one or more storage resources is rendered in the user interface.
  • dashboard manager 119 renders in the user interface a graph representative of the current state and the target state of the attribute of the one or more storage resources.
  • the graph may be, for example, a Bullet graph representative of the current state and target state of the storage resource attribute.
  • the graph may indicate colors (e.g., a darkness of a color) to represent the current state of the storage resource attribute.
  • the graph may also include a forecast for the corresponding attribute. For example, in pane 3010 , a default may be that the darker the color the closer the data center is to the target state, and the lighter the color the further the data center is to the target state.
  • dashboard manager 119 determines whether a violation in a user-configured policy for the storage resource attribute has occurred. In a block 555 , if the violation in the user-configured policy for the storage resource attribute has occurred, a visual indication is displayed in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred. In an example, if the violation in the user-configured policy for the storage resource attribute has occurred, dashboard manager 119 displays a visual indication in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred.
  • dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold.
  • dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold.
  • a visual indication is displayed in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • dashboard manager 119 displays a visual indication in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • a graph, text, and/or a visual indication displayed in the user interface and corresponding to a storage resource attribute may be a hyperlink that, when selected by a user, provides a link to more detailed reports regarding the storage resource attribute.
  • a block may be inserted into method 400 to determine whether the graph, text, and/or a visual indication has been selected. In response to determining that the graph, text, and/or a visual indication has been selected, a more detailed report regarding the storage resource attribute may be provided to the user.
  • FIG. 6 is a simplified diagram of an example service-oriented architecture (SOA) 2100 .
  • SOA 2100 is built around a client-service model.
  • requests originate from one or more clients 2111 - 2119 .
  • Each of the clients 2111 - 2119 may make requests through a network 2120 to a server 2130 .
  • any of the clients may be system monitoring tool 117 ( FIG. 1 ) and the server 2130 may be server 110 ( FIG. 1 ).
  • system monitoring tool 117 may be a client that runs on server 2130 , which is consistent with the FIG. 1 example above.
  • any of the clients may be dashboard manager 119 ( FIG. 1 ) and the server 2130 may be server 110 ( FIG. 1 ).
  • dashboard manager 119 may be a client that runs on server 2130 , which is consistent with the FIG. 1 example above.
  • the scope of embodiments is not limited to any particular architecture.
  • Network 2120 may be any kind of network including a local area network (LAN), such as an Ethernet, and/or a wide area network (WAN), such as the Internet.
  • server 2130 may be a standalone workstation, a cluster, a production server, within a virtual machine, and/or the like.
  • Server 2130 includes a processor 2140 coupled to memory 2150 .
  • processor 2140 may control operation and/or execution of hardware and/or software on server 2130 . Although only one processor 2140 is shown, server 2130 may include multiple processors, CPUs, multi-core processors, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and/or the like.
  • Memory 2150 may include one or more types of machine readable media.
  • machine readable media may include floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, and/or any other medium from which a processor or computer is adapted to read.
  • Memory 2150 may be used to store an interface 2160 that is used by clients 2111 - 2119 to access the storage resource information with clients 2111 - 2119 being able to make requests for all, or part, of the storage resource information.
  • Each of the requests is directed to interface 2160 where the requested storage resource information is retrieved, and a response is returned to the requesting client 2111 - 2119 .
  • Numerous mechanisms for directing the requests to interface 2160 may be used, including using a parameterized and/or unparameterized uniform resource locator (URL), using an application name corresponding to interface 2160 , and/or the like.
  • the requests may also be made using protocols or methods such as application programming interface (API) calls, remote procedure calls, representational state transfer (REST) web services, simple object access protocol (SOAP) web services, and/or the like.
  • API application programming interface
  • REST representational state transfer
  • SOAP simple object access protocol
  • FIG. 6 is merely an example which should not unduly limit the scope of the claims.
  • any of the clients 2111 - 2119 may be hosted in server 2130 .
  • the storage resource information may be stored outside of memory 2150 or server 2130 .
  • the storage resource information may be stored in one or more files in a storage module hosted in server 2130 or in another computing device elsewhere in SOA 2100 .
  • the storage resource information may be stored in one or more databases stored in one or more database management systems.
  • processor 2140 and memory 2150 may be hosted in a virtual machine.
  • One example embodiment includes a cluster of server nodes, where performance data for the server nodes themselves, as well as for the applications running on the server nodes, is sampled according to the workload of each node or application.
  • various elements of embodiments of the present disclosure are in essence the software code defining the operations of such various elements.
  • the executable instructions or software code may be obtained from a non-transient, tangible readable medium (e.g., a hard drive media, optical media, RAM, EPROM, EEPROM, tape media, cartridge media, flash memory, ROM, memory stick, network storage device, and/or the like).
  • readable media can include any medium that can store information.
  • example clients 160 , server 110 , storage controllers 101 , and server 2130 include processor-based devices and may include general-purpose processors or specially-adapted processors (e.g., an Application Specific Integrated Circuit). Such processor-based devices may include or otherwise access the non-transient, tangible, machine readable media to read and execute the code. By executing the code, the one or more processors perform the actions of the processes of methods 400 and/or 500 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An example method for providing contextual information of a computer system includes determining a current state of an attribute of one or more storage resources. The one or more storage resources is coupled to a computer system, and the current state of the storage resource attribute is monitored by a performance monitoring tool. The example method includes determining a target state of the attribute and displaying a user interface including contextual information regarding the attribute. The example method further includes rendering in the user interface a graph representative of the current state and the target state of the attribute o. In some examples, the method further includes determining a forecast for the attribute and rendering the forecast in the user interface. In some examples, the user interface may include a visual indication of whether the attribute is in violation of a policy.

Description

    CROSS-REFERENCE
  • The present application claims the benefit of U.S. Provisional Patent Application No. 61/919,487, filed Dec. 20, 2013, and entitled “System, method, and computer program product for monitoring infrastructure and assets,” the disclosure of which is incorporated by reference herein in its entirety.
  • TECHNICAL FIELD
  • The present disclosure relates generally to computing system monitoring and, more particularly, to providing visual information about the state of computing systems.
  • BACKGROUND
  • Information storage systems may include a variety of different hardware and software components. For instance, a storage system may include one or more storage controllers, where each of the storage controllers provides the low-level control for a plurality of physical storage drives. The storage system may also include network connections and other items that are ancillary to the storage functionality of the system. Storage systems continue to become more and more complex, with storage controllers hosting an increasing number of logical storage volumes and storage controllers being clustered rather than simply standing alone.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a simplified block diagram of an example computing system according to one embodiment.
  • FIG. 2 is a simplified block diagram of an example relationship among applications and a storage cluster according to one embodiment.
  • FIG. 3 is a simplified diagram of an example display of contextual information of a computing system according to one embodiment.
  • FIG. 4 is a simplified diagram of an example method of displaying contextual information of a computing system according to one embodiment.
  • FIG. 5 is a simplified diagram of an example method of displaying contextual information of a computing system according to one embodiment.
  • FIG. 6 is a simplified diagram of an example service-oriented architecture (SOA) according to one embodiment.
  • DETAILED DESCRIPTION
  • In the following description, specific details are set forth describing some embodiments consistent with the present disclosure. It will be apparent, however, to one skilled in the art that some embodiments may be practiced without some or all of these specific details. The specific embodiments disclosed herein are meant to be illustrative but not limiting. One skilled in the art may realize other elements that, although not specifically described here, are within the scope and the spirit of this disclosure. In addition, to avoid unnecessary repetition, one or more features shown and described in association with one embodiment may be incorporated into other embodiments unless specifically described otherwise or if the one or more features would make an embodiment non-functional.
  • I. Overview
  • Various embodiments of the present disclosure provide providing contextual information of a computer system that is both efficient and easy to understand for a human user. One embodiment includes a user interface that provides graphing of performance metric data for one or more storage resources. For example, a storage resource may include multiple storage drives, virtual volumes, network connections, switches, and virtual machines, among other assets. A human user has a convenient visual comparison tool in the user interface that enables the user to compare information about one or more storage resources.
  • Silos of information may exist in different repositories in a storage environment. For example, some information may be stored in databases or management presentations. It may be desirable for a dashboard to provide visibility into a storage environment with sufficient context to enable the user to make informed decisions, ask relevant questions, and track the progress of one or more storage resources. Rather than just have a view of the raw or available storage capacity, the user may be able to determine (e.g., from a financial view point) how the storage usage is progressing in accordance with a plan (e.g., the target state).
  • To display contextual storage information and to perform other tasks, a monitoring system accesses and displays information associated with storage systems and the components, assets, and elements in those storage systems. A storage resource may refer to a component that stores data or assists in the storage of data. An attribute of a storage resource may refer to an object closely associated with or belonging to the storage resource.
  • In an example, the storage resource is a storage server, and the storage attribute is the response time of the storage server. The current state of an attribute of a storage resource may be determined. The current state may be monitored by a system monitoring tool. A value of the attribute may range among different values and the attribute may have an acceptable range. For example, an acceptable range may be up to 5 milliseconds (0-5 ms). A user interface including contextual information regarding the storage resource attribute may be displayed. A graph may be rendered in the user interface, where the graph is representative of the current state and the acceptable range for the storage resource attribute. The graph may also include a use forecast, which may refer to a projection of a value of the storage resource attribute. In an example, linear regression may be used to determine the user forecast. The graph enables the user to visualize the attributes of storage resources and be more knowledgeable of the storage infrastructure and environment.
  • In another example, the storage resource is a storage server, and the storage attribute is storage capacity. The current state and target state of an attribute of a storage resource may be determined. The current state may be monitored by a system monitoring tool, and a user may provide the target state of the storage resource attribute. A user interface including contextual information regarding the storage resource attribute may be displayed. A graph may be rendered in the user interface, where the graph is representative of the current state and the target state of the storage resource attribute. The graph may be, for example, a Bullet graph including the current state, the target state, and the use forecast of the storage resource attribute. The Bullet graph may be representative of the current storage capacity, target storage capacity, and the use forecast of the storage environment monitored by the performance monitoring tool.
  • Additionally, all categories displayed may be hyperlinked such that a user selecting the hyperlink may be provided with a report regarding the current state, target state, and/or use forecast of the storage resource attribute. The user interface may also display visual indications to highlight particular categories that violate a user-configured policy or that may violate a user-configured policy if not dealt with soon by the user.
  • II. Example System Architectures
  • The example of FIG. 1 below is directed to a network storage system, and the scope of embodiments is applicable to a wide variety of computer systems other than storage systems. Accordingly, the concepts described herein for monitoring and providing contextual information may be applied to computing systems generally.
  • FIG. 1 is an illustration of a network storage system 190 adapted according to one embodiment. Various embodiments of the present disclosure may be implemented by the network storage system 190, as described in more detail below.
  • The system 190 includes server system 110 connected to client system 160 via a network 165. The server system 110 accesses storage subsystems 100 that are connected to the server system 110 via a network 167. The storage subsystems 100 are included in a cluster 135. Each storage system 100 in the cluster 135 includes a set of storage devices 130 for storing client data, the storage devices 130 of the cluster 135 providing the shared storage of the storage system 100. Each storage subsystem 100 also includes a storage controller 101. Each storage controller 101 exercises low-level control over physical storage devices 130 to provide virtualized storage to server system 110 and client 160. Examples of storage hardware that can be used as physical storage devices 130 includes, e.g., hard disk drives and solid state drives, though the scope of embodiments is not limited to any particular storage hardware.
  • Each storage device 130 may store data from logical storage entities such as one or more storage volumes, where each volume has a file system implemented on the volume. A file system implemented on the logical storage entity may provide multiple directories in a single volume, each directory containing various filenames each of which may be mapped to a multitude of storage devices 130.
  • Client system 160 may run one or more applications (e.g., word processing or database programs, typified by application 161) that use the storage system. Client system 160 includes a computer system that interacts with server system 110 for submitting read/write access requests and for receiving or transmitting data from or to the server system 110 over the network 165. In a virtual server environment, application 161 on client system 160 may interact over the network 165 with one or more virtual machines (VMs) 115 executing on server system 110.
  • Various embodiments may include a system monitoring tool that receives data from the system assets, monitors performance of the system assets, and provides user access to analyzed system data. System 190 includes a system monitoring tool that is implemented as an application. For instance, a system monitoring tool can be implemented as application 161 at client 160. Additionally or alternatively, the system monitoring tool may be implemented as one of applications 112, 117, 119. For the purposes of this example, application 117 is described as the system monitoring tool. The system monitoring tool 117 receives system data by communicating with storage operating systems at each storage controller 101. For instance, system monitoring tool 117 may communicate via one or more application programming interfaces (APIs) to receive system information, such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like. Various types of system information are described in more detail below. In short, the system information of this example includes any type of information that allows the monitoring tool 117 to construct a comprehensive description of the architecture, state, and performance of system 190.
  • System 190 also includes a dashboard manager that provides contextual information of the system to a human user in an easily understandable format. Dashboard manager 119 may be implemented as an application. For the purposes of this example, application 119 is described as the dashboard manager 119. The dashboard manager 119 receives system data by retrieving the data collected by the system monitoring tool 117. In an example, system monitoring tool 117 collects the data and stores the data in a data warehouse. Dashboard manager 119 may communicate with the data warehouse via one or more application programming interfaces (APIs) to receive system information, such as hardware names, volume names, usage data, storage capacity, read and write operations per second, and the like. Although system monitoring tool 117 and dashboard manager 119 are illustrated as being separate applications, in other embodiments, system monitoring tool 117 and dashboard manager 119 may be combined into one application.
  • Server system 110 includes a computer system that executes applications and interacts with the client system 160 for receiving read/write access requests and receiving or transmitting data from or to the client system 160 over the network 165. Server system 110 in this example is connected to the client system 160 over a network 165 such as a local area network (LAN), an Ethernet subnet, a peripheral component interconnect (PCI) or PCI express (PCIe) subnet, a switched PCIe subnet, a wide area network (WAN), a metropolitan area network (MAN), the Internet, or the like.
  • The server system 110 may include any appropriate computer hardware and software. In one example, server system 110 includes a general-purpose computer configured to execute any of a variety of operating systems, including the Unix™, Linux™, and Microsoft Windows™ operating systems.
  • Server system 110 includes hypervisor 113, which creates and manages one or more Virtual Machines (VMs)—in this case, VM 115. The present example shows only a single VM 115, though in other embodiments, the server 110 includes multiple VMs (not shown), each VM being used by and connected with a client 160 through computer network 165. Thus, systems with more than one client 160 may include more than one VM 115, each client being supported by at least one VM. VM 115 includes an encapsulation or instance of an operating system and applications 112, 117, and 119 executing on top of that instance. Briefly, application 112 provides read/write access to the clients 160 to data stored in cluster 135. Application 117 is a system monitoring tool described in more detail below. In some embodiments, different types of VM hypervisors 113 may be used (e.g., VMware™ ESX, Microsoft™ Hyper-V, etc.). Application 119 provides contextual information of one or more storage resources for a user.
  • Each storage system 100 is configured to allow server system 110 to access its data, for example, to read or write data to the storage system. The server system 110 executes application 112 that “connects” to storage systems 100 over computer network 167 to send an access request (read or write request) to storage system 100 for accessing particular data stored on the storage system 100. The VM application 112 executing on the server 110 services the connected client 160 by receiving the client access requests and submitting the access requests to the storage system 100 for execution.
  • The scope of embodiments is not limited to the particular architecture of system 190. For instance, other systems may include additional servers, each server being similar to server system 110. While the example of FIG. 1 shows only one client 160, it is understood that any appropriate number of clients may be supported by the system 190. Moreover, while cluster 135 shows two storage subsystems 100 a and 100 b, it is understood that any appropriate number of controllers and storage drive arrays may be used with various embodiments. For instance, some embodiments may include only a single storage subsystem, whereas other embodiments may include three or more storage subsystems. In other words, the scope of embodiments is not limited to a single storage cluster.
  • System monitoring tool 117 monitors the assets of system 190, where the assets include any hardware or software component that is included in the architecture of system 190 or affects the performance of the system 190. Examples of assets include the underlying storage drives (e.g., HDDs and SSDs), virtual volumes, storage controllers, storage subsystems, aggregates of storage subsystems, network connections, virtual machines, hypervisors, applications, and the like.
  • FIG. 2 is a block diagram illustration of an exemplary conceptual layout according to one embodiment. Application 117 is a system monitoring application that provides for data collection, analysis, and display for performance aspects and contextual information of system 190. As explained above with respect to FIG. 1, tool 117 may be run in a VM in a storage server; additionally or alternatively, a performance management tool may be embodied as an application run on a client (not shown) or on any appropriate computer in communication with cluster 135.
  • A human user interacts with system monitoring tool 117 via UI 118. UI 118 may include a command line interface, a graphical user interface (GUI), or other appropriate interface. The human user may rely on UI 118 for troubleshooting and viewing performance data. For instance, the human user may input information identifying requested contextual information, performance statistics, identify new assets, and change settings using UI 118. FIG. 3 describes an example screen that may be displayed by UI 118.
  • Storage operating systems (OSs) 136 run on storage controllers 100 (FIG. 1). The scope of embodiments may include any appropriate OS that provides low-level control to implement virtual storage on storage drives. Storage OS instances 136 run on one or more processors at storage controllers 100. Also, communication between storage OSs 136 and system monitoring tool 117 go through communication links, such as network 167 (FIG. 1).
  • System monitoring tool 117 automatically imports information on the various infrastructure assets in system 190, providing accurate and real-time visibility of servers, virtual servers, Host Bus Adaptors (HBAs), switches, storage arrays, and the like. In one example, system monitoring tool 117 discovers the assets by polling each of the assets that it is aware of. Each of the deployed assets provides one or more APIs that can be used to request information therefrom. System monitoring tool 117 is programmed to use those APIs to automatically import the information. Imported information can include, but is not limited to, storage capacity, data usage, device type, latency, operations per second, faults, and the like. The scope of embodiments is not limited to any particular asset information, and any appropriate asset information may be imported in various embodiments.
  • III. Example Dashboard
  • FIG. 3 is an example display 3000 of system contextual information according to one embodiment. FIG. 3 may be presented by UI 118 (FIG. 1) on a display screen of a computing device to a human user. The underlying data analysis is performed by system monitoring tool 117 and dashboard manager 119 (FIG. 1). FIG. 3 shows a graphical display in which contextual information for multiple, different assets is displayed, thereby providing the human user with intuitive, digestible information. Dashboard manager 119 provides contextual information of the storage environment to a user via dashboard 3002.
  • Display 3000 illustrates a storage manager dashboard 3002, which in this example is provided in a single screen of information providing contextual information for the management of storage infrastructure and services. Silos of information may exist in different repositories in the storage environment. For example, some information may be stored in databases or management presentations. Dashboard 3002 provides visibility into a storage environment with sufficient context to enable the user to make informed decisions, ask relevant questions, and track the progress of one or more storage resources. Rather than just have a view of the raw or available storage capacity, the user may be able to determine (e.g., from a financial view point) how the storage usage is progressing in accordance with a plan (e.g., the target state).
  • Dashboard 3002 highlights issues and may allow an administrator to easily compare a current state of an attribute of one or more storage resources to a target state of the attribute of the one or more storage resources. A storage resource may refer to a component that stores data or assists in the storage of data. In an example, a storage resource may be a networked storage device (e.g., storage server), storage controller, network controller, caching unit, disk pool, storage drive (e.g., solid-state drive (SSD) or a disk), storage cluster, rack server, redundant array of independent disks (RAID), physical or virtual storage volume, or storage aggregate. An attribute of a storage resource may refer to an object closely associated with or belonging to the storage resource. Dashboard manager 119 may determine a current state of the attribute of one or more storage resources. The current state of the storage resource attribute may be monitored by system monitoring tool 117.
  • In an example, the storage resources are storage servers, and an attribute of the storage server is its storage capacity. In such an example, dashboard manager 119 may determine the current storage capacity of the storage servers (e.g., used and allocated memory).
  • In another example, the storage resources are storage servers, and an attribute of a storage server is its acceptable range of response times. In such an example, dashboard manager 119 may determine the acceptable range of response times (e.g., for different storage tiers). In another example, the storage resources are storage servers, and an attribute of a storage server is its response time. In such an example, dashboard manager 119 may determine the current response time of the storage servers (e.g., for different storage consumers). In another example, the storage resources are storage servers, and an attribute of a storage server is its input/output per seconds (IOPS). In such an example, dashboard manager 119 may determine the current IOPS of the storage servers.
  • Dashboard manager 119 may also break down the storage by tiers. For example, an attribute of the storage server may be a tier of the storage server (e.g., tier 1 storage, tier 2 storage, etc.). In another example, an attribute of the storage server is a location of a data center that includes the storage server.
  • In an example, the storage resources are storage servers, and an attribute of the storage server is storage traffic. In such an example, dashboard manager 119 may determine the current storage traffic of a storage server within a time frame (e.g., daily storage traffic, traffic within the last seven days, or traffic within the last month, etc.). Dashboard manager 119 may, for the storage servers, determine the daily mean for the storage traffic within the particular time frames and render graphs representative of the daily means. Storage traffic may be in accordance with the number of requests received from one or more clients, IOPS, number of blocks accessed, number of bytes retrieved, etc.
  • In another example, the storage resources are fiber channel (FC) switch ports, and an attribute of the FC switch port is a connection. In such an example, dashboard manager 119 may determine the current number of FC switch port connections (e.g., number of FC switch port connections and the total number of FC switch ports). In another example, the storage resource is FC bandwidth, and an attribute of the FC bandwidth is utilization. In such an example, dashboard manager 119 may determine the current FC bandwidth utilization.
  • The user may also be referred to as an administrator. An administrator may be tasked with overseeing the storage infrastructure. The administrator may set a target state of an attribute of the one or more storage resources in a variety of ways. In an example, the administrator has a best guess capacity projection (e.g., I want to buy X storage capacity) and sets this as the target state of the attribute. In another example, the administrator determines a target capacity for each storage tier and the sum of each of the target capacities determines the final target storage capacity. In another example, the total storage capacity of the environment may be determined and the target state of the attribute may depend on the total storage capacity of the environment.
  • Dashboard 3002 may also allow the user to easily compare current state of an attribute of one or more storage resources to a use forecast of the attribute of the one or more storage resources. For example, dashboard 3002 allows the rapid visualization of current and future issues in the storage infrastructure. Storage information is structured in dashboard 3002 in a highly visible format such that it is easy for the human user to understand the context of storage resources. Dashboard 3002 is displayed on a single window viewable in, for example, a Web browser via, for example, a laptop, desktop, or mobile device. The information displayed in dashboard 3002 is collected from system monitoring tool 117 and may be stored in a data warehouse. Additionally, the collected data may be augmented with information that is configurable by the user to give context to the storage resources and allow comparisons between storage resources. In an example, the human user provides the system with information via UI 118.
  • Dashboard 3002 displays a variety of discrete panes providing contextual storage management. For example, an administrator may look into different storage attributes and compare them to expectations. In the example illustrated in FIG. 3, dashboard 3002 includes panes 3004, 3006, 3008, 3010, 3012, 3014, and 3016. Each pane contains contextual information on certain aspects of the storage environment and provides a condensed format to enable the administrator to find storage information quickly. The panes displayed in dashboard 3002 may provide the administrator with a story regarding the availability and usage of storage resources in the storage environment. Accordingly, the administrator may feel in control of and knowledgeable about the storage environment. Although dashboard 3002 is illustrated as including seven panes, this is not intended to be limiting and other embodiments may include more or fewer than seven panes. The dashboard may include one or more panes.
  • A. Summary
  • Pane 3004 is labeled “Summary” 3020 and is displayed in the upper left-hand corner of dashboard 3002. Pane 3004 displays a summary, detailing storage capacity 3022, fiber channel (FC) switch ports 3024, and FC bandwidth 3026, and how they trend over time for the last twelve months.
  • 1. Storage Capacity
  • Dashboard manager 119 may display a user interface including contextual information regarding an attribute of one or more storage resources. For example, dashboard manager 119 may render in the user interface a graph representative of the current state, the target state, and/or use forecast of the attribute of the one or more storage resources. In an example, dashboard manager 119 renders a Bullet graph including the current state, the target state, and the use forecast of the storage resource attribute, as will be explained further below.
  • Storage capacity in terms of use and allocation are plotted against time (last 12 months) on a graph 3028. In dashboard 3002, Bullet graphs are used in a storage context. For example, a Bullet graph 3030 in pane 3004 illustrates the overall capacity of the storage environment and enables a user to discern storage capacity trends in relation to a current state, a target state, and a use forecast of storage capacity. Storage capacity 3022 is visually depicted in relation to used and allocated storage capacity.
  • Based on the data collected by system monitoring tool 117, dashboard manager 119 may determine a current state of an attribute of one or more storage resources in network storage system 190. The current state of the storage resource attribute may be monitored by system monitoring tool 117. In an example, system monitoring tool 117 stores the data collected regarding the storage capacity in a data warehouse, and dashboard manager 119 retrieves that data from the data warehouse, processes the data, and displays the data in dashboard 3002. The attribute may be storage capacity 3022. In the example illustrated in FIG. 3 and in regard to the current state of storage capacity, dashboard manager 119 determines that 13 petabytes (PBs) are currently being used. The current state of storage capacity may indicate the actual storage capacity in network storage system 190. Dashboard 3002 shows the current state of storage capacity, which is illustrated numerically by the “13 PB” displayed to the left of Bullet graph 3030 and is also illustrated in a left portion 3032 of Bullet graph 3030.
  • Dashboard manager 119 may determine the use forecast for an attribute of one or more storage resources in network storage system 190 by, for example, running an algorithm. In an example, dashboard manager 119 predicts the storage capacity by running the algorithm on data collected on the storage capacity in network storage system 190. In such an example, the algorithm may include a linear regression algorithm. For example, the linear regression algorithm may model the collected data as a best fit line (e.g., to minimize a square of the errors between the collected data and the data as modeled by the best fit line) over time and extract a forecast in the future by projecting along the best fit line. The increase in storage capacity may be used in the linear regression algorithm to determine the storage capacity in the future and also a use forecast in terms of how much storage capacity will be consumed throughout the year. The algorithm may be applied to each of the storage resource attributes to determine the user forecast for the storage resource attribute.
  • The administrator may easily be able to determine where the company is relative to a target state of the storage resource attribute. In the example illustrated in FIG. 3 and in regard to the use forecast for storage capacity 3022, dashboard manager 119 determines that the use forecast is 20 PBs. The use forecast for storage capacity 3022 is illustrated numerically by the “20 PB” displayed to the right of Bullet graph 3030 and is also illustrated in a right portion 3036 of Bullet graph 3030.
  • Dashboard manager 119 may provide a context by allowing entry of a target state of storage resource attribute in network storage system 190. Dashboard manager 119 may determine the target state of the attribute of the one or more storage resources. In an example, a user provides dashboard manager 119 with information regarding the target state of an attribute for one or more storage resources in network storage system 190. The user may provide dashboard manager 119 with the target state via UI 118. In the example illustrated in FIG. 3 and in regard to the target state of storage capacity 3022, the user may provide 17.5 PBs as the target storage capacity to use. Dashboard manager 119 may receive the target state (e.g., target storage capacity) input by the user and depict the target state by a mark 3034 at a position that represents the target state on Bullet graph 3030. Mark 3034 is placed between 15 PBs and 20 PBs and is at a position representing 17.5 PBs in Bullet graph 3030. In such an example, the administrator may have allocated funds for 17.5 PBs of storage capacity.
  • Regarding the example contextual storage information regarding storage capacity displayed in pane 3004, the storage resource attribute is storage capacity, and Bullet graph 3030 is representative of the current storage capacity, target storage capacity, and the use forecast of a storage environment monitored by system monitoring tool 117. The storage environment includes the one or more storage resources. The human user may visually discern the current state, target state, and use forecast of storage capacity. The user may track storage usage, and compare and contrast the current state, system's prediction(s) (e.g., dashboard manager 119's prediction(s)), and/or target state of storage capacity. For example, the user may configure the system to show the target state and use forecast of a storage resource attribute for the end of the financial year so that the user can track storage capacity growth compared to the use forecast. Accordingly, users may compare the data to their understanding of the storage environment and be able to adjust their trajectories and budget allocation.
  • For example, in FIG. 3, the actual storage capacity (13 PBs) does not reach the target storage capacity (17.5 PBs). If dashboard 3002 illustrates the storage capacity state in December at the end of the year, the administrator may determine that she over budgeted. If, however, dashboard 3002 illustrates the storage capacity state in February at the beginning of the year, the administrator may be concerned because the actual storage capacity may be quickly approaching the target storage capacity and the administrator may have under budgeted. In another example, the administrator may view Bullet graph 3030 and identify that the target state (17.5 PBs) is less than the use forecast (20 PBs). In such an example, the administrator may conclude that she under-budgeted on storage capacity and may need to purchase more storage.
  • 2. Networking Resources
  • a. FC Switch Port Connections
  • In another example, the storage resource is an FC switch port, and the attribute is an FC switch port connection. In FIG. 3, FC switch port connections are plotted against time (last 12 months) on a graph 3038. Additionally, a Bullet graph 3040 illustrates the FC switch port connections in the storage environment and enables a user to discern FC switch port connection trends in relation to a current state, a target state, and a use forecast of FC switch ports. FC switch ports 3024 are visually depicted in relation to connections and total quantity of FC switch ports.
  • Based on the data collected by system monitoring tool 117, dashboard manager 119 may determine a current state of FC switch port connections in network storage system 190. In the example illustrated in FIG. 3 and in regard to the current state of FC switch port connections, dashboard manager 119 determines that 65,000 FC switch ports are currently connected in network storage system 190. The current state of FC switch port connections may indicate the actual quantity of FC switch ports currently connected in network storage system 190. Dashboard 3002 shows the current state of FC switch port connections, which is illustrated numerically by the “65K” displayed to the left of Bullet graph 3040 and is also illustrated in a left portion 3042 of Bullet graph 3040.
  • Dashboard manager 119 may determine the use forecast for FC switch port connections as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the use forecast for FC switch ports 3024, dashboard manager 119 determines that the use forecast of FC switch ports is 115,000 FC switch port connections. The use forecast for FC switch ports 3024 is illustrated numerically by the “115K” displayed to the right of Bullet graph 3040 and is also illustrated in a right portion 3046 of Bullet graph 3040.
  • Dashboard manager 119 may determine the target state of FC switch ports 3024 as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the target state of FC switch ports 3024, the user may provide 130,000 as the target FC switch port connections to use. Dashboard manager 119 may receive the target state (e.g., target FC switch port connections) input by the user and depict the target state by a mark 3044 at a position that represents the target state on Bullet graph 3040. Mark 3044 is placed between 125K and 150K and is at a position representing 130K in Bullet graph 3040. In such an example, the administrator may have allocated funds for 130,000 FC switch port connections.
  • Regarding the example contextual storage information regarding FC switch ports displayed in pane 3004, the storage resource attribute is FC switch port connections, and Bullet graph 3040 is representative of current FC switch port connections, target FC switch port connections, and the use forecast of FC switch port connections in a storage environment monitored by system monitoring tool 117. The human user may visually discern the current state, target state, and use forecast of FC switch ports. The user may track the quantity of FC switch port connections, and compare and contrast the current state, system's prediction(s) (e.g., dashboard manager 119's prediction(s)), and/or target state of FC switch port connections. For example, the administrator may view Bullet graph 3040 and identify that the use forecast (115,000 FC switch port connections) is less than the target state (130,000 FC switch port connections). Thus, the administrator may conclude that it is unnecessary to purchase more FC switch ports.
  • b. FC Bandwidth
  • In another example, the storage resource is FC bandwidth, and the attribute is FC bandwidth utilization. In FIG. 3, FC bandwidth is plotted against time (last 12 months) on a graph 3058. Additionally, a Bullet graph 3050 illustrates the FC bandwidth utilization of the storage environment and enables a user to discern FC bandwidth utilization trends in relation to a current state and a use forecast of FC bandwidth. FC bandwidth 3026 is visually depicted in relation to utilization and capacity.
  • In dashboard 3002, the FC bandwidth utilization data set does not include a target state but does include acceptable ranges. In an example, the human user configures the acceptable ranges of the FC bandwidth via, for example, UI 118. In another example, the acceptable ranges of the FC bandwidth are already set and the user is unable to change the acceptable ranges. Dashboard manager 119 may determine an acceptable range for the attribute of the one or more storage resources (e.g., FC bandwidth) and display a user interface including contextual information regarding the attribute of the one or more storage resources. Dashboard manager 119 may render in the user interface a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources.
  • Bullet graph 3050 displays the actual utilization compared against these acceptable ranges. In dashboard 3002, the acceptable ranges include three different levels of acceptable ranges—low utilization (0-50 percent utilization), mid utilization (51-75 percent utilization), and high utilization (76-100 percent utilization). Other embodiments may include fewer or more than three utilization levels and may differ in their utilization percentages for each level.
  • Based on the data collected by system monitoring tool 117, dashboard manager 119 may determine a current state of FC bandwidth utilization in network storage system 190. In the example illustrated in FIG. 3 and in regard to the current state of FC bandwidth utilization, dashboard manager 119 determines that 60 percent of FC bandwidth is currently being used. The current state of FC bandwidth utilization may indicate the actual use of FC bandwidth currently being consumed in network storage system 190. Dashboard 3002 shows the current state of FC bandwidth utilization, which is illustrated numerically by the “60%” displayed to the left of Bullet graph 3050 and is also illustrated in a portion 3052 of Bullet graph 3050.
  • Dashboard manager 119 may determine the use forecast for FC bandwidth utilization as described above for storage capacity. In the example illustrated in FIG. 3 and in regard to the use forecast for FC bandwidth 3026, dashboard manager 119 determines that the use forecast is 312 terabytes (TBs) per second. The use forecast for FC bandwidth 3026 is illustrated numerically by the “312 TB/s” displayed to the right of Bullet graph 3050.
  • Regarding the example contextual storage information regarding FC bandwidth displayed in pane 3004, the storage resource attribute is FC bandwidth utilization, and Bullet graph 3050 is representative of current FC bandwidth utilization, target FC bandwidth utilization, and the use forecast of FC bandwidth utilization in a storage environment monitored by system monitoring tool 117. The human user may visually discern the current state and use forecast of FC bandwidth utilization. The user may track FC bandwidth utilization, and compare and contrast the current state and system's prediction(s) (e.g., dashboard manager 119's prediction(s)) of FC bandwidth utilization. For example, the user may configure the system to show the current state and use forecast of FC bandwidth. If the current state of FC bandwidth utilization is 40 percent, the administrator may decide to not allocate any more funds to FC bandwidth. If, however, the current state of FC bandwidth utilization is 75 percent, the administrator may decide to allocate more funds to FC bandwidth.
  • 3. Provide Hyperlinks Corresponding to the Storage Resource Attribute
  • Dashboard manager 119 may provide a hyperlink that corresponds to a storage resource attribute. In response to a user selecting the hyperlink, dashboard manager 119 provides a report regarding the current state, target state, and/or use forecast of the storage resource attribute. The report may have information on, for example, the current state, target state, and/or use forecast of the storage resource attribute over a threshold period of time.
  • 4. Visual Indications
  • A user may provide a policy in relation to one or more storage resources. In an example, dashboard manager 119 determines whether a violation in a policy (e.g., user-configured policy) for a storage resource attribute has occurred. The user may enter the policy via UI 118. In response to determining that a violation in a policy (e.g., user-configured policy) for a storage resource attribute has occurred, dashboard manager 119 may display in dashboard 3002 a visual indication that the violation has occurred. The visual indication is used to alert the human user of the violation. A visual indication may be displayed near the particular category that has violated a policy in dashboard 3002 to enable rapid visualizations of issues in the storage environment and to highlight where in dashboard 3002 the administrator should look first. An administrator may use dashboard 3002 to identify issues relative to the data.
  • Additionally, the administrator may select a visual indication to receive more information about what is causing the violation. In an example, the visual indication may be a hyperlink selectable by the administrator to obtain more information about the violation. The hyperlink corresponds to the storage resource attribute that has violated a policy.
  • The administrator may select the visual indication by, for example, pointing a mouse and clicking on the visual indication or touching the visual indication with the administrator's finger (for touch-sensitive screens). In another example, a graph or text that is displayed in dashboard 3002 and that is associated with the violation may be a hyperlink selectable by the administrator to obtain more information about the violation. The administrator may select the graph or text, for example, by pointing a mouse and clicking on the graph or text or by touching the graph or text with the administrator's finger (for touch-sensitive screens).
  • The violation may be a global violation or a local violation (potential violation). A global violation may refer to an actual violation of a policy (e.g., user-configured policy). In an example, a visual indication of a global violation may be depicted with a solid circle. In dashboard 3002, a visual indication 3054 is displayed adjacent to storage capacity 3022 to indicate that a global violation in a user-configured policy for storage capacity 3022 has occurred. Visual indication 3054 is a solid circle. Accordingly, the human user is directed to visual indication 3054 and may easily determine that a global violation of a user-configured policy for storage capacity 3022 has occurred. Visual indication 3054 may be displayed if, for example, a growth rate threshold or a targeted consumption has been exceeded. For storage capacity 3022, the use forecast (20 PB) exceeds the target state (17.5 PB), indicating that dashboard manager 119 predicts the actual storage usage will exceed what the administrator targeted to use. In such an example, a visual indication may be displayed near storage capacity 3022 to alert the administrator of this.
  • A local violation may refer to a potential violation of a policy (e.g., user-configured policy) and that may actually violate the policy if not dealt with soon. In an embodiment, dashboard manager 119 determines whether a potential violation in a user-configured policy for a storage resource attribute exceeds a threshold. In an example, tier 3 storage may abide by user-configured policies but a data center including tier 3 stage may be almost full and its free storage below N megabytes. In such an example, dashboard manager 119 may determine that a potential violation in a user-configured policy for the storage resource attribute exceeds a threshold. in response to determining that the potential violation in the user-configured policy for the storage resource attribute exceeds the threshold, dashboard manger 119 displays in the user interface a visual indication that the potential violation in the user-configured policy for the storage resource attribute exceeds the threshold.
  • A visual indication indicating a local violation/potential violation highlights issues that are not of prime importance but should be displayed to make the administrator aware of potential issues. In an example, the problem does not appear in the summarized information and resides in a lower level of infrastructure. In an example, a visual indication of the potential violation may be depicted with a hollow circle. In dashboard 3002, a visual indication 3071 is displayed adjacent to tier 3 storage, which is also discussed in the next section, and indicates that there is a potential for a violation in a user-configured policy for tier 3 storage, such as exceeding a capacity threshold. Visual indication 3071 is a hollow circle. Accordingly, the human user is directed to visual indication 3071 and may easily determine that a potential violation of a user-configured policy for tier 3 storage exceeds the threshold. Visual indication 3071 may be displayed if, for example, tier 3 storage does not actually violate a policy but a particular data center is almost full and it would be advantageous to alert the user that the particular data center is almost full.
  • B. Storage Tier Capacity
  • In another example, the storage resource is a storage server, and a first attribute is a storage tier and a second attribute is capacity. Pane 3006 is labeled “Storage Tiers Capacity” 3060 and is displayed in the middle left portion of dashboard 3002. Different types of storage may be broken down into different tiers. Pane 3006 displays a plurality of storage tiers and their capacity. In dashboard 3002, pane 3006 includes five storage tiers—tier 1, tier 2, tier 3, tier 4, and tier 5. Although dashboard 3002 is illustrated as including five storage tiers, this is not intended to be limiting and other embodiments may include and/or display more or fewer than five storage tiers. Dashboard 3002 may include one or more storage tiers.
  • Pane 3006 may be configurable to display as many tiers as requested by the human user. Different storage tiers may have different prices and/or capabilities. For example, tier 1 storage may be very expensive compared to tier 5 storage, and the administrator may budget accordingly. The administrator may look into different investments to determine whether her target storage goals are being met.
  • For each of the displayed storage tiers, pane 3006 displays the capacity usage for the last twelve months and a Bullet graph that illustrates the overall capacity of the particular storage tier. Each Bullet graph has a value representing the actual usage to its left, the use forecast, and a target state of the storage tier's capacity. Additionally, for each storage tier, storage capacity is plotted against time (last 12 months). Accordingly, the administrator is able to discern storage capacity trends in relation to a current state, a target state, and a use forecast for a particular storage tier. Thus, the administrator may be able to compare different storage tiers relative to each other and their usage patterns.
  • Based on the data collected by system monitoring tool 117, dashboard manger 119 may determine a current state of a storage tier in network storage system 190. In the example illustrated in FIG. 3 and in regard to the current storage capacity of tier 1 storage, dashboard manager 119 determines that 4,200 TBs of tier 1 storage are currently being used. The current state of tier 1 storage capacity may indicate the actual storage capacity of tier 1 storage in network storage system 190. Dashboard 3002 shows the current state of tier 1 storage capacity, which is illustrated numerically by the “4,200 TB” displayed to the left of Bullet graph 3064 and is also illustrated in a left portion 3066 of Bullet graph 3064. Additionally, the use forecast for tier 1 storage is 10 PBs, and the target storage capacity for tier 1 storage is 6 PBs, represented by the rectangular mark in Bullet graph 3064.
  • In pane 3006, a visual indication 3070 is displayed adjacent to tier 1 storage and indicates that a global violation in a user-configured policy for tier 1 storage has occurred. Accordingly, the administrator is directed to visual indication 3070 and may easily determine that a global violation of a user-configured policy for tier 1 storage has occurred. This may alert the administrator that tier 1 storage may run out of capacity in, for example, two months. The user may select visual indication 3070 or the text and/or graph corresponding to tier 1 storage to determine what caused the display of visual indication 3070 and may then become aware that the tier 1 storage may projected to run out of space in two months.
  • In regard to the current state of tier 2 storage, dashboard manager 119 determines that 5,600 TBs of tier 2 storage are currently being used. The current state of tier 2 storage capacity may indicate the actual storage capacity of tier 2 storage in network storage system 190. Dashboard 3002 shows the current state of tier 2 storage capacity, which is illustrated numerically by the “5,600 TB” displayed to the left of the Bullet graph associated with tier 2 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 2 storage is 9 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • In regard to the current state of tier 3 storage, dashboard manager 119 determines that 3,913 TBs of tier 3 storage are currently being used. The current state of tier 3 storage capacity may indicate the actual storage capacity of tier 3 storage in network storage system 190. Dashboard 3002 shows the current state of tier 3 storage capacity, which is illustrated numerically by the “3,913 TB” displayed to the left of the Bullet graph associated with tier 3 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 3 storage is 6 PBs and the target storage capacity is 5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • In pane 3006, a visual indication 3071 is displayed adjacent to tier 3 storage and indicates that a potential violation in a user-configured policy for tier 3 storage has occurred. Accordingly, the administrator is directed to visual indication 3071 and may easily determine that a potential violation of a user-configured policy for tier 3 storage has occurred. Visual indication 3071 may be displayed if, for example, a problem exists but does not actually breach a user-configured policy. The visual indications indicating a potential violation highlights issues that are not of prime importance but should be displayed to make the administrator aware of potential issues. In an example, the problem does not appear in the summarized information and resides in a lower level of infrastructure. In such an example, the tier 3 storage summaries may be within the user-configured policies; however, an indication location with tier 3 storage may have violated a “local policy” that does not violate a “global policy” in the summaries. For example, the total capacity of tier 3 storage in the data centers as a whole may have enough storage capacity, but one particular data center may be running out of space. The user may select visual indication 3071 or the text and/or graph corresponding to tier 3 storage to determine what caused the display of visual indication 3071 and may then become aware that the data center is running out of space.
  • In regard to the current state of tier 4 storage, dashboard manager 119 determines that 4,500 TBs of tier 4 storage are currently being used. The current state of tier 4 storage capacity may indicate the actual storage capacity of tier 4 storage in network storage system 190. Dashboard 3002 shows the current state of tier 4 storage capacity, which is illustrated numerically by the “4,500 TB” displayed to the left of the Bullet graph associated with tier 4 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 4 storage is 6 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • In regard to the current state of tier 5 storage, dashboard manager 119 determines that 5,500 TBs of tier 5 storage are currently being used. The current state of tier 5 storage capacity may indicate the actual storage capacity of tier 5 storage in network storage system 190. Dashboard 3002 shows the current state of tier 5 storage capacity, which is illustrated numerically by the “5,500 TB” displayed to the left of the Bullet graph associated with tier 5 storage and is also illustrated in a left portion of the associated Bullet graph. Additionally, the use forecast for tier 5 storage is 8 PBs and the target storage capacity is 7.5 PBs, represented by the rectangular mark in the associated Bullet graph.
  • Moreover, for each of the displayed storage tiers, a histogram is displayed under “Total Capacity” showing the total capacity of the respective storage tier. This histogram allows an understanding of how much of a share of the storage environment is distributed among the storage tiers. In pane 3006, tier 4 storage has the largest share and tier 1 storage has the smallest share compared to each of the other displayed storage tiers. The storage capacities of tier 2 storage, tier 3 storage, and tier 5 storage fall somewhere in between tier 1 storage and tier 4 storage.
  • Further, for each of the displayed storage tiers, a bar graph is displayed under “Months to Full” showing the predicted number of months until the respective storage tier is full. This bar graph may be thought of as similar to a fuel gauge—the smaller the capacity, the smaller the bar displayed. In pane 3006, tier 1 storage is expected to be full in about two months, tier 2 storage is expected to be full in about eight months, tier 3 storage is expected to be full in about nine months, tier 4 storage is expected to be full in about 5 months, and tier 5 storage is expected to be full in about one year.
  • C. Daily Storage Traffic
  • In another example, the storage resource is a storage server, and the attribute is storage traffic. Pane 3008 is labeled “Daily Storage Traffic” 3080 and is displayed in the lower left-hand corner of dashboard 3002. Pane 3008 provides the administrator with a heartbeat of the storage environment in general. Pane 3008 displays a daily storage traffic chart 3082 including three lines that enable the administrator to compare and contrast previous storage traffic. A first line graph 3084 represents yesterday's mean of the storage traffic, a second line graph 3086 represents a daily mean of the storage traffic within the last seven days, and a third line graph 3088 represents a daily mean of the storage traffic within the last six months. Daily storage traffic chart 3082 enables the user to visualize any abnormalities in the way the storage infrastructure has been performing, as it gives information, which would highlight both cyclical (e.g., last seven days) and seasonal variations (e.g., last six months).
  • The administrator may compare the line graphs and in particular, the data spikes in the line graphs. For example, the administrator may look into yesterday's traffic represented by first line graph 3084 and determine that the peak of data traffic (50 TBs) occurred at 4:00 P.M yesterday. Although first line graph 3084 is described as being designed for a daily view, this is not limiting and other embodiments may illustrate a performance for any time frame (e.g., weekly or monthly). The other line graphs may also represent other data traffic values for other time frames. The line graphs may be displayed in different colors or patterns for ease of review.
  • D. Data Centers Time to Full
  • In an example, the storage resources are data centers, and an attribute of a data center is its location. System monitoring tool 117 may monitor a large storage environment containing a plurality of data centers. Pane 3010 is labeled “Data Centers Time to Full” 3090 and is displayed in the upper right-hand corner of dashboard 3002. Pane 3010 displays the different storage tiers and the cities in which the data centers are located. Pane 3010 is designed to give the user, for each storage tier, an easy to read view into how much storage capacity is left in each data center. In particular, pane 3010 indicates data centers of a particular storage tier that are expected to run out of space within a particular time period and/or data centers of a particular storage tier that have sufficient space and that the user need not be concerned with.
  • In the example illustrated in FIG. 3, the solid black color indicates that the storage capacity for that particular data center will be full in less than three months, the dashed lines indicate that the storage capacity for that particular data center will be full within three to six months, and the solid white color indicates that the storage capacity for that particular data center will take more than six months to be full.
  • In another example, the darkness of a color may be used to indicate a data center's time until it is full. For example, the darker the color the less space is available in the data center, and the lighter the color the less concerned the administrator should be. In an example, the default is that the darkest color indicates that the storage capacity for that particular data center will be full in less than three months, the lighter color indicates that the storage capacity for that particular data center will be full within three to six months, and the lightest color indicates that the storage capacity for that particular data center will take more than six months to be full.
  • The human user may configure pane 3010 to display particular storage tiers and may also configure how to indicate that less space is available in a data center. In an example, the human user sets the thresholds based on purchasing constraints. In such an example, if it takes two weeks to purchase and stand up storage the darkest color may be set to two weeks (rather than three months). Additionally, although the example in pane 3010 shows three ranges or categorizations of time periods (e.g., less than three months, between three and six months, and more than six months), this is not intended to be limiting and other embodiments may include fewer or more than three ranges or categorizations of time periods and/or time periods of different lengths.
  • E. Top Consumers
  • In an example, the storage resources are storage servers, and a first attribute of a storage server is its storage capacity, and a second attribute of the storage server is its response time. Pane 3012 is labeled “Top 10 Applications” 3110 and is displayed in the middle right portion of dashboard 3002. Pane 3012 displays the top ten storage consumers and enables the human user to more easily understand the location of the issues and identity of the storage consumers. Although pane 3012 is illustrated as displaying applications, this is not intended to be limiting, and pane 3012 may display whatever the business categorizes as the consumers. For example, other components may be used such as business units, projects, tenants, and/or storage arrays.
  • Availability may be a function of how much time the application is up and running Pane 3012 enables the administrator to see one level below the storage capacity by drilling down into the actual consumers of the storage. The administrator is able to identify the top critical services and look at their individual consumption contributions to storage capacity. Pane 3012 lists out the consumers in order of greatest capacity and displays how much storage the consumers have used over the last 12 months. For example, the administrator may look at applications listed in pane 3012 and ask important questions, such as “What is growth of the storage capacity in terms of this application?” and “What is the speed of the response time that is being delivered to this application?”
  • Moreover, for each of the top ten storage consumers, storage capacity is plotted against time (last 12 months) on a graph. Additionally, for each of the applications, a histogram is displayed under “Capacity” showing the total capacity of the respective application. This histogram allows an understanding of how much of a share of the storage infrastructure is distributed among the applications.
  • Pane 3012 shows a summary of the top ten storage consumers' response times using a box-and-whisker graph. Each box-and-whisker graph is overlaid on a block with a dotted background, where the dotted block represents an acceptable service level range. A left of the acceptable range represents the minimum (e.g., fastest) response times, and the right of the acceptable range represents the maximum (e.g., slowest) response times. In an embodiment, dashboard manager 119 renders a box-and-whisker graph overlaid on an object representative of acceptable response times for one or more storage resources, where the box-and-whisker graph is representative of actual response times of the one or more storage resources.
  • Pane 3012 displays a block with a dotted background, where the dotted block is representative of acceptable response times for one or more storage resources, and the actual performance of the storage is superimposed on the acceptable response times. For each of the top ten storage consumers, a box-and-whisker graph shows a spread of the actual data points of the response times and median response times of the storage. In an example, dashboard manager 119 renders a box-and-whisker graph 3115 for the “Juice” application. Although the description describes a box-and-whisker graph for the “Juice” application, the description applies as well to the other storage consumers. A left-most data point of a “whisker” 3117 of box-and-whisker graph 3115 represents the fastest response time of the storage (approximately 10 milliseconds (ms)). Similarly, a right-most data point of a “whisker” 3118 of box-and-whisker graph 3115 represents the slowest response time of the storage (approximately 19 ms). Thus, the range of the response time is about 9 ms (19 ms−10 ms=9 ms) and falls between 10 and 19 ms.
  • A thick solid box 3119 of box-and-whisker graph 3115 represents the actual data measurements (e.g., actual data points), and the thin vertical line inside thick solid box 3119 represents the median response time of the storage. A first quartile of the response times falls between the left-most data point of whisker 3117 and the intersection of whisker 3117 and thick solid box 3119. A second quartile of the response times falls between the intersection of whisker 3117 and thick solid box 3119 and the median response time. A third quartile of the response times falls between the median response time and the intersection of thick solid box 3119 and whisker 3118. A fourth quartile of the response times falls between the intersection of thick solid box 3119 and whisker 3118 and the right-most data point of whisker 3118. Half of the response times are less than the median response time, and half of the response times are greater than the median response time. Additionally, between 25-75 percent of the response times fall within thick solid box 3119. Although the graph is described as being broken down into quarters of a whole (e.g., quartiles), this is not intended to be limiting and in other embodiments the graph may be broken down into different portions of the whole (e.g., quintiles, etc.). Additionally, the graph may be broken down into unequal portions.
  • The administrator may view the box-and-whisker graph overlaid on the dotted block representative of acceptable response times and determine whether consumers are experiencing acceptable or unacceptable response times. Pane 3012 provides the administrator with a contextual view of, for example, the acceptable response rates for particular applications. From looking at pane 3012, the administrator may be able to determine when most of the responses to the application workload are outside of the acceptable range.
  • If the box-and-whisker graph completely resides to the far left of the acceptable range this could suggest the consumer is on storage that is delivering more performance than required and an opportunity may exist to move the consumer to a different type of storage. For example, if an application is on tier 3 storage and experiencing very fast response times, the administrator may decide to move the application to, for example, tier 4 storage. If, however, the box-and-whisker graph completely resides to the far right of the acceptable range this could suggest the consumer is on storage that is delivering far less performance than required and an opportunity may exist to move the consumer to a different type of storage. For example, if an application is on tier 3 storage and experiencing unacceptable response times, the administrator may decide to move the application to, for example, tier 1 storage or tier 2 storage.
  • Visual indications 3112 and 3114 are solid circles and are displayed to the left of the consumer categories that have a global violation in a user-configured policy. In pane 3012, visual indications 3112 and 3114 highlight the consumer categories “Prophet” and “Beacon” and provide the administrator with an easy visual aid in identifying consumer categories that are associated with a global violation in a user-configured policy. In an example, the policy specifies that the mean response time should always be within the acceptable service range. In such an example, visual indication 3114 highlights a consumer category in which the mean response time is outside of the acceptable service range. Visual indications 3112 and 3114 may refer to the same or different global-policy violation.
  • Additionally, visual indication 3116 is a hollow circle and is displayed to the left of the consumer category that is associated with a potential violation in a user-configured policy. In pane 3012, visual indication 3116 highlights the consumer category “GlobalCollab” and provides the administrator with an easy visual aid in identifying consumer categories that is associated with a potential violation in a user-configured policy. For example, by viewing visual indication 3116 in pane 3012, the administrator may be able to more easily see that the capacity of the storage delivering the “GlobalCollab” application may be running out of space.
  • F. Storage Performance by Tiers
  • In an example, the storage resources are storage servers, and a first attribute of a storage server is its storage tier, and a second attribute of the storage server is its performance (e.g., response time and/or IOPS). Pane 3014 is labeled “Storage Tiers Daily Performance” 3120 and is displayed in the bottom middle portion of dashboard 3002. In viewing pane 3014, the administrator is able to see the overall storage tiers and how they are performing. In particular, the administrator is able to look into different storage tiers from a statistical performance point of view rather than a raw capacity point of view. In pane 3014, the response time and throughput I/O per second (IOPS) is displayed for each storage tier. The administrator is able to determine whether a particular storage tier should be used over another storage tier and more easily tie the particular storage tier to performance. For example, looking at pane 3014, the administrator may be able to determine the acceptable range of I/O that justifies being in tier 1 storage.
  • Pane 3014 shows a summary of the previous day's response times and throughput (IOPS) using box-and-whisker graphs. Each box-and-whisker graph is overlaid on a block with a dotted background, where the dotted block represents an acceptable service level range for that tier. Regarding response times, a left of the acceptable range represents the minimum (e.g., fastest) response times, and the right of the acceptable range represents the maximum (e.g., slowest) response times. Regarding IOPS, a left of the acceptable range represents the minimum (e.g., fastest) IOPS, and the right of the acceptable range represents the maximum (e.g., slowest) IOPS.
  • Pane 3014 displays acceptable response times for the storage tiers, and the actual performance of the storage is superimposed on the response times. For each tier, a box-and-whisker graph shows a spread of the actual data points of the response times and median response times of that storage tier. In an example, dashboard manager 119 renders a box-and-whisker graph 3123 for tier 1 storage. Although the description describes a box-and-whisker graph for tier 1 storage, the description applies as well to the other storage tiers and the IOPS. A left-most data point of a “whisker” 3124 of box-and-whisker graph 3123 represents the fastest response time of the storage (approximately 2 ms). Similarly, a right-most data point of a “whisker” 3125 of box-and-whisker graph 3123 represents the slowest response time of the storage (approximately 8 ms). Thus, the range of the response time is about 6 ms (8 ms−2 ms=6 ms) and falls between 2 and 8 ms.
  • A thick solid box 3126 of box-and-whisker graph 3123 represents the actual data measurements (e.g., actual data points), and the thin vertical line inside thick solid box 3126 represents the median response time of tier 1 storage. A first quartile of the response times falls between the left-most data point of whisker 3124 and the intersection of whisker 3124 and thick solid box 3126. A second quartile of the response times falls between the intersection of whisker 3124 and thick solid box 3126 and the median response time. A third quartile of the response times falls between the median response time and the intersection of thick solid box 3126 and whisker 3125. A fourth quartile of the response times falls between the intersection of thick solid box 3126 and whisker 3125 and the right-most data point of whisker 3125. Half of the response times are less than the median response time, and half of the response times are greater than the median response time. Additionally, between 25-75 percent of the response times fall within thick solid box 3126.
  • The administrator may view the box-and-whisker graph overlaid on the block with the dotted background and determine whether particular storage tiers are providing acceptable or unacceptable response times. Pane 3014 provides the administrator with a contextual view of, for example, the acceptable response rates for each storage tier. From looking at pane 3014, the administrator may be able to determine when most of the responses of a storage tier are outside of the acceptable range. Accordingly, the administrator may see if there is opportunity to consolidate tiers or realign workloads delivered from those tiers.
  • The administrator may also see highlighted issues with particular tiers. For example, visual indication 3122 is a solid circle and is displayed to the left of the storage tier that has a global violation in a user-configured policy. In pane 3014, visual indication 3122 highlights tier 2 storage and provides the administrator with an easy visual aid in identifying that tier 2 storage has violated a user-configured policy.
  • G. Orphaned Capacity
  • In an example, the storage resources are storage servers, and an attribute of a storage server is orphaned capacity. Pane 3016 is labeled “Orphaned Capacity” 3130 and is displayed in the lower right-hand corner of dashboard 3002. Orphaned storage may be storage capacity that has been paid for but is not being used at the moment. A horizontally stacked bar 3132 is a visualization illustrating that the storage environment contains 325 TBs. Additionally, inside horizontally stacked bar 3132 is a utilization bar 3134 representing that 2.5 percent of the 325 TBs is currently being used. Utilization bar 3134 shows the actual capacity that is orphaned. If, for example, each TB costs $4,000, the administrator may reconsider how much storage to purchase because only 2.5 percent of the already purchased 325 TBs is being used. The percentages shown in horizontally stacked bar 3132 are user-configured and show the acceptable ranges. The more to the left utilization bar 3134 is, the more unacceptable the situation is.
  • A bar graph 3136 is a visualization representing the orphaned capacity detailed by storage tier. Bar graph 3136 enables the administrator to understand which categories should be investigated for finding savings. Bar graph 3136 breaks the storage down into different tiers, which shows the weight of storage capacity itself broken down into different tiers.
  • “Orphaned Capacity” 3130 may be user configured. In an example, orphaned capacity is storage orphaned by configuration, which refers to storage allocated to a host but the configuration has not been done properly and the host cannot access the storage. An ignore feature for storage may appear in this category. The ignore feature enables the administrator to remove from the calculations storage the administrator knows is going to appear in pane 3016 but should be ignored for a valid reason. For example, the administrator may want to ignore the storage if it is being migrated and will be removed from the data center floor.
  • In another example, orphaned capacity is storage orphaned by performance, which refers to storage that is correctly configured to be accessed by a host but a user-defined value of unacceptable small amounts of storage traffic exists over a user-defined period. An ignore feature for storage may appear in this category. The ignore feature enables the administrator to remove from the calculations storage the administrator knows is not going to be used for a significant time period but could because of disaster failover or other unexpected reasons. The ignored storage would not appear in the calculation.
  • The scope of embodiments is not limited to any particular set of performance metrics, as those shown in FIG. 3 are exemplary, and other embodiments may include any appropriate set of performance metrics. Dashboard 3002 may include more or fewer than the panes displayed in display 3000. Further, each pane may include more or less information that that displayed in the pane, and the information displayed in a pane may be included or combined with another pane.
  • Additionally, in the example illustrated in FIG. 3, visual indications 3054, 3070, 3112, 3114, and 3122 are solid circles and represent global violations, and visual indications 3071 and 3116 are hollow circles and represent potential violations exceeding a threshold. This is not intended to be limiting and in other embodiments, visual indications may be any visual indications that highlight particular categories, tiers, storage consumers, etc. For example, a visual indication may be an exclamation mark, orange star, and/or the like using any suitable symbol, shape, color, etc.
  • Furthermore, dashboard 3002 may use a color scheme that enables colorblind users to understand the data and the page can also be printed on a black and white printer and still convey the information.
  • The storage information may be structured in the dashboard such that the most commonly used or required information is displayed in the upper left portion of the screen and the least frequently used or required information is displayed in the bottom right portion of the screen. In an example, dashboard manager 119 may render a first graph in a first pane and render a second graph in a second pane. Dashboard manager 119 may identify a most commonly used graph of the first and second graphs rendered in the user interface. In response to determining that the first graph is the most commonly used graph, dashboard manager 119 may render the first graph in a first portion of the user interface and render the second graph in a second portion of the user interface, where the first portion is closer to the upper left-hand corner of the user interface than the second portion. In contrast, in response to determining that the second graph is the most commonly used graph, dashboard manager 119 may render the first graph in the second portion of the user interface and render the second graph in the first portion of the user interface.
  • A user and/or administrator may select the content and location of panes. For example, the administrator may be more concerned with the storage capacity and thus choose to have pane 3004, which shows the storage capacity, in the upper-left hand corner of dashboard 3002. The administrator may also select what content is shown in each of the panes. For example, the administrator may choose to combine the information in panes 3004 and 3006 into one pane. In another example, the administrator may choose to remove FC bandwidth 3026 from pane 3004 and insert the information from pane 3010 into pane 3004.
  • Various embodiments may provide advantages over conventional systems. For instance, the rendering of performance metric data, current state, target state, and/or use forecast for one or more storage resources on a single graph (FIG. 3) is not only new, but highly intuitive for a user who wants to compare the progression and state of a storage resource (e.g., performance, IOPS, etc.) in the system. For example, in a Bullet graph, multiple data about a storage resource (e.g., current state, target state, and/or use forecast) may be shown on a single graph and conveyed in an easy to understand manner. In another example, in a box-and-whisker graph, multiple data about storage resources and/or their consumers (e.g., fastest and slowest response times, median response times, etc.) may be shown on a single graph and conveyed in an easy to understand manner. Accordingly, space on the display may be saved, thus using UI real estate economically.
  • V. Example Methods
  • FIG. 4 is a simplified diagram of an example method 400 of displaying contextual information of a computing system according to one embodiment. Method 400 is not meant to be limiting and may be used in other applications.
  • Method 400 includes blocks 410-465. In a block 410, a current state of an attribute of one or more storage resources is determined, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool. In an example, dashboard manager 119 determines a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by system monitoring tool 117. In an example, the storage resource attribute is the response time of a storage server. In another example, the storage resource attribute is the IOPS of a storage server. In other examples, the attribute may be any of the attributes described with respect to FIG. 3 and/or any other storage resource attribute.
  • In a block 420, an acceptable range for the attribute of the one or more storage resources is determined. In an example, dashboard manager 119 determines an acceptable range for the attribute of the one or more storage resources. In some examples, the acceptable ranges may be determined by a user and/or an administrator, based on prior observed ranges for the attributes, based on statistical analyses, and/or the like. In another example, the acceptable range may be determined by calculating an average response time and providing that average response time as the acceptable range.
  • In a block 430, a user interface including contextual information regarding the attribute of the one or more storage resources is displayed. In an example, dashboard manager 119 displays a user interface including contextual information regarding the attribute of the one or more storage resources.
  • In a block 440, a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources is rendered in the user interface. In an example, dashboard manager 119 renders in the user interface a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources. The graph may be, for example, a box-and-whisker graph overlaid on an object representative of acceptable response times for one or more storage resources (e.g., the block with the dotted background). In another example, the graph is also representative of a forecast of how much time until a data center is full (e.g., in pane 3080). In such an example, the forecast may be illustrated by the use of colors and patterns (e.g., darker color or a particular pattern represents data centers to which the administrator should be pay extra attention).
  • In a block 450, it is determined whether a violation in a user-configured policy for the storage resource attribute has occurred. In an example, dashboard manager 119 determines whether a violation in a user-configured policy for the storage resource attribute has occurred. In a block 455, if the violation in the user-configured policy for the storage resource attribute has occurred, a visual indication is displayed in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred. In an example, if the violation in the user-configured policy for the storage resource attribute has occurred, dashboard manager 119 displays a visual indication in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred.
  • In a block 460, it is determined whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold. In an example, dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold. In a block 465, if the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold, a visual indication is displayed in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold. In an example, if the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold, dashboard manager 119 displays a visual indication in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • It is also understood that additional processes may be performed before, during, or after blocks 410-465 discussed above. It is also understood that one or more of the blocks of method 400 described herein may be omitted, combined, or performed in a different sequence as desired.
  • In an example, a graph, text, and/or a visual indication displayed in the user interface and corresponding to a storage resource attribute may be a hyperlink that, when selected by a user, provides a link to more detailed reports regarding the storage resource attribute. A block may be inserted into method 400 to determine whether the graph, text, and/or a visual indication has been selected. In response to determining that the graph, text, and/or a visual indication has been selected, a more detailed report regarding the storage resource attribute may be provided to the user.
  • FIG. 5 is a simplified diagram of an example method 500 of displaying contextual information of a computing system according to one embodiment. Method 500 is not meant to be limiting and may be used in other applications.
  • Method 500 includes blocks 510-565. In a block 510, a current state of an attribute of one or more storage resources is determined, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool. In an example, dashboard manager 119 determines a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by system monitoring tool 117. In an example, the storage resource attribute is the response time of a storage server. In another example, the storage resource attribute is the IOPS of a storage server. In other examples, the attribute may be any of the attributes described with respect to FIG. 3 and/or any other storage resource attribute.
  • In a block 520, a target state of the attribute of the one or more storage resources is determined. In an example, dashboard manager 119 determines a target state of the attribute of the one or more storage resources. In an example, the target state of the attribute is storage capacity of a storage server. In another example, the target state of the attribute is the number of FC switch port connections. In some examples, the target state may be determined by a user and/or an administrator, based on prior observed ranges for the storage resource attributes, based on statistical analyses, and/or the like. In an example, the administrator has a best guess capacity projection (e.g., I want to buy X storage capacity) and sets this as the target state of the attribute. In another example, the target state is the total of what the administrator budgeted for minus a safety margin. For example, if the administrator has budgeted for 20 PB of storage capacity, the target state may be 20 PB minus a safety margin of 5 PB, which brings the target state to 15 PB of storage capacity.
  • In a block 530, a user interface including contextual information regarding the attribute of the one or more storage resources is displayed. In an example, dashboard manager 119 displays a user interface including contextual information regarding the attribute of the one or more storage resources.
  • In a block 540, a graph representative of the current state and the target state of the attribute of the one or more storage resources is rendered in the user interface. In an example, dashboard manager 119 renders in the user interface a graph representative of the current state and the target state of the attribute of the one or more storage resources. The graph may be, for example, a Bullet graph representative of the current state and target state of the storage resource attribute. In another example, the graph may indicate colors (e.g., a darkness of a color) to represent the current state of the storage resource attribute. The graph may also include a forecast for the corresponding attribute. For example, in pane 3010, a default may be that the darker the color the closer the data center is to the target state, and the lighter the color the further the data center is to the target state.
  • In a block 550, it is determined whether a violation in a user-configured policy for the storage resource attribute has occurred. In an example, dashboard manager 119 determines whether a violation in a user-configured policy for the storage resource attribute has occurred. In a block 555, if the violation in the user-configured policy for the storage resource attribute has occurred, a visual indication is displayed in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred. In an example, if the violation in the user-configured policy for the storage resource attribute has occurred, dashboard manager 119 displays a visual indication in the user interface to indicate that the violation in the user-configured policy for the storage resource attribute has occurred.
  • In a block 560, it is determined whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold. In an example, dashboard manager 119 determines whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold. In a block 565, if the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold, a visual indication is displayed in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold. In an example, if the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold, dashboard manager 119 displays a visual indication in the user interface to indicate that the potential for the violation in the user-configured policy exceeds the threshold.
  • It is also understood that additional processes may be performed before, during, or after blocks 510-565 discussed above. It is also understood that one or more of the blocks of method 500 described herein may be omitted, combined, or performed in a different sequence as desired.
  • In an example, a graph, text, and/or a visual indication displayed in the user interface and corresponding to a storage resource attribute may be a hyperlink that, when selected by a user, provides a link to more detailed reports regarding the storage resource attribute. A block may be inserted into method 400 to determine whether the graph, text, and/or a visual indication has been selected. In response to determining that the graph, text, and/or a visual indication has been selected, a more detailed report regarding the storage resource attribute may be provided to the user.
  • V. Example Service-Oriented Architecture
  • FIG. 6 is a simplified diagram of an example service-oriented architecture (SOA) 2100. As shown in FIG. 6, SOA 2100 is built around a client-service model. In SOA 2100, requests originate from one or more clients 2111-2119. Each of the clients 2111-2119 may make requests through a network 2120 to a server 2130.
  • In some embodiments, any of the clients may be system monitoring tool 117 (FIG. 1) and the server 2130 may be server 110 (FIG. 1). In an alternative embodiment, system monitoring tool 117 may be a client that runs on server 2130, which is consistent with the FIG. 1 example above. In some embodiments, any of the clients may be dashboard manager 119 (FIG. 1) and the server 2130 may be server 110 (FIG. 1). In an alternative embodiment, dashboard manager 119 may be a client that runs on server 2130, which is consistent with the FIG. 1 example above. The scope of embodiments is not limited to any particular architecture.
  • Network 2120 may be any kind of network including a local area network (LAN), such as an Ethernet, and/or a wide area network (WAN), such as the Internet. In some examples, server 2130 may be a standalone workstation, a cluster, a production server, within a virtual machine, and/or the like. Server 2130 includes a processor 2140 coupled to memory 2150. In some examples, processor 2140 may control operation and/or execution of hardware and/or software on server 2130. Although only one processor 2140 is shown, server 2130 may include multiple processors, CPUs, multi-core processors, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and/or the like. Memory 2150 may include one or more types of machine readable media. Some common forms of machine readable media may include floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, and/or any other medium from which a processor or computer is adapted to read.
  • Memory 2150 may be used to store an interface 2160 that is used by clients 2111-2119 to access the storage resource information with clients 2111-2119 being able to make requests for all, or part, of the storage resource information. Each of the requests is directed to interface 2160 where the requested storage resource information is retrieved, and a response is returned to the requesting client 2111-2119. Numerous mechanisms for directing the requests to interface 2160 may be used, including using a parameterized and/or unparameterized uniform resource locator (URL), using an application name corresponding to interface 2160, and/or the like. The requests may also be made using protocols or methods such as application programming interface (API) calls, remote procedure calls, representational state transfer (REST) web services, simple object access protocol (SOAP) web services, and/or the like.
  • As discussed above and further emphasized here, FIG. 6 is merely an example which should not unduly limit the scope of the claims. One of ordinary skill in the art would recognize many variations, alternatives, and modifications. In some embodiments, other configurations may be used with SOA 2100. In some examples, any of the clients 2111-2119 may be hosted in server 2130. In some examples, the storage resource information may be stored outside of memory 2150 or server 2130. For example, the storage resource information may be stored in one or more files in a storage module hosted in server 2130 or in another computing device elsewhere in SOA 2100. As another example, the storage resource information may be stored in one or more databases stored in one or more database management systems. In some examples, processor 2140 and memory 2150 may be hosted in a virtual machine.
  • It should be noted that the examples above are given in the context of a network storage system, through the scope of embodiments is not so limited. Rather, the concepts described above may be implemented in any type of computing cluster, where performance data is sampled and analyzed. One example embodiment includes a cluster of server nodes, where performance data for the server nodes themselves, as well as for the applications running on the server nodes, is sampled according to the workload of each node or application.
  • When implemented via computer-executable instructions, various elements of embodiments of the present disclosure are in essence the software code defining the operations of such various elements. The executable instructions or software code may be obtained from a non-transient, tangible readable medium (e.g., a hard drive media, optical media, RAM, EPROM, EEPROM, tape media, cartridge media, flash memory, ROM, memory stick, network storage device, and/or the like). In fact, readable media can include any medium that can store information.
  • In the embodiments described above, example clients 160, server 110, storage controllers 101, and server 2130 include processor-based devices and may include general-purpose processors or specially-adapted processors (e.g., an Application Specific Integrated Circuit). Such processor-based devices may include or otherwise access the non-transient, tangible, machine readable media to read and execute the code. By executing the code, the one or more processors perform the actions of the processes of methods 400 and/or 500.
  • Although illustrative embodiments have been shown and described, a wide range of modification, change and substitution is contemplated in the foregoing disclosure and in some instances, some features of the embodiments may be employed without a corresponding use of other features. One of ordinary skill in the art would recognize many variations, alternatives, and modifications. Thus, the scope of the invention should be limited only by the following claims, and it is appropriate that the claims be construed broadly and in a manner consistent with the scope of the embodiments disclosed herein.

Claims (20)

What is claimed is:
1. A computer program product having a computer readable medium tangibly recording computer program logic for providing contextual information of a computer system, the computer system in communication with a performance monitoring tool, the computer program product comprising:
code to determine a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool;
code to determine an acceptable range for the attribute of the one or more storage resources;
code to display a user interface including contextual information regarding the attribute of the one or more storage resources; and
code to render in the user interface a graph representative of the current state and the acceptable range for the attribute of the one or more storage resources.
2. The computer program product of claim 1, further comprising:
code to run an algorithm to determine a forecast for the storage resource attribute.
3. The computer program product of claim 2, wherein the code to run the algorithm comprises a linear regression algorithm.
4. The computer program product of claim 1, wherein the code to render includes code to render a graph including the current state and the acceptable range for the storage resource attribute.
5. The computer program product of claim 1, wherein the storage resource attribute includes at least one from the group consisting of storage capacity, acceptable range of response times, actual response time, input/output per seconds (IOPS), a tier of storage, a location of a data center that includes the storage resource, storage traffic, FC switch port connections, and FC bandwidth utilization.
6. A method for providing contextual information of a computer system, the method comprising:
determining a current state of an attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the storage resource attribute being monitored by a performance monitoring tool;
determining a target state of the attribute of the one or more storage resources;
displaying a user interface including contextual information regarding the attribute of the one or more storage resources; and
rendering in the user interface a graph representative of the current state and the target state of the attribute of the one or more storage resources.
7. The method of claim 6, further comprising:
running an algorithm to determine a forecast for the attribute of the one or more storage resources.
8. The method of claim 7, wherein running the algorithm comprises running a linear regression algorithm.
9. The method of claim 7, wherein the rendering comprises rendering a Bullet graph including the current state, the target state, and the forecast of the storage resource attribute.
10. The method of claim 9, wherein the storage resource attribute is storage capacity, wherein the Bullet graph is representative of the current storage capacity, target storage capacity, and the forecast of a storage environment monitored by the performance monitoring tool, and wherein the storage environment includes the one or more storage resources.
11. The method of claim 7, further comprising:
providing a hyperlink that corresponds to the storage resource attribute; and
in response to a user selecting the hyperlink, providing a report regarding the current state of the storage resource attribute.
12. The method of claim 6, further comprising:
determining a second current state of a second attribute of one or more storage resources; and
determining a second target state of the second attribute, wherein the displaying includes displaying in the user interface contextual information regarding the second attribute, and wherein the rendering includes rendering in the user interface a second graph representative of the second current state and the second target state of the second attribute.
13. The method of claim 12, wherein the rendering comprises rendering the first graph in a first pane and rendering the second graph in a second pane.
14. The method of claim 13, further comprising:
identifying the most commonly used pane of the first and second panes rendered in the user interface,
wherein in response to determining that the first pane is the most commonly used pane, the rendering in the user interface a first graph includes rendering the first pane in a first portion of the user interface and the rendering in the user interface a second graph includes rendering the second pane in a second portion of the user interface, wherein the first portion is closer to the upper left-hand corner of the user interface than the second portion, and
wherein in response to determining that the second graph is the most commonly used graph, the rendering in the user interface a first graph includes rendering the first pane in the second portion of the user interface and the rendering in the user interface a second graph includes rendering the second pane in the first portion of the user interface.
15. The method of claim 6, further comprising:
determining whether a violation in a user-configured policy for the storage resource attribute has occurred; and
in response to determining that the global violation in the user-configured policy for the storage resource attribute has occurred, displaying in the user interface a visual indication that the global violation in the user-configured policy for the storage resource attribute has occurred.
16. The method of claim 6, further comprising:
determining whether a potential for a violation in a user-configured policy for the storage resource attribute exceeds a threshold; and
in response to determining that the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold, displaying in the user interface a visual indication that the potential for the violation in the user-configured policy for the storage resource attribute exceeds the threshold.
17. A system comprising:
a processor; and
memory accessible by the processor and storing computer-readable instructions, the processor performing the following actions by executing the instructions:
determining a current state of a first attribute of one or more storage resources, the one or more storage resources coupled to a computer system, and the current state of the first storage resource attribute being monitored by a performance monitoring tool;
identifying a second attribute of the one or more storage resources, the second attribute being different categories of the one or more storage resources;
for each category of the different categories, determining a target state of the first attribute of the one or more storage resources;
displaying a user interface including contextual information regarding the first and second attributes of the one or more storage resources; and
rendering in the user interface a graph representative of the current state and the target state of the first and second attributes of the one or more storage resources.
18. The system of claim 17, wherein the processor performs the following actions by executing the instructions:
for each category of the different categories, running an algorithm to determine a use forecast for the first attribute of the one or more storage resources.
19. The system of claim 18, wherein the processor performs the following actions by executing the instructions:
for each category of the different categories, rendering a Bullet graph including the current state, the target state, and the use forecast of the first attribute of the one or more storage resources.
20. The system of claim 19, wherein the first storage resource attribute is storage capacity, and the second storage resource attribute is a tier of storage.
US14/341,508 2013-12-20 2014-07-25 System, Method, and Computer Program Product for Storage Management Dashboard Abandoned US20160026552A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/341,508 US20160026552A1 (en) 2013-12-20 2014-07-25 System, Method, and Computer Program Product for Storage Management Dashboard

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361919487P 2013-12-20 2013-12-20
US14/341,508 US20160026552A1 (en) 2013-12-20 2014-07-25 System, Method, and Computer Program Product for Storage Management Dashboard

Publications (1)

Publication Number Publication Date
US20160026552A1 true US20160026552A1 (en) 2016-01-28

Family

ID=53400105

Family Applications (6)

Application Number Title Priority Date Filing Date
US14/198,332 Active 2034-07-04 US9367421B2 (en) 2013-12-20 2014-03-05 Systems, methods, and computer programs products providing relevant correlation of data source performance
US14/198,302 Active 2034-06-05 US9507686B2 (en) 2013-12-20 2014-03-05 System, method, and computer program product for monitoring health of computer system assets
US14/311,011 Abandoned US20150180745A1 (en) 2013-12-20 2014-06-20 System, Method and Computer program Product for Accessing Hierarchical Nodes in Information Associated with Computer System Infrastructure and Assets
US14/310,994 Active 2034-11-02 US9612932B2 (en) 2013-12-20 2014-06-20 System, method, and computer program product for monitoring computer system infrastructure and assets
US14/310,979 Active US9471455B2 (en) 2013-12-20 2014-06-20 System, method, and computer program product for managing software updates
US14/341,508 Abandoned US20160026552A1 (en) 2013-12-20 2014-07-25 System, Method, and Computer Program Product for Storage Management Dashboard

Family Applications Before (5)

Application Number Title Priority Date Filing Date
US14/198,332 Active 2034-07-04 US9367421B2 (en) 2013-12-20 2014-03-05 Systems, methods, and computer programs products providing relevant correlation of data source performance
US14/198,302 Active 2034-06-05 US9507686B2 (en) 2013-12-20 2014-03-05 System, method, and computer program product for monitoring health of computer system assets
US14/311,011 Abandoned US20150180745A1 (en) 2013-12-20 2014-06-20 System, Method and Computer program Product for Accessing Hierarchical Nodes in Information Associated with Computer System Infrastructure and Assets
US14/310,994 Active 2034-11-02 US9612932B2 (en) 2013-12-20 2014-06-20 System, method, and computer program product for monitoring computer system infrastructure and assets
US14/310,979 Active US9471455B2 (en) 2013-12-20 2014-06-20 System, method, and computer program product for managing software updates

Country Status (1)

Country Link
US (6) US9367421B2 (en)

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160041782A1 (en) * 2014-08-07 2016-02-11 Randall Deetz Storage Device Copying of a larger system to a smaller system
US20160285707A1 (en) * 2015-03-24 2016-09-29 Netapp, Inc. Providing continuous context for operational information of a storage system
US9608880B1 (en) * 2015-02-19 2017-03-28 Dell Products L.P. Systems and methods for real-time performance monitoring
US9967158B2 (en) 2015-06-05 2018-05-08 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US9979615B2 (en) * 2015-06-05 2018-05-22 Cisco Technology, Inc. Techniques for determining network topologies
US10033766B2 (en) 2015-06-05 2018-07-24 Cisco Technology, Inc. Policy-driven compliance
US10089773B1 (en) * 2015-06-30 2018-10-02 EMC IP Holding Company LLC Animated array performance dashboard
US10089099B2 (en) 2015-06-05 2018-10-02 Cisco Technology, Inc. Automatic software upgrade
US10116559B2 (en) 2015-05-27 2018-10-30 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10171357B2 (en) 2016-05-27 2019-01-01 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10177977B1 (en) 2013-02-13 2019-01-08 Cisco Technology, Inc. Deployment and upgrade of network devices in a network environment
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10365838B2 (en) 2014-11-18 2019-07-30 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US20200348843A1 (en) * 2019-04-30 2020-11-05 Juniper Networks, Inc. Distributor data map for storage volume replication across multiple data centers
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US10873593B2 (en) 2018-01-25 2020-12-22 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
US10911328B2 (en) 2011-12-27 2021-02-02 Netapp, Inc. Quality of service policy based load adaption
US10917438B2 (en) 2018-01-25 2021-02-09 Cisco Technology, Inc. Secure publishing for policy updates
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10931629B2 (en) 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10951488B2 (en) 2011-12-27 2021-03-16 Netapp, Inc. Rule-based performance class access management for storage cluster performance guarantees
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US10997098B2 (en) 2016-09-20 2021-05-04 Netapp, Inc. Quality of service policy sets
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US11379119B2 (en) 2010-03-05 2022-07-05 Netapp, Inc. Writing data in a distributed data storage system
US11386120B2 (en) 2014-02-21 2022-07-12 Netapp, Inc. Data syncing in a distributed system
US20220326997A1 (en) * 2019-09-13 2022-10-13 Equifax Inc. Secure resource management to prevent resource abuse
US11765046B1 (en) 2018-01-11 2023-09-19 Cisco Technology, Inc. Endpoint cluster assignment and query generation
US20230353501A1 (en) * 2016-02-17 2023-11-02 Blackberry Limited Managing resource access
US20230401075A1 (en) * 2022-06-13 2023-12-14 Truist Bank Graphical user interface with performance indicators for computing devices of a computer network
US20240143628A1 (en) * 2022-10-28 2024-05-02 Dell Products L.P. Optimizing cross-data center mobility using content-based datasets

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7533808B2 (en) 2005-02-09 2009-05-19 Yuh-Shen Song Privacy protected cooperation network
US9411327B2 (en) 2012-08-27 2016-08-09 Johnson Controls Technology Company Systems and methods for classifying data in building automation systems
JP6002856B2 (en) * 2013-11-08 2016-10-05 株式会社日立製作所 Monitoring system and monitoring method
US8990637B1 (en) * 2014-03-17 2015-03-24 Splunk Inc. Computing and accessing quality indicators of computer applications
US9052938B1 (en) 2014-04-15 2015-06-09 Splunk Inc. Correlation and associated display of virtual machine data and storage performance data
US9531610B2 (en) * 2014-05-09 2016-12-27 Lyve Minds, Inc. Computation of storage network robustness
US11159618B2 (en) * 2014-07-25 2021-10-26 Hewlett Packard Enterprise Development Lp Software-defined sensing
US9785427B2 (en) * 2014-09-05 2017-10-10 Oracle International Corporation Orchestration of software applications upgrade using checkpoints
US20160092890A1 (en) * 2014-09-30 2016-03-31 Linkedin Corporation Multidimensional monitoring and alerting of business metrics
US9740474B2 (en) 2014-10-29 2017-08-22 Oracle International Corporation Orchestration of software applications upgrade using automatic hang detection
US9753717B2 (en) 2014-11-06 2017-09-05 Oracle International Corporation Timing report framework for distributed software upgrades
US9880828B2 (en) 2014-11-07 2018-01-30 Oracle International Corporation Notifications framework for distributed software upgrades
US20160134486A1 (en) * 2014-11-07 2016-05-12 Itamar Haber Systems, methods, and media for presenting metric data
US9929969B1 (en) * 2014-12-31 2018-03-27 VCA IP Holding Company LLC Tenant-based management system and method for distributed computing environments
US10389794B2 (en) * 2015-05-21 2019-08-20 International Business Machines Corporation Managing redundancy among application bundles
US10389850B2 (en) * 2015-05-21 2019-08-20 International Business Machines Corporation Managing redundancy among application bundles
US10530660B2 (en) 2015-05-21 2020-01-07 International Business Machines Corporation Application bundle preloading
US10031815B2 (en) * 2015-06-29 2018-07-24 Ca, Inc. Tracking health status in software components
US10257049B2 (en) * 2015-06-30 2019-04-09 International Business Machines Corporation Dynamic highlight
US9952850B2 (en) * 2015-07-28 2018-04-24 Datadirect Networks, Inc. Automated firmware update with rollback in a data storage system
DE102015117949A1 (en) * 2015-10-21 2017-04-27 Sontheim Industrie Elektronik GmbH Method for tracking the history in a distributed system
US10534326B2 (en) 2015-10-21 2020-01-14 Johnson Controls Technology Company Building automation system with integrated building information model
US11268732B2 (en) 2016-01-22 2022-03-08 Johnson Controls Technology Company Building energy management system with energy analytics
US11947785B2 (en) 2016-01-22 2024-04-02 Johnson Controls Technology Company Building system with a building graph
US10673697B2 (en) * 2016-03-13 2020-06-02 Cisco Technology, Inc. Bridging configuration changes for compliant devices
WO2017173167A1 (en) 2016-03-31 2017-10-05 Johnson Controls Technology Company Hvac device registration in a distributed building management system
US10505756B2 (en) 2017-02-10 2019-12-10 Johnson Controls Technology Company Building management system with space graphs
US11774920B2 (en) 2016-05-04 2023-10-03 Johnson Controls Technology Company Building system with user presentation composition based on building context
US10417451B2 (en) 2017-09-27 2019-09-17 Johnson Controls Technology Company Building system with smart entity personal identifying information (PII) masking
US10901373B2 (en) 2017-06-15 2021-01-26 Johnson Controls Technology Company Building management system with artificial intelligence for unified agent based control of building subsystems
US10318903B2 (en) 2016-05-06 2019-06-11 General Electric Company Constrained cash computing system to optimally schedule aircraft repair capacity with closed loop dynamic physical state and asset utilization attainment control
CN106021068B (en) * 2016-05-27 2018-07-17 北京京东尚科信息技术有限公司 The monitoring method and monitoring system of service interface
US10762513B2 (en) 2016-12-05 2020-09-01 Sap Se Data analytics system using insight providers
US11455080B2 (en) * 2016-12-05 2022-09-27 Sap Se Data analytics system using insight providers
US10475062B2 (en) 2017-01-03 2019-11-12 International Business Machines Corporation Rewarding online users as a function of network topology
US10684033B2 (en) 2017-01-06 2020-06-16 Johnson Controls Technology Company HVAC system with automated device pairing
US11900287B2 (en) 2017-05-25 2024-02-13 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with budgetary constraints
US11994833B2 (en) 2017-02-10 2024-05-28 Johnson Controls Technology Company Building smart entity system with agent based data ingestion and entity creation using time series data
US11360447B2 (en) 2017-02-10 2022-06-14 Johnson Controls Technology Company Building smart entity system with agent based communication and control
US10452043B2 (en) 2017-02-10 2019-10-22 Johnson Controls Technology Company Building management system with nested stream generation
US10095756B2 (en) 2017-02-10 2018-10-09 Johnson Controls Technology Company Building management system with declarative views of timeseries data
US10854194B2 (en) 2017-02-10 2020-12-01 Johnson Controls Technology Company Building system with digital twin based data ingestion and processing
US11307538B2 (en) 2017-02-10 2022-04-19 Johnson Controls Technology Company Web services platform with cloud-eased feedback control
US10515098B2 (en) 2017-02-10 2019-12-24 Johnson Controls Technology Company Building management smart entity creation and maintenance using time series data
US11764991B2 (en) 2017-02-10 2023-09-19 Johnson Controls Technology Company Building management system with identity management
JP6221196B1 (en) * 2017-03-15 2017-11-01 株式会社ウフル Log management system, log management apparatus, method, and computer program
WO2018175912A1 (en) 2017-03-24 2018-09-27 Johnson Controls Technology Company Building management system with dynamic channel communication
US11327737B2 (en) 2017-04-21 2022-05-10 Johnson Controls Tyco IP Holdings LLP Building management system with cloud management of gateway configurations
US10788229B2 (en) 2017-05-10 2020-09-29 Johnson Controls Technology Company Building management system with a distributed blockchain database
US10802940B1 (en) * 2017-05-22 2020-10-13 Palantir Technologies Inc. Approaches for analyzing data streams
US11022947B2 (en) 2017-06-07 2021-06-01 Johnson Controls Technology Company Building energy optimization system with economic load demand response (ELDR) optimization and ELDR user interfaces
EP3655826B1 (en) 2017-07-17 2024-07-03 Johnson Controls Tyco IP Holdings LLP Systems and methods for agent based building simulation for optimal control
EP3655824A1 (en) 2017-07-21 2020-05-27 Johnson Controls Technology Company Building management system with dynamic work order generation with adaptive diagnostic task details
US20190034066A1 (en) 2017-07-27 2019-01-31 Johnson Controls Technology Company Building management system with central plantroom dashboards
US10962945B2 (en) 2017-09-27 2021-03-30 Johnson Controls Technology Company Building management system with integration of data into smart entities
US11314788B2 (en) 2017-09-27 2022-04-26 Johnson Controls Tyco IP Holdings LLP Smart entity management for building management systems
US11768826B2 (en) 2017-09-27 2023-09-26 Johnson Controls Tyco IP Holdings LLP Web services for creation and maintenance of smart entities for connected devices
US11258683B2 (en) 2017-09-27 2022-02-22 Johnson Controls Tyco IP Holdings LLP Web services platform with nested stream generation
US20190096214A1 (en) 2017-09-27 2019-03-28 Johnson Controls Technology Company Building risk analysis system with geofencing for threats and assets
US10592343B2 (en) * 2017-10-03 2020-03-17 International Business Machines Corporation Cognitive analysis and resolution of erroneous software patches
US11281169B2 (en) 2017-11-15 2022-03-22 Johnson Controls Tyco IP Holdings LLP Building management system with point virtualization for online meters
US10809682B2 (en) 2017-11-15 2020-10-20 Johnson Controls Technology Company Building management system with optimized processing of building system data
US11127235B2 (en) 2017-11-22 2021-09-21 Johnson Controls Tyco IP Holdings LLP Building campus with integrated smart environment
US11539748B2 (en) 2018-01-23 2022-12-27 Zeronorth, Inc. Monitoring and reporting enterprise level cybersecurity remediation
US11121872B2 (en) * 2018-01-23 2021-09-14 Zeronorth, Inc. Trusted verification of cybersecurity remediation
CN108320166A (en) * 2018-02-06 2018-07-24 上海致趣广告有限公司 A kind of business opportunity progress method for tracing and system
US10805185B2 (en) * 2018-02-14 2020-10-13 Cisco Technology, Inc. Detecting bug patterns across evolving network software versions
US11954713B2 (en) 2018-03-13 2024-04-09 Johnson Controls Tyco IP Holdings LLP Variable refrigerant flow system with electricity consumption apportionment
US10719422B2 (en) * 2018-04-23 2020-07-21 Markets, Patents & Alliances LLC System performance monitor with graphical user interface
US20200021500A1 (en) * 2018-07-11 2020-01-16 Mellanox Technologies, Ltd. Switch-port visual indications using external device
AU2019210562A1 (en) * 2018-08-02 2020-02-20 Otis Elevator Company Web based storage for microprocessor and micro controller based product software management
US20200090097A1 (en) * 2018-09-14 2020-03-19 International Business Machines Corporation Providing user workflow assistance
US11016648B2 (en) 2018-10-30 2021-05-25 Johnson Controls Technology Company Systems and methods for entity visualization and management with an entity node editor
US11927925B2 (en) 2018-11-19 2024-03-12 Johnson Controls Tyco IP Holdings LLP Building system with a time correlated reliability data stream
US11449332B2 (en) 2018-11-30 2022-09-20 Hewlett-Packard Development Company, L.P. Polling computing devices
WO2020112144A1 (en) 2018-11-30 2020-06-04 Hewlett-Packard Development Company, L.P. Software patch difference devices
US11436567B2 (en) 2019-01-18 2022-09-06 Johnson Controls Tyco IP Holdings LLP Conference room management system
US10788798B2 (en) 2019-01-28 2020-09-29 Johnson Controls Technology Company Building management system with hybrid edge-cloud processing
US20210200174A1 (en) 2019-12-31 2021-07-01 Johnson Controls Technology Company Building information model management system with hierarchy generation
US11894944B2 (en) 2019-12-31 2024-02-06 Johnson Controls Tyco IP Holdings LLP Building data platform with an enrichment loop
WO2021138245A1 (en) 2019-12-31 2021-07-08 Johnson Controls Technology Company Building data platform
US11769066B2 (en) 2021-11-17 2023-09-26 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin triggers and actions
US12021650B2 (en) 2019-12-31 2024-06-25 Tyco Fire & Security Gmbh Building data platform with event subscriptions
US11354217B2 (en) * 2020-01-28 2022-06-07 Ebay Inc. Modified database traffic mirroring through a distributed data service
US12100280B2 (en) 2020-02-04 2024-09-24 Tyco Fire & Security Gmbh Systems and methods for software defined fire detection and risk assessment
US11567756B2 (en) 2020-03-16 2023-01-31 Microsoft Technology Licensing, Llc Causality determination of upgrade regressions via comparisons of telemetry data
US11537386B2 (en) 2020-04-06 2022-12-27 Johnson Controls Tyco IP Holdings LLP Building system with dynamic configuration of network resources for 5G networks
US11182239B2 (en) * 2020-04-28 2021-11-23 Intuit Inc. Enriched high fidelity metrics
US10936462B1 (en) * 2020-04-29 2021-03-02 Split Software, Inc. Systems and methods for real-time application anomaly detection and configuration
US11874809B2 (en) 2020-06-08 2024-01-16 Johnson Controls Tyco IP Holdings LLP Building system with naming schema encoding entity type and entity relationships
CN113852512B (en) * 2020-06-28 2024-09-27 中兴通讯股份有限公司 Data analysis method, electronic device and storage medium
US11212195B1 (en) * 2020-09-11 2021-12-28 Microsoft Technology Licensing, Llc IT monitoring recommendation service
US11397773B2 (en) 2020-09-30 2022-07-26 Johnson Controls Tyco IP Holdings LLP Building management system with semantic model integration
US11954154B2 (en) 2020-09-30 2024-04-09 Johnson Controls Tyco IP Holdings LLP Building management system with semantic model integration
US12063274B2 (en) 2020-10-30 2024-08-13 Tyco Fire & Security Gmbh Self-configuring building management system
US12061453B2 (en) 2020-12-18 2024-08-13 Tyco Fire & Security Gmbh Building management system performance index
US11921481B2 (en) 2021-03-17 2024-03-05 Johnson Controls Tyco IP Holdings LLP Systems and methods for determining equipment energy waste
US11709618B2 (en) * 2021-03-25 2023-07-25 Dell Products L.P. Automatically processing storage system data and generating visualizations representing differential data comparisons
US20220318332A1 (en) * 2021-03-30 2022-10-06 Traceable Inc. Intelligent naming of application program interfaces
US11899723B2 (en) 2021-06-22 2024-02-13 Johnson Controls Tyco IP Holdings LLP Building data platform with context based twin function processing
US11796974B2 (en) 2021-11-16 2023-10-24 Johnson Controls Tyco IP Holdings LLP Building data platform with schema extensibility for properties and tags of a digital twin
US11934966B2 (en) 2021-11-17 2024-03-19 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin inferences
US11704311B2 (en) 2021-11-24 2023-07-18 Johnson Controls Tyco IP Holdings LLP Building data platform with a distributed digital twin
US11714930B2 (en) 2021-11-29 2023-08-01 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin based inferences and predictions for a graphical building model
US12013673B2 (en) 2021-11-29 2024-06-18 Tyco Fire & Security Gmbh Building control system using reinforcement learning
US12061633B2 (en) 2022-09-08 2024-08-13 Tyco Fire & Security Gmbh Building system that maps points into a graph schema
US12013823B2 (en) 2022-09-08 2024-06-18 Tyco Fire & Security Gmbh Gateway system that maps points into a graph schema
CN116718598B (en) * 2023-06-01 2023-12-29 鹰普罗斯叶轮(宜兴)有限公司 Aluminum alloy impeller defect monitoring system based on visual inspection

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6675128B1 (en) * 1999-09-30 2004-01-06 International Business Machines Corporation Methods and apparatus for performance management using self-adjusting model-based policies
US20040044698A1 (en) * 2002-08-30 2004-03-04 Atsushi Ebata Method for rebalancing free disk space among network storages virtualized into a single file system view
US20060168199A1 (en) * 2005-01-27 2006-07-27 Chagoly Bryan C Method and apparatus for exposing monitoring violations to the monitored application
US7302455B1 (en) * 2002-02-26 2007-11-27 At&T Bls Intellectual Property, Inc. System and method for reliably purging statistical records
US20100281230A1 (en) * 2009-04-29 2010-11-04 Netapp, Inc. Mechanisms for moving data in a hybrid aggregate
US20110016401A1 (en) * 2009-07-16 2011-01-20 Harris Corporation Method and apparatus for efficient display of critical information in a dispatch environment
US20110022700A1 (en) * 2009-07-27 2011-01-27 Avinash Ramanath Real World Network Testing Combining Lower Layer Network Tests, Application Layer Tests and Interdependent Interactions
US20110201911A1 (en) * 2010-02-12 2011-08-18 Dexcom, Inc. Receivers for analyzing and displaying sensor data
US20120179823A1 (en) * 2009-12-11 2012-07-12 Hitachi, Ltd Computer system, management method of computer resource and program
US20130297869A1 (en) * 2012-05-01 2013-11-07 Enmotus Inc. Storage system with load balancing mechanism and method of operation thereof
US20140082540A1 (en) * 2012-09-18 2014-03-20 Sap Ag System and Method for Improved Consumption Models for Analytics
US20140173499A1 (en) * 2012-12-14 2014-06-19 Chevron U.S.A. Inc. Systems and methods for integrating storage usage information
US20140188986A1 (en) * 2013-01-02 2014-07-03 Sourcefire, Inc. Method and Apparatus for Identifying Computing Resource Trajectory
US8806154B1 (en) * 2011-05-06 2014-08-12 Chelsio Communications, Inc. Thin provisioning row snapshot with reference count map
US20140280382A1 (en) * 2013-03-12 2014-09-18 Netapp, Inc. Capacity accounting for heterogeneous storage systems
US8904144B1 (en) * 2012-05-24 2014-12-02 Netapp, Inc. Methods and systems for determining at risk index for storage capacity
US20150236926A1 (en) * 2011-12-27 2015-08-20 Solidfire, Inc. Quality of service policy sets

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944654B1 (en) 1999-11-01 2005-09-13 Emc Corporation Multiple storage array control
US6876988B2 (en) 2000-10-23 2005-04-05 Netuitive, Inc. Enhanced computer performance forecasting system
CA2455079A1 (en) 2001-08-06 2003-02-20 Mercury Interactive Corporation System and method for automated analysis of load testing results
US20030135382A1 (en) 2002-01-14 2003-07-17 Richard Marejka Self-monitoring service system for providing historical and current operating status
JP2005524182A (en) * 2002-04-30 2005-08-11 ノキア コーポレイション Tree data exchange management method and apparatus
US7509229B1 (en) 2002-07-23 2009-03-24 Opnet Technologies, Inc. Bayesian approach to correlating network traffic congestion to performance metrics
US7703091B1 (en) 2002-12-31 2010-04-20 Emc Corporation Methods and apparatus for installing agents in a managed network
US7752301B1 (en) 2003-01-23 2010-07-06 Gomez Acquisition Corporation System and interface for monitoring information technology assets
US20040243636A1 (en) 2003-03-18 2004-12-02 Smartsignal Corporation Equipment health monitoring architecture for fleets of assets
CA2465151A1 (en) 2003-04-16 2004-10-16 Novadigm, Inc. Method and system for patch management
US7447677B2 (en) 2003-06-27 2008-11-04 Microsoft Corporation System and method for enabling client applications to interactively obtain and present taxonomy information
US7376870B2 (en) 2004-09-30 2008-05-20 Intel Corporation Self-monitoring and updating of firmware over a network
US7827154B1 (en) 2004-10-05 2010-11-02 Symantec Operating Corporation Application failure diagnosis
US7844701B2 (en) 2005-08-01 2010-11-30 Network Appliance, Inc. Rule-based performance analysis of storage appliances
US20070124465A1 (en) 2005-08-19 2007-05-31 Malloy Patrick J Synchronized network and process performance overview
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
KR100747466B1 (en) 2005-10-01 2007-08-09 엘지전자 주식회사 A device management client and device management method using nodes having additional properties
EP1783672A1 (en) * 2005-11-08 2007-05-09 Hewlett-Packard Development Company, L.P. Method for managing a group of servers taking into account electric power consumption
US8176483B2 (en) 2005-12-30 2012-05-08 Sap Ag Software maintenance management
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8813063B2 (en) 2006-12-06 2014-08-19 International Business Machines Corporation Verification of successful installation of computer software
JP4585534B2 (en) 2007-03-01 2010-11-24 富士通株式会社 System monitoring program, system monitoring method, and system monitoring apparatus
US8019794B2 (en) 2007-04-02 2011-09-13 Sharp Laboratories Of America, Inc. Firmware repository for MFP devices
US8868620B2 (en) * 2007-06-08 2014-10-21 International Business Machines Corporation Techniques for composing data queries
US8364528B2 (en) 2008-05-06 2013-01-29 Richrelevance, Inc. System and process for improving product recommendations for use in providing personalized advertisements to retail customers
JP4618358B2 (en) 2008-09-29 2011-01-26 ブラザー工業株式会社 Peripheral device management program and peripheral device management system
US8799315B2 (en) 2009-01-30 2014-08-05 International Business Machines Corporation Selective construction of data search result per search request specifying path information
US8381208B2 (en) 2009-06-11 2013-02-19 International Business Machines Corporation Tracking application installation among a plurality of client devices
US8332509B2 (en) 2010-02-20 2012-12-11 Microsoft Corporation Parameterized computer monitoring system
US9378111B2 (en) * 2010-11-11 2016-06-28 Sap Se Method and system for easy correlation between monitored metrics and alerts
US8359016B2 (en) 2010-11-19 2013-01-22 Mobile Iron, Inc. Management of mobile applications
US8738972B1 (en) * 2011-02-04 2014-05-27 Dell Software Inc. Systems and methods for real-time monitoring of virtualized environments
EP2691858B1 (en) 2011-03-30 2016-10-26 Hewlett-Packard Enterprise Development LP Timeframe based data analysis
US9170868B2 (en) 2011-07-27 2015-10-27 Cleversafe, Inc. Identifying an error cause within a dispersed storage network
US9081829B2 (en) 2011-10-05 2015-07-14 Cumulus Systems Incorporated System for organizing and fast searching of massive amounts of data
CA2889387C (en) 2011-11-22 2020-03-24 Solano Labs, Inc. System of distributed software quality improvement
US10404556B2 (en) * 2012-06-22 2019-09-03 Microsoft Technology Licensing, Llc Methods and computer program products for correlation analysis of network traffic in a network device
US9697528B2 (en) * 2012-06-25 2017-07-04 International Business Machines Corporation Tracking interactions with forwarded links by evaluating similarity of forwarded links and evaluating a chain of forwarding
US20140143768A1 (en) 2012-11-19 2014-05-22 International Business Machines Corporation Monitoring updates on multiple computing platforms
US9760361B2 (en) 2012-11-26 2017-09-12 International Business Machines Corporation Optimized installation of received patches for application programs already running on computer systems
US9389850B2 (en) * 2012-11-29 2016-07-12 Honeywell International Inc. System and approach to manage versioning of field devices in a multi-site enterprise
US9230040B2 (en) 2013-03-14 2016-01-05 Microsoft Technology Licensing, Llc Scalable, schemaless document query model
US9154397B2 (en) 2013-03-15 2015-10-06 Microsoft Technology Licensing, Llc Methods and computer program products for transaction relationships between application servers
US9811435B2 (en) * 2013-09-03 2017-11-07 Cisco Technology, Inc. System for virtual machine risk monitoring
US9239715B1 (en) 2013-09-25 2016-01-19 Amazon Technologies, Inc. Cancel and rollback update stack requests
US9348573B2 (en) 2013-12-02 2016-05-24 Qbase, LLC Installation and fault handling in a distributed system utilizing supervisor and dependency manager nodes

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6675128B1 (en) * 1999-09-30 2004-01-06 International Business Machines Corporation Methods and apparatus for performance management using self-adjusting model-based policies
US7302455B1 (en) * 2002-02-26 2007-11-27 At&T Bls Intellectual Property, Inc. System and method for reliably purging statistical records
US20040044698A1 (en) * 2002-08-30 2004-03-04 Atsushi Ebata Method for rebalancing free disk space among network storages virtualized into a single file system view
US20060168199A1 (en) * 2005-01-27 2006-07-27 Chagoly Bryan C Method and apparatus for exposing monitoring violations to the monitored application
US20100281230A1 (en) * 2009-04-29 2010-11-04 Netapp, Inc. Mechanisms for moving data in a hybrid aggregate
US20110016401A1 (en) * 2009-07-16 2011-01-20 Harris Corporation Method and apparatus for efficient display of critical information in a dispatch environment
US20110022700A1 (en) * 2009-07-27 2011-01-27 Avinash Ramanath Real World Network Testing Combining Lower Layer Network Tests, Application Layer Tests and Interdependent Interactions
US20120179823A1 (en) * 2009-12-11 2012-07-12 Hitachi, Ltd Computer system, management method of computer resource and program
US20110201911A1 (en) * 2010-02-12 2011-08-18 Dexcom, Inc. Receivers for analyzing and displaying sensor data
US8806154B1 (en) * 2011-05-06 2014-08-12 Chelsio Communications, Inc. Thin provisioning row snapshot with reference count map
US20150236926A1 (en) * 2011-12-27 2015-08-20 Solidfire, Inc. Quality of service policy sets
US20130297869A1 (en) * 2012-05-01 2013-11-07 Enmotus Inc. Storage system with load balancing mechanism and method of operation thereof
US8904144B1 (en) * 2012-05-24 2014-12-02 Netapp, Inc. Methods and systems for determining at risk index for storage capacity
US20140082540A1 (en) * 2012-09-18 2014-03-20 Sap Ag System and Method for Improved Consumption Models for Analytics
US20140173499A1 (en) * 2012-12-14 2014-06-19 Chevron U.S.A. Inc. Systems and methods for integrating storage usage information
US20140188986A1 (en) * 2013-01-02 2014-07-03 Sourcefire, Inc. Method and Apparatus for Identifying Computing Resource Trajectory
US20140280382A1 (en) * 2013-03-12 2014-09-18 Netapp, Inc. Capacity accounting for heterogeneous storage systems

Cited By (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11379119B2 (en) 2010-03-05 2022-07-05 Netapp, Inc. Writing data in a distributed data storage system
US10911328B2 (en) 2011-12-27 2021-02-02 Netapp, Inc. Quality of service policy based load adaption
US11212196B2 (en) 2011-12-27 2021-12-28 Netapp, Inc. Proportional quality of service based on client impact on an overload condition
US10951488B2 (en) 2011-12-27 2021-03-16 Netapp, Inc. Rule-based performance class access management for storage cluster performance guarantees
US10177977B1 (en) 2013-02-13 2019-01-08 Cisco Technology, Inc. Deployment and upgrade of network devices in a network environment
US11386120B2 (en) 2014-02-21 2022-07-12 Netapp, Inc. Data syncing in a distributed system
US20160041782A1 (en) * 2014-08-07 2016-02-11 Randall Deetz Storage Device Copying of a larger system to a smaller system
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US10365838B2 (en) 2014-11-18 2019-07-30 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
US9608880B1 (en) * 2015-02-19 2017-03-28 Dell Products L.P. Systems and methods for real-time performance monitoring
US9762460B2 (en) * 2015-03-24 2017-09-12 Netapp, Inc. Providing continuous context for operational information of a storage system
US20160285707A1 (en) * 2015-03-24 2016-09-29 Netapp, Inc. Providing continuous context for operational information of a storage system
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US10116559B2 (en) 2015-05-27 2018-10-30 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US11477097B2 (en) 2015-06-05 2022-10-18 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US10686804B2 (en) 2015-06-05 2020-06-16 Cisco Technology, Inc. System for monitoring and managing datacenters
US12113684B2 (en) 2015-06-05 2024-10-08 Cisco Technology, Inc. Identifying bogon address spaces
US10171319B2 (en) 2015-06-05 2019-01-01 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10177998B2 (en) 2015-06-05 2019-01-08 Cisco Technology, Inc. Augmenting flow data for improved network monitoring and management
US10129117B2 (en) 2015-06-05 2018-11-13 Cisco Technology, Inc. Conditional policies
US10181987B2 (en) 2015-06-05 2019-01-15 Cisco Technology, Inc. High availability of collectors of traffic reported by network sensors
US10230597B2 (en) 2015-06-05 2019-03-12 Cisco Technology, Inc. Optimizations for application dependency mapping
US10243817B2 (en) 2015-06-05 2019-03-26 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US11968103B2 (en) 2015-06-05 2024-04-23 Cisco Technology, Inc. Policy utilization analysis
US11968102B2 (en) 2015-06-05 2024-04-23 Cisco Technology, Inc. System and method of detecting packet loss in a distributed sensor-collector architecture
US10305757B2 (en) 2015-06-05 2019-05-28 Cisco Technology, Inc. Determining a reputation of a network entity
US10320630B2 (en) 2015-06-05 2019-06-11 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US10326673B2 (en) * 2015-06-05 2019-06-18 Cisco Technology, Inc. Techniques for determining network topologies
US10326672B2 (en) 2015-06-05 2019-06-18 Cisco Technology, Inc. MDL-based clustering for application dependency mapping
US10116531B2 (en) 2015-06-05 2018-10-30 Cisco Technology, Inc Round trip time (RTT) measurement based upon sequence number
US10116530B2 (en) 2015-06-05 2018-10-30 Cisco Technology, Inc. Technologies for determining sensor deployment characteristics
US10439904B2 (en) 2015-06-05 2019-10-08 Cisco Technology, Inc. System and method of determining malicious processes
US10454793B2 (en) 2015-06-05 2019-10-22 Cisco Technology, Inc. System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack
US10505828B2 (en) 2015-06-05 2019-12-10 Cisco Technology, Inc. Technologies for managing compromised sensors in virtualized environments
US10505827B2 (en) 2015-06-05 2019-12-10 Cisco Technology, Inc. Creating classifiers for servers and clients in a network
US10516586B2 (en) 2015-06-05 2019-12-24 Cisco Technology, Inc. Identifying bogon address spaces
US10516585B2 (en) 2015-06-05 2019-12-24 Cisco Technology, Inc. System and method for network information mapping and displaying
US11936663B2 (en) 2015-06-05 2024-03-19 Cisco Technology, Inc. System for monitoring and managing datacenters
US11924072B2 (en) 2015-06-05 2024-03-05 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US11924073B2 (en) 2015-06-05 2024-03-05 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US10567247B2 (en) 2015-06-05 2020-02-18 Cisco Technology, Inc. Intra-datacenter attack detection
US11902120B2 (en) 2015-06-05 2024-02-13 Cisco Technology, Inc. Synthetic data for determining health of a network security system
US11902122B2 (en) 2015-06-05 2024-02-13 Cisco Technology, Inc. Application monitoring prioritization
US11894996B2 (en) 2015-06-05 2024-02-06 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10623283B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. Anomaly detection through header field entropy
US10623284B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. Determining a reputation of a network entity
US10623282B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. System and method of detecting hidden processes by analyzing packet flows
US10659324B2 (en) 2015-06-05 2020-05-19 Cisco Technology, Inc. Application monitoring prioritization
US11153184B2 (en) 2015-06-05 2021-10-19 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10033766B2 (en) 2015-06-05 2018-07-24 Cisco Technology, Inc. Policy-driven compliance
US10693749B2 (en) 2015-06-05 2020-06-23 Cisco Technology, Inc. Synthetic data for determining health of a network security system
US11700190B2 (en) 2015-06-05 2023-07-11 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US11695659B2 (en) 2015-06-05 2023-07-04 Cisco Technology, Inc. Unique ID generation for sensors
US10728119B2 (en) 2015-06-05 2020-07-28 Cisco Technology, Inc. Cluster discovery via multi-domain fusion for application dependency mapping
US10735283B2 (en) 2015-06-05 2020-08-04 Cisco Technology, Inc. Unique ID generation for sensors
US10742529B2 (en) 2015-06-05 2020-08-11 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US11637762B2 (en) 2015-06-05 2023-04-25 Cisco Technology, Inc. MDL-based clustering for dependency mapping
US11601349B2 (en) 2015-06-05 2023-03-07 Cisco Technology, Inc. System and method of detecting hidden processes by analyzing packet flows
US10797973B2 (en) 2015-06-05 2020-10-06 Cisco Technology, Inc. Server-client determination
US10797970B2 (en) 2015-06-05 2020-10-06 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US11528283B2 (en) 2015-06-05 2022-12-13 Cisco Technology, Inc. System for monitoring and managing datacenters
US11522775B2 (en) 2015-06-05 2022-12-06 Cisco Technology, Inc. Application monitoring prioritization
US10862776B2 (en) 2015-06-05 2020-12-08 Cisco Technology, Inc. System and method of spoof detection
US11516098B2 (en) 2015-06-05 2022-11-29 Cisco Technology, Inc. Round trip time (RTT) measurement based upon sequence number
US11502922B2 (en) 2015-06-05 2022-11-15 Cisco Technology, Inc. Technologies for managing compromised sensors in virtualized environments
US11496377B2 (en) 2015-06-05 2022-11-08 Cisco Technology, Inc. Anomaly detection through header field entropy
US10904116B2 (en) 2015-06-05 2021-01-26 Cisco Technology, Inc. Policy utilization analysis
US10089099B2 (en) 2015-06-05 2018-10-02 Cisco Technology, Inc. Automatic software upgrade
US10917319B2 (en) 2015-06-05 2021-02-09 Cisco Technology, Inc. MDL-based clustering for dependency mapping
US9967158B2 (en) 2015-06-05 2018-05-08 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US11252060B2 (en) 2015-06-05 2022-02-15 Cisco Technology, Inc. Data center traffic analytics synchronization
US11431592B2 (en) 2015-06-05 2022-08-30 Cisco Technology, Inc. System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack
US10979322B2 (en) 2015-06-05 2021-04-13 Cisco Technology, Inc. Techniques for determining network anomalies in data center networks
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US11128552B2 (en) 2015-06-05 2021-09-21 Cisco Technology, Inc. Round trip time (RTT) measurement based upon sequence number
US11405291B2 (en) 2015-06-05 2022-08-02 Cisco Technology, Inc. Generate a communication graph using an application dependency mapping (ADM) pipeline
US9979615B2 (en) * 2015-06-05 2018-05-22 Cisco Technology, Inc. Techniques for determining network topologies
US10009240B2 (en) 2015-06-05 2018-06-26 Cisco Technology, Inc. System and method of recommending policies that result in particular reputation scores for hosts
US11368378B2 (en) 2015-06-05 2022-06-21 Cisco Technology, Inc. Identifying bogon address spaces
US11102093B2 (en) 2015-06-05 2021-08-24 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US11121948B2 (en) 2015-06-05 2021-09-14 Cisco Technology, Inc. Auto update of sensor configuration
US11252058B2 (en) 2015-06-05 2022-02-15 Cisco Technology, Inc. System and method for user optimized application dependency mapping
US10089773B1 (en) * 2015-06-30 2018-10-02 EMC IP Holding Company LLC Animated array performance dashboard
US20230353501A1 (en) * 2016-02-17 2023-11-02 Blackberry Limited Managing resource access
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US12021826B2 (en) 2016-05-27 2024-06-25 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10171357B2 (en) 2016-05-27 2019-01-01 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US11546288B2 (en) 2016-05-27 2023-01-03 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10931629B2 (en) 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US11283712B2 (en) 2016-07-21 2022-03-22 Cisco Technology, Inc. System and method of providing segment routing as a service
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10997098B2 (en) 2016-09-20 2021-05-04 Netapp, Inc. Quality of service policy sets
US11886363B2 (en) 2016-09-20 2024-01-30 Netapp, Inc. Quality of service policy sets
US11327910B2 (en) 2016-09-20 2022-05-10 Netapp, Inc. Quality of service policy sets
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US11088929B2 (en) 2017-03-23 2021-08-10 Cisco Technology, Inc. Predicting application and network performance
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US11252038B2 (en) 2017-03-24 2022-02-15 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US11509535B2 (en) 2017-03-27 2022-11-22 Cisco Technology, Inc. Network agent for reporting to a network policy system
US11146454B2 (en) 2017-03-27 2021-10-12 Cisco Technology, Inc. Intent driven network policy platform
US11202132B2 (en) 2017-03-28 2021-12-14 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US11683618B2 (en) 2017-03-28 2023-06-20 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US11863921B2 (en) 2017-03-28 2024-01-02 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US11044170B2 (en) 2017-10-23 2021-06-22 Cisco Technology, Inc. Network migration assistant
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US10904071B2 (en) 2017-10-27 2021-01-26 Cisco Technology, Inc. System and method for network root cause analysis
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US11750653B2 (en) 2018-01-04 2023-09-05 Cisco Technology, Inc. Network intrusion counter-intelligence
US11765046B1 (en) 2018-01-11 2023-09-19 Cisco Technology, Inc. Endpoint cluster assignment and query generation
US11924240B2 (en) 2018-01-25 2024-03-05 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10917438B2 (en) 2018-01-25 2021-02-09 Cisco Technology, Inc. Secure publishing for policy updates
US10873593B2 (en) 2018-01-25 2020-12-22 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
US20200348843A1 (en) * 2019-04-30 2020-11-05 Juniper Networks, Inc. Distributor data map for storage volume replication across multiple data centers
US20220326997A1 (en) * 2019-09-13 2022-10-13 Equifax Inc. Secure resource management to prevent resource abuse
US11995470B2 (en) * 2019-09-13 2024-05-28 Equifax Inc. Secure resource management to prevent resource abuse
US20230401075A1 (en) * 2022-06-13 2023-12-14 Truist Bank Graphical user interface with performance indicators for computing devices of a computer network
US20240143628A1 (en) * 2022-10-28 2024-05-02 Dell Products L.P. Optimizing cross-data center mobility using content-based datasets

Also Published As

Publication number Publication date
US9367421B2 (en) 2016-06-14
US9471455B2 (en) 2016-10-18
US9612932B2 (en) 2017-04-04
US9507686B2 (en) 2016-11-29
US20150180744A1 (en) 2015-06-25
US20150178176A1 (en) 2015-06-25
US20150178066A1 (en) 2015-06-25
US20150180745A1 (en) 2015-06-25
US20150180739A1 (en) 2015-06-25

Similar Documents

Publication Publication Date Title
US20160026552A1 (en) System, Method, and Computer Program Product for Storage Management Dashboard
JP6373482B2 (en) Interface for controlling and analyzing computer environments
US9635101B2 (en) Proposed storage system solution selection for service level objective management
US9542346B2 (en) Method and system for monitoring and analyzing quality of service in a storage system
US8595364B2 (en) System and method for automatic storage load balancing in virtual server environments
US9542115B1 (en) Methods and systems for trouble shooting performance issues in networked storage systems
US9406029B2 (en) Modeler for predicting storage metrics
US9864517B2 (en) Actively responding to data storage traffic
US8751415B2 (en) Visualization for resource capacity management
US9122739B1 (en) Evaluating proposed storage solutions
US8732654B2 (en) Dependency-based impact analysis using multidimensional models of software offerings
US9658778B2 (en) Method and system for monitoring and analyzing quality of service in a metro-cluster
US20150199136A1 (en) Method and system for monitoring and analyzing quality of service in a storage system
US11194688B1 (en) Application architecture optimization and visualization
US20180267728A1 (en) Provisioning volumes
US10389809B2 (en) Systems and methods for resource management in a networked environment
US20170302738A1 (en) Methods and systems for managing provisioning requests in a networked storage environment
US11032152B2 (en) Machine-learning based self-populating dashboard for resource utilization monitoring in hyper-converged information technology environments
US11231987B1 (en) Debugging of memory operations
US20150199139A1 (en) Method and system for monitoring and analyzing quality of service in a storage system
US9588792B2 (en) Method and system for sorting and bucketizing alerts in a virtualization environment
US10394612B2 (en) Methods and systems to evaluate data center performance and prioritize data center objects and anomalies for remedial actions
US10459834B2 (en) Run time and historical workload report scores for customer profiling visualization
JP6500165B2 (en) Management system for managing computer systems
US20140237180A1 (en) Determining efficiency of a virtual array in a virtualized storage system

Legal Events

Date Code Title Description
AS Assignment

Owner name: NETAPP, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HOLDEN, JAMES;KESSEL, OMRI;REEL/FRAME:033752/0253

Effective date: 20140911

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION