# US 12,001,435 B2 · Managing database offsets with time series

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,435 B2
- Document ID: US12001435B2
- Status: Granted
- Kind: B2
- Application number: 17/536,705
- Filed: 2021-11-29
- Published: 2022-03-17
- Granted: 2024-06-04
- Earliest claimed: 2019-04-24
- Assignees: eBay Inc.
- Applicants: eBay Inc.
- Inventors: Connie W. Yang; Daniel Graham Douglas
- Web page: https://patentgrep.com/patent/US12001435B2

## CPC

- G06F 16/24568: {Data stream processing; Continuous queries}
- G06F 16/2228: {Indexing structures}
- G06F 16/2477: {Temporal data queries}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods of improving the functioning of a streaming platform system by managing database change stream offsets using a time series database are disclosed. In some example embodiments, a computer system retrieves an offset value from a plurality of offset values stored in a time series database, with the plurality of offset values being indexed in the time series database in time order, and the retrieved offset value being retrieved using a time parameter, and then the computer system transmits a data request to a stream-processing platform, with the data request comprising the retrieved offset value, and the data request being operable to retrieve a data record stored in association with the retrieved offset value in a storage layer of the stream-processing platform using the offset value.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving, by one or more hardware processors, a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing, by the one or more hardware processors, the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying, by the one or more hardware processors, an offset value from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the one or more offset values correspond to the particular time; and
transmitting, by the one or more hardware processors, a data request to the stream-processing platform, the data request comprising the offset value, and the data request being operable to retrieve a data record stored in association with the offset value in the storage layer of the stream-processing platform using the offset value.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the offset value.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein the particular time is a single point in time.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the particular time is a time range including a start time and an end time.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the data record comprises change data indicating at least one change to content of an online site.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1 further comprising for each one of the plurality of offset values, storing, by the one or more hardware processors, the one of the plurality of offset values in the time series database.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the plurality of offset values is indexed in the time series database in time order.

### Claim 9

A system comprising:
at least one hardware processor; and
a non-transitory memory device storing executable instructions that, when executed, cause the at least one hardware processor to perform to perform operations comprising:
receiving a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying an offset value from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the offset value corresponds to the particular time; and
transmitting a data request to the stream-processing platform, the data request comprising the offset value, and the data request being operable to retrieve a data record stored in association with the offset value in the storage layer of the stream-processing platform using the offset value.

### Claim 10 (depends on 9)

The system of claim 9, wherein the operations further comprise:
for each one of the plurality of offset values, storing the one of the plurality of offset values in the time series database.

### Claim 11 (depends on 9)

The system of claim 9, wherein the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the offset value.

### Claim 12 (depends on 9)

The system of claim 9, wherein the particular time is a single point in time.

### Claim 13 (depends on 9)

The system of claim 9, wherein the particular time is a time range including a start time and an end time.

### Claim 14 (depends on 9)

The system of claim 9, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.

### Claim 15 (depends on 9)

The system of claim 9, wherein the data record comprises change data indicating at least one change to content of an online site.

### Claim 16

A non-transitory memory device storing a set of instructions that, when executed by at least one processor, causes the at least one processor to perform operations comprising:
receiving a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying one or more offset values from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the one or more offset values correspond to the particular time; and
displaying the one or more offset values as a metric of the data stream.

### Claim 17 (depends on 16)

The non-transitory memory device of claim 16, wherein the series of data records include change data.

### Claim 18 (depends on 16)

The non-transitory memory device of claim 16, wherein the metric of the data stream is of a change stream processing application.

### Claim 19 (depends on 16)

The non-transitory memory device of claim 16, wherein the metric of the data stream is a server metric.

### Claim 20 (depends on 16)

The non-transitory memory device of claim 16, wherein the plurality of offset values is indexed in the time series database in time order.
