IP Library › Granted Patent US 11,388,064
Granted Patent B2
US 11,388,064 · App. 17/077,115 · Granted Jul 12, 2022

Prediction based on time-series data

Inventors: Shoujing Li (Redmond, WA); Peng Wang (Bellevue, WA)
Assignee: ServiceNow, Inc.
H04L41/147G06F17/18G06N5/04H04L41/142H04L41/145H04L43/08H04L43/16
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,388,064
App. No.
17/077,115
Granted
Jul 12, 2022
Kind
B2
Abstract

The present approach relates to techniques for efficiently monitoring time-series data for a metric of interest using limited subsets of the time-series data and, based on the modeling, to generate predictions for the metric. Based on the predictions for the metric, one or more actions may be configured to be taken when the predicted value for the metric is outside of a specified range or exceeds a specified threshold.

Claims (55)

1. A system, comprising:

at least one memory configured to store instructions;

at least one processor configured to execute the instructions stored in the memory to cause the system to perform actions comprising:

receiving, from a communicatively coupled client device, a first input indicating a metric associated with a trigger;

receiving, from the client device, a second input indicating a time duration associated with the trigger;

receiving, from the client device, a third input indicating a threshold value associated with the trigger;

receiving, from the client device, a fourth input indicating a trend direction of the metric; and

creating the trigger based on the first, second, third, and fourth inputs, wherein an action of the trigger is configured to be performed in response to (1) a predicted future value of the metric meeting or exceeding the threshold value and (2) the predicted future value of the metric being in accordance with the trend direction of the metric, wherein the predicted future value of the metric is determined based on a regression of time-series data of the metric collected over a current rolling window having the time duration.

2. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

after creating the trigger, receiving, from a communicatively coupled computing device, the time-series data of the metric collected over the current rolling window.

3. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

after creating the trigger, performing the regression of time-series data of the metric collected over the current rolling window to determine the predicted future value of the metric.

4. The system of claim 3 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

receiving one or more regression parameters from a processor of a communicatively coupled computing device, wherein performing the regression comprises parameterizing the regression using the one or more regression parameters.

5. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

after creating the trigger, comparing the predicted future value of the metric to the threshold value and performing the action of the trigger in response to the predicted future value of the metric meeting or exceeding the threshold value.

6. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

after creating the trigger, providing the predicted future value of the metric to a communicatively coupled computing device, wherein the computing device is configured to compare the predicted future value of the metric to the threshold value; and

receiving, from the computing device, an indication that the predicted future value of the metric meets or exceeds the threshold value.

7. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

receiving, from the client device, a fifth input indicating a confidence level threshold value associated with the trigger, wherein the action is triggered to be performed in response to (1) the predicted future value of the metric meeting or exceeding the threshold value and (2) the predicted future value of the metric being in accordance with the trend direction of the metric and (3) a confidence level associated with the predicted future value meeting or exceeding the confidence level threshold value.

8. The system of claim 1 , wherein the at least one processor is configured to execute the instructions to cause the system to perform actions comprising:

updating the current rolling window to incorporate newer observations of the metric and to remove older observations of the metric in the time-series data of the metric.

9. The system of claim 1 , wherein regression comprises a linear regression of the time-series data of the metric.

10. A method, comprising:

receiving a first input indicating a metric associated with a trigger;

receiving a second input indicating a time duration associated with the trigger;

receiving a third input indicating a threshold value associated with the trigger;

receiving a fourth input indicating a confidence level threshold value associated with the trigger;

receiving a fifth input indicating a trend direction of the metric; and

creating the trigger based on the first, second, third, fourth, and fifth inputs, wherein an action of the trigger is performed in response to (1) a predicted future value of the metric meeting or exceeding the threshold value and (2) a confidence level of the predicted future value of the metric meeting or exceeding the confidence level threshold value and (3) the predicted future value of the metric being in accordance with the trend direction of the metric, wherein the predicted future value of the metric is determined based on a regression of time-series data of the metric collected over a current rolling window having the time duration.

11. The method of claim 10 , comprising:

before receiving the first input, providing, to a client device, a graphical user interface (GUI) that includes user interface elements, wherein a respective user interface element of the GUI is configured to receive each of the first, second, third, and fourth inputs from a user of the client device.

12. The method of claim 10 , comprising, after creating the trigger:

receiving the time-series data of the metric collected over the current rolling window; and

performing the regression of time-series data of the metric collected over the current rolling window to determine the predicted future value of the metric.

13. The method of claim 12 , wherein receiving the time-series data comprises accessing the time-series data of the metric from a communicatively coupled database.

14. The method of claim 12 , comprising:

providing the predicted future value of the metric to a communicatively coupled computing device that compares the predicted future value of the metric to the threshold value and compares the confidence level of the predicted future value of the metric to the confidence level threshold value; and

receiving, from the computing device, an indication that (1) the predicted future value of the metric meets or exceeds the threshold value and that (2) the confidence level meets or exceeds the confidence level threshold value.

15. A non-transitory, computer-readable medium storing instructions executable by a processor of a computing system, the instructions comprising instructions to:

receive a first input indicating a metric associated with a trigger;

receive a second input indicating a time duration associated with the trigger;

receive a third input indicating a threshold value associated with the trigger;

receive a fourth input indicating a confidence level threshold value associated with the trigger;

receive a fifth input indicating a trend direction of the metric; and

creating the trigger based on the first, second, third, fourth, and fifth inputs, wherein an action of the trigger is performed in response to (1) a predicted future value of the metric meeting or exceeding the threshold value and (2) a confidence level of the predicted future value of the metric meeting or exceeding the confidence level threshold value and (3) the predicted future value of the metric being in accordance with the trend direction of the metric, wherein the predicted future value of the metric is determined based on a regression of time-series data of the metric collected over a current rolling window having the time duration.

16. The medium of claim 15 , wherein the instructions comprise instructions to:

before receiving the first input, provide a graphical user interface (GUI), wherein the GUI is configured to receive the first, second, third, fourth, and fifth inputs.

17. The medium of claim 15 , wherein the instructions comprise instructions to, after creating the trigger:

receive the time-series data of the metric collected over the current rolling window;

perform the regression of time-series data of the metric collected over the current rolling window to determine the predicted future value of the metric and the confidence level of the predicted future value of the metric; and

perform the action of the trigger in response to (1) the predicted future value of the metric meeting or exceeding the threshold value and (2) the confidence level of the predicted future value of the metric meeting or exceeding the confidence level threshold value and (3) the predicted future value of the metric being in accordance with the trend direction of the metric.

18. The medium of claim 17 , wherein the instructions comprise instructions to:

receive one or more regression parameters, wherein performing the regression comprises parameterizing a linear regression using the one or more regression parameters.

Continuity (2)
Continuation 15970628 · May 3, 2018
Related Publication 20210044489A1 · Feb 11, 2021