IP Library Granted Patent US 10,078,664
Granted Patent B2
US 10,078,664 · App. 14/733,693 · Granted Sep 18, 2018

Searching for and finding data across industrial time series data

Inventors: Steven Matt Gustafson (Niskayuna, NY); Abha Moitra (Scotia, NY); Kareem Sherif Aggour (Niskayuna, NY); Luis Babaji Ng Tari (Glenville, NY); Aisha Yousuf (Niskayuna, NY)
G06F17/30448G06F17/30353G06F17/30477G06F17/30548G06Q50/00
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 10,078,664
App. No.
14/733,693
Granted
Sep 18, 2018
Kind
B2
Abstract

A system and method for searching for and finding data across industrial time-series data is disclosed. A computer system receives a search query from a client system. The computer system accesses a database including a plurality of stored time-series data sets. For each stored time-series data set, the computer system determines whether the stored time-series data set includes one or more sections that match the received search query. In accordance with a determination that two or more of stored time-series data sets include at least one section that matches the received search query, the computer system determines whether the matching sections in each stored time-series data set have overlapping time periods. In accordance with a determination that the matching sections in each time-series data set have overlapping time periods, the computer system identifies a particular event that occurred during the overlapping time periods.

Claims (45)

1. A method comprising:

receiving, using one or more hardware processors, a search query;

accessing, using one or more hardware processors, a database including a plurality of stored time-series data sets associated with a computer system, wherein the plurality of stored time-series data sets represent different tracking variables from each other;

producing, using one or more hardware processors, transformed time-series data sets by transforming each stored time-series data set to a series of discrete symbols, wherein transforming the set of time-series data set to a series of discrete symbols further comprises:

grouping the data included in the set of time-series data set into a series of time windows;

averaging the data values in each respective time window;

for each time window, selecting a discrete symbol that best matches the average data value for a respective time window; and

replacing the average data value with the selected discrete symbol;

for each stored time-series data set, determining, using one or more hardware processors, whether the stored time-series data set includes one or more sections that match the received search query by matching a symbolic data pattern of the search query to the series of discrete symbols transformed from the sets of time-series data sets;

in accordance with a determination that two or more of the stored time-series data sets include at least one section that matches the received search query, determining, using one or more hardware processors, whether the matching sections in each stored time-series data set have overlapping time periods based on time data included in each stored time-series data set; and

in accordance with a determination that the matching sections in each time-series data set have overlapping time periods, identifying, using one or more hardware processors, a particular event that occurred during the overlapping time periods.

2. The method of claim 1 , further comprising normalizing, using one or more hardware processors, the time-series data set in each stored time-series set.

3. The method of claim 1 , wherein two or more of the time-series data sets represent different measurements of the same system over the same time period.

4. The method of claim 1 , wherein each time window represents a fixed amount of time.

5. The method of claim 1 , wherein the received query is received as plain text.

6. The method of claim 1 , wherein the received query is received as the symbolic data pattern.

7. The method of claim 6 , wherein identifying one or more portions of the transformed time-series data set that match the received query further comprises matching the received symbolic data pattern to the transformed time-series data sets.

8. The method of claim of claim 5 , further comprising modifying, using one or more hardware processors, the received query plain text to the symbolic data pattern, the symbolic data pattern comprising a series of discrete symbols.

9. An electronic device comprising:

a reception module, using at least one processor of a machine, to receive a search query from a client system;

an accessing module, using at least one processor of a machine, to access a database including a plurality of stored time-series data sets associated with a computer system, wherein the plurality of stored time-series data sets represent different tracking variables from each other;

a transformation module, using at least one processor of a machine, to produce transformed time-series data sets by transforming each stored set of time-series data set to a series of discrete symbols;

a determination module, using at least one processor of a machine, to, for each stored time-series data set, determine whether the stored time-series data set includes one or more sections that match the received search query by matching a symbolic data pattern of the search query to the series of discrete symbols transformed from the sets of time-series data sets, wherein transforming the set of time-series data set to a series of discrete symbols further comprises:

grouping the data included in the set of time-series data set into a series of time windows;

averaging the data values in each respective time window;

for each time window, selecting a discrete symbol that best matches the average data value for a respective time window; and

replacing the average data value with the selected discrete symbol;

a matching module, using at least one processor of a machine, to, in accordance with a determination that two or more of the stored time-series data sets include at least one section that matches the received search query, determine whether the matching sections in each stored time-series data set have overlapping time periods based on time data included in each stored time-series data set; and

an identification module, using at least one processor of a machine, to, in accordance with a determination that the matching sections in each time-series data set have overlapping time periods, identify a particular event that occurred during the overlapping time periods.

10. The system of claim 9 , further comprising a normalization module, using at least one processor of a machine, to normalize the time-series data set in each stored time-series data set.

11. The system of claim 9 , wherein two or more of the time-series data sets represent different measurements of the same system over the same time period.

12. The system of claim 9 , wherein the received query is received as plain text.

13. A non-transitory computer-readable storage medium storing instructions that, when executed by the one or more processors of a machine, cause the machine to perform operations comprising:

receiving a search query;

accessing a database including a plurality of stored time-series data sets associated with a computer system, wherein the plurality of stored time-series data sets represent different tracking variables from each other;

producing transformed time-series data sets by transforming each stored time-series data set to a series of discrete symbols, wherein transforming the set of time-series data set to a series of discrete symbols further comprises:

grouping the data included in the set of time-series data set into a series of time windows;

averaging the data values in each respective time window;

for each time window, selecting a discrete symbol that best matches the average data value for a respective time window; and

replacing the average data value with the selected discrete symbol;

for each stored time-series data set, determining, using one or more hardware processors, whether the stored time-series data set includes one or more sections that match the received search query by matching a symbolic data pattern of the search query to the series of discrete symbols transformed from the sets of time-series data sets;

in accordance with a determination that two or more of the stored time-series data sets include at least one section that matches the received search query, determining whether the matching sections in each stored time-series data set have overlapping time periods based on time data included in each stored time-series data set; and

in accordance with a determination that the matching sections in each time-series data set have overlapping time periods, identifying a particular event that occurred during the overlapping time periods.

14. The non-transitory computer-readable storage medium of claim 13 , further comprising normalizing the time-series data set in each time-series set.

15. The non-transitory computer-readable storage medium of claim 13 , wherein two or more of the time-series data sets represent different measurements of the same system over the same time period.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2023
From: GENERAL ELECTRIC COMPANY
To: GE DIGITAL HOLDINGS LLC
Reel/Frame 065612/0085 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2015
From: GUSTAFSON, STEVEN MATT; MOITRA, ABHA; AGGOUR, KAREEM SHERIF; NG TARI, LUIS BABAJI; YOUSUF, AISHA
To: GENERAL ELECTRIC COMPANY
Reel/Frame 036364/0914 →
Continuity (2)
Provisional Application 62088328 · Dec 5, 2014
Related Publication 20160162543A1 · Jun 9, 2016