Generating compact data structures for monitoring data processing performance across high scale network infrastructures
AssigneeDatadog, Inc.
InventorsCharles-Philippe Masson, Jee Eun Rim, Homin Lee
Life of this patent
Estimating the term…
Abstract
A compact data structure generation engine can be used to generate a compact data structure that represents performance data for high-scale networks. The compact data structure representing the performance data can be used to monitor the operation performed on or by a computer system to identify potentially anomalous conditions. In response, a corrective action can be taken to address the issue. This can be useful, for example, in improving the efficiency, effectiveness, and reliability of the computer system during operation.
Claims20
A method of obtaining performance metrics for one or more computing devices, the method comprising:
- receiving a plurality of performance metric values that represent a performance metric associated with operations performed by one or more computing devices;
- generating a compact data structure, wherein generating the compact data structure comprises:
- for each performance metric value in the plurality of performance metric values,
- identifying whether the performance metric value is within an existing defined range,
- when the performance metric value is within the existing defined range,
- incrementing an existing count value characterizing a number of performance metric values within the existing defined range, or
- when the performance metric value is not within any existing defined range,
- defining, based on the performance metric value, a new range, wherein boundaries of the new range are set as a second function of the performance metric value and a predefined accuracy value, and wherein an approximation of the performance metric value associated with the new range is within a threshold based on the predefined accuracy value,
- incrementing a new count value characterizing a number of performance metric values within the new range;
- and
- storing the compact data structure in an electronic data storage device with less memory than would be required to store the plurality of performance metric values in a sequence.
A system for obtaining performance metrics for one or more computing devices, the system comprising:
- at least one processor;
- and
- a memory storing instructions, that, when executed by the at least one processor, cause the at least one processor to perform operations comprising:
- receiving a plurality of performance metric values that represent a performance metric associated with operations performed by one or more computing devices;
- generating a compact data structure, wherein generating the compact data structure comprises:
- for each performance metric value in the plurality of performance metric values,
- identifying whether the performance metric value is within an existing defined range,
- when the performance metric value is within the existing defined range,
- incrementing an existing count value characterizing a number of performance metric values within the existing defined range, or
- when the performance metric value is not within any existing defined range,
- defining, based on the performance metric value, a new range, wherein boundaries of the new range are set as a second function of the performance metric value and a predefined accuracy value, and wherein an approximation of the performance metric value associated with the new range is within a threshold based on the predefined accuracy value,
- incrementing a new count value characterizing a number of performance metric values within the new range;
- and
- storing the compact data structure in an electronic data storage device with less memory than would be required to store the plurality of performance metric values in a sequence.
One or more non-transitory computer readable media storing instructions for obtaining performance metrics for one or more computing devices, the instructions, when executed by at least one processor, causing the at least one processor to perform operations comprising:
- receiving a plurality of performance metric values that represent a performance metric associated with operations performed by one or more computing devices;
- generating a compact data structure, wherein generating the compact data structure comprises:
- for each performance metric value in the plurality of performance metric values,
- identifying whether the performance metric value is within an existing defined range,
- when the performance metric value is within the existing defined range,
- incrementing an existing count value characterizing a number of performance metric values within the existing defined range, or
- when the performance metric value is not within any existing defined range,
- defining, based on the performance metric value, a new range, wherein boundaries of the new range are set as a second function of the performance metric value and a predefined accuracy value, and wherein an approximation of the performance metric value associated with the new range is within a threshold based on the predefined accuracy value,
- incrementing a new count value characterizing a number of performance metric values within the new range;
- and
- storing the compact data structure in an electronic data storage device with less memory than would be required to store the plurality of performance metric values in a sequence.
Dependencies are inferred from the claim text.