Methods, systems, and computer readable mediums for performing metadata-driven data collection
AssigneeEMC IP Holding Company LLC
InventorsVenkatesh Sudarsanam Madhipatla, Bayi Peng, Xiaohong Fu
Life of this patent
Estimating the term…
Loading patent…
AssigneeEMC IP Holding Company LLC
InventorsVenkatesh Sudarsanam Madhipatla, Bayi Peng, Xiaohong Fu
Estimating the term…
Methods, systems, and computer readable media for performing metadata-driven data collection are disclosed. In some examples, a method includes receiving a request for system status data for components of a distributed computing system while the distributed computing system is in operation. The request includes metadata specifying a data collection sequence for collecting component-level system status data. The components include compute components, network components, and storage components. The method includes obtaining, using the metadata, the component-level system status data by querying protocol-based data collectors in an order, one after the other, as specified by the data collection sequence specified by the metadata. The method includes assembling the component-level system status data into assembled status data and storing the assembled status data in memory and/or a repository.
A method comprising:
A system comprising:
A non-transitory computer readable medium storing executable instructions that, when executed by at least one processor of a computer system, cause the computer system to perform operations comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
File system types: virtual file systems
File systems; File servers: file access structures, e.g. distributed indices
Of structured data, e.g. relational data: updating
Querying: query processing
About 10 years 1 month of term left · ends 5 Dec 2036 (estimated)
The subject matter described herein relates to data collection. More specifically, the subject matter relates to methods, systems, and computer readable mediums for performing metadata-driven data collection.
Management software for managing a distributed computing system can include user interfaces for managing, monitoring, viewing, and/or configuring one or more components (e.g., physical resources and/or virtual resources) within or associated with the distributed computing system. In some cases, the management software includes data collection software for obtaining and providing information about specific components of the distributed computing system. For example, the management software may use hard-coded software (e.g., drivers) to gather configuration information and/or other data about a component, e.g., a storage disk or processor. However, since data collection functions in management software are generally hard-coded for each managed component, such data collection mechanisms are generally inefficient, cumbersome, and/or error-prone.
Methods, systems, and computer readable media for performing metadata-driven data collection are disclosed. In some examples, a method includes receiving a request for system status data for components of a distributed computing system while the distributed computing system is in operation. The request includes metadata specifying a data collection sequence for collecting component-level system status data. The components include compute components, network components, and storage components. The method includes obtaining, using the metadata, the component-level system status data by querying protocol-based data collectors in an order, one after the other, as specified by the data collection sequence specified by the metadata. The method includes assembling the component-level system status data into assembled status data and storing the assembled status data in memory and/or a repository.
FIG. 1 is a block diagram illustrating two distributed computing systems;
FIG. 2 is a block diagram of the example data collection engine;
FIG. 3 is a diagram illustrating a portion of example metadata specifying a data collection sequence; and
Management software for managing a distributed computing system can, in some cases, handle data collection using software agents and/or drivers for each component being managed. Each software agent and/or driver is designed to communicate with an application programming interface (API) associated with the component, to collect data about the component, and to store the collected data in a database. Unfortunately, in some systems, the software agent and/or driver, including the type of data to be collected and instructions for how to collect the data, are hard-coded. To support any new data or metric for a component, a corresponding software agent and/or driver will generally require software updates and/or code changes.
Hard-coded data collection techniques are generally inefficient and cumbersome to maintain and, further, generally lack scalability. This specification describes methods, systems, and computer readable media for implementing a metadata-driven data collection engine that overcomes one or more of these issues. The data collection engine is programmed to obtain, using metadata, component-level system status data by querying protocol-based data collectors in an order, one after the other, as specified by a data collection sequence specified by the metadata. Specifying a data collection sequence can provide one or more of various advantages, such as implementing data collectors that are dependent on the execution of other data collectors and implementing data assembly that builds objects from component-level system status data as the data collection sequence is executed.
FIG. 1 is a block diagram illustrating two distributed computing systems 100 and 150. The first distributed computing system 100 is shown in further detail and will be described further below. The second distributed computing system 150 may be configured similarly to the first distributed computing system 100 and is shown to illustrate that a client computing system 160 may communicate with multiple distributed computing systems over a data communications network 170.