Abstract:
Technology for operating a cache sizing system is disclosed. In various embodiments, the technology monitors input/output (IO) accesses to a storage system within a monitor period; tracks an access map for storage addresses within the storage system during the monitor period; and counts a particular access condition of the IO accesses based on the access map during the monitor period. When sizing a cache of the storage system that enables the storage system to provide a specified level of service, the counting is for computing a working set size (WSS) estimate of the storage system.
Abstract:
A method of retrieving hierarchical information, the method including receiving a request on an interface of a server, the request identifying a base node and an expansion node, the base node and the expansion node being hierarchically-arranged data objects in a data memory in communication with the server, parsing the request to determine the base node in the hierarchical information, parsing the request to determine the expansion node in the hierarchical information, retrieving a base record associated with the base node, retrieving an expansion record associated with the expansion node and referenced by the base record, inserting information from the base record and information from the expansion record into a response, and returning the response to a client computer in response to the request.
Abstract:
A method performed by a monitoring tool in a computer system, the method including: displaying a user interface including information regarding a first resource; running a correlation algorithm to determine whether other resources in the computer system show correlation for one or more performance metrics; selecting one or more other resources as suggestions based on results of the correlation algorithm; displaying selected resources in a list with the base resource and render a graph of performance metrics over time with performance data of the base resource and the suggested resources overlaid; and overlaying further performance data on the graph for a resource searched for, and selected by, the human user.
Abstract:
A system and method for specifying the placement of and managing the placement of objects on a distributed networked grid. Some embodiments of the invention comprise a user interface for specifying rules for the placement of objects on the grid and an execution module that places objects on the grid based on the rules specified. Rules may comprise a matching criteria specification, which determines whether a rule applies to a particular object, and a placement specification, which directs the locations at which an object will be placed under the rule.
Abstract:
Techniques to managing non-disruptive SAN availability in a partitioned cluster comprising one or more components configured to determine whether to separate a cluster into two or more partitions, notify one or more responsive cluster nodes to separate the cluster into a first partition and a second partition, update one or more access states, notify the host that access states of one or more network paths has been updated, and provide the one or more access states. Other embodiments are described and claimed.
Abstract:
A method performed by a computer system, the method including maintaining a plurality of work-based counters, each of the work-based counters being associated with a respective functional entity of a plurality of functional entities, in response to determining that a first one of the work-based counters has reached a threshold, sampling a performance data of a first functional entity associated with the first one of the work-based counters, and presenting the sampled performance data to an analysis tool separate from an operating system of the computer system.
Abstract:
A system and method of negotiated takeover of storage objects includes one or more processors, a storage controller, and memory coupled to the one or more processors. The memory stores a data structure that includes information about a plurality of storage objects manageable by the storage controller. The storage controller is configured to assume, one by one, current ownership of a first subset of the storage objects and assume, concurrently, current ownership of a second subset of the storage objects. The first subset of storage objects and the second subset of storage objects are currently owned by a second storage server coupled to the storage server. In some embodiments, current ownership of the first subset of storage objects is transferred by iteratively detecting a particular storage object from the first subset of the storage objects whose current ownership can be assumed and bringing the particular storage object online.
Abstract:
A network storage server system includes a distributed object store and a metadata subsystem. The metadata subsystem stores metadata relating to the stored data objects and allows data objects to be located and retrieved easily via user-specified search queries. It manages and allows searches on at least three categories of metadata via the same user interface and technique. These categories include user-specified metadata, inferred metadata and system-defined metadata. Search queries for the metadata can include multi-predicate queries.
Abstract:
It is determined that a first data block contains the same data as a second data block. The first data block is associated with a first extent and the second data block is associated with a second extent. In response to determining that the first data block contains the same data as the second data block, the second data block is associated with the first extent and the first data block is disassociated with the second extent.
Abstract:
A system and method for performing a progressive fault injection process to verify software is provided. In some embodiments, the method comprises loading a software product into the memory of a testbed computing system, wherein the software product includes a function and a statement that calls the function. A data structure is updated based on an error domain of the function. The calling statement is executed for each of one or more error return codes of the error domain. For each iteration of the execution, a call of the function by the calling statement is detected, and, in response, an error return code of the one or more error return codes is provided in lieu of executing the function. The software product is monitored to determine a response to the provided error return code. In some embodiments, the error return code to provide is determined by querying the data structure.