IP Library Patent Application 16452514
Patent Application
App. No. 16/452,514

METHOD FOR SYNCHRONIZATION OF REPOSITORY DATA USING DATA CRITERIA

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 None
App. No.
16/452,514
Abstract

In an embodiment, a source repository system sends an ending timestamp to determine the range of data that will be obtained from the source repository system. In an embodiment, data from the source repository system is grouped in clusters of data items for transferring the data to a target repository. In an embodiment, the clusters of data containing the data conform to rules including timestamp and identifiers of data in the grouping of data in a cluster.

Claims (71)

1 . A method of transferring data from a source repository to a target repository, comprising:

issuing, to the source repository, a series of queries to retrieve a corresponding series of pages from the source repository;

wherein each query in the series of queries retrieves a distinct page of data from the source repository;

wherein every page, in the series of pages, contains data associated with values in a respective range defined by a respective starting value and a respective ending value;

wherein the respective range associated with each page of the series of pages is different than the respective range associated with each other page of the series of pages; and

loading data contained in the series of pages into the target repository.

2 . The method of claim 1 , wherein loading data from the series of pages into the target repository comprises:

loading the data contained in the series of pages from the source repository into a staging repository; and

loading the data contained in the series of pages from the staging repository to the target repository.

3 . The method of claim 2 , further comprising, responsive to loading the data contained in the series of pages from the staging repository to the target repository, deleting the data contained in the series of pages from the staging repository.

4 . The method of claim 1 , further comprising:

prior to issuing the series of queries, obtaining from the source repository a particular value that corresponds to a time of a most recently performed transfer operation;

determining the starting value of a first page in the series of pages based on the particular value; and

after issuing the series of queries, updating the particular value in the source repository to reflect the ending value of a last page in the series of pages.

5 . The method of claim 1 , wherein:

the steps of issuing and loading are performed by a data transfer system;

the method further comprises receiving, by the data transfer system, a maximum page threshold;

while the data transfer system is issuing the series of queries, the number of queries reaches the maximum page threshold before all new data has been retrieved from the source repository; and

the step of issuing the series of queries is performed, by the data transfer system, until the number of queries in the series of queries reaches the maximum page threshold.

6 . The method of claim 1 , wherein issuing the series of queries comprises issuing queries that only retrieve data that has changed or inserted in the source repository after completion of a most recent transfer operation.

7 . The method of claim 1 , wherein:

the source repository includes a plurality of data items;

each data item of the plurality of data items is associated with a unique identifier; and

each page, in the series of pages, contains only data items, of the plurality of data items, that are associated with unique identifiers that fall within the respective range of the page.

8 . The method of claim 1 , wherein:

the method further comprises receiving a maximum page size; and

issuing the series of queries comprises constructing each query to retrieve a page of data items that does not exceed the maximum page size.

9 . The method of claim 1 , wherein:

loading data contained in the series of pages into the target repository comprises:

loading each page in the series of pages into the target repository; and

wherein loading a particular page in the series of pages includes:

loading one or more data items from an end of a previous page,

loading the items contained in the particular page, and

loading one or more data items from a start of a subsequent page.

10 . The method of claim 9 , wherein:

loading data contained in the series of pages into the target repository further comprises:

after loading a particular page in the series of pages, determining that each of the items in the particular page is properly loaded into the target repository; and

the method further comprising, in response to determining that one or more particular data items contained in the particular page are not properly loaded into the target repository, including the one or more particular data items in the subsequent page for loading into the target repository.

11 . The method of claim 1 , wherein:

the data comprising each page of the series of pages retrieved from the source repository is in a first data format, and

the method further comprises, prior to loading the data into the target repository, converting the data from the first data format to a second data format.

12 . Computer-readable storage media for transferring data from a source repository to a target repository having computer-executable instructions embodied thereon, wherein, when executed by at least one processor, the computer-executable instructions cause the processor to:

issue, to the source repository, a series of queries to retrieve a corresponding series of pages from the source repository;

wherein each query in the series of queries retrieves a distinct page of data from the source repository;

wherein every page, in the series of pages, contains data associated with values in a respective range defined by a respective starting value and a respective ending value;

wherein the respective range associated with each page of the series of pages is different than the respective range associated with each other page of the series of pages; and

load data contained in the series of pages into the target repository.

13 . The computer-readable storage media of claim 12 , wherein loading data from the series of pages into the target repository comprises:

loading the data contained in the series of pages from the source repository into a staging repository; and

loading the data contained in the series of pages from the staging repository to the target repository.

14 . The computer-readable storage media of claim 13 , comprising computer-executable instructions further causing the processor to, responsive to loading the data contained in the series of pages from the staging repository to the target repository, delete the data contained in the series of pages from the staging repository.

15 . The computer-readable storage media of claim 12 , comprising computer-executable instructions further causing the processor to:

prior to issuing the series of queries, obtain from the source repository a particular value that corresponds to a time of a most recently performed transfer operation;

determine the starting value of a first page in the series of pages based on the particular value; and

after issuing the series of queries, update the particular value in the source repository to reflect the ending value of a last page in the series of pages.

16 . The computer-readable storage media of claim 12 , wherein:

the steps of issuing and loading are performed by a data transfer system;

the computer-executable instructions causing the processor to receive, by the data transfer system, a maximum page threshold;

while the data transfer system is issuing the series of queries, the number of queries reaches the maximum page threshold before all new data has been retrieved from the source repository; and

the step of issuing the series of queries is performed, by the data transfer system, until the number of queries in the series of queries reaches the maximum page threshold.

17 . The computer-readable storage media of claim 12 , wherein issuing the series of queries comprises issuing queries that only retrieve data that has changed or inserted in the source repository after completion of a most recent transfer operation.

18 . The computer-readable storage media of claim 12 , wherein:

the source repository includes a plurality of data items;

each data item of the plurality of data items is associated with a unique identifier; and

each page, in the series of pages, contains only data items, of the plurality of data items, that are associated with unique identifiers that fall within the respective range of the page.

19 . The computer-readable storage media of claim 12 , wherein:

the computer-executable instructions further cause the processor to receive a maximum page size; and

issuing the series of queries comprises constructing each query to retrieve a page of data items that does not exceed the maximum page size.

20 . The computer-readable storage media of claim 12 , wherein:

the data comprising each page of the series of pages retrieved from the source repository is in a first data format, and

the computer-executable instructions further cause the processor to, prior to loading the data into the target repository, convert the data from the first data format to a second data format.

Assignments (12)
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2023
From: TRIPLEPOINT VENTURE GROWTH BDC CORP
To: SISENSE SF, INC.; SISENSE LTD.
Reel/Frame 063980/0047 →
SECURITY INTEREST Recorded Jun 14, 2023
From: SISENSE LTD; SISENSE SF INC.
To: HERCULES CAPITAL, INC.
Reel/Frame 063948/0662 →
RELEASE OF SECURITY INTEREST Recorded Jun 9, 2023
From: COMERICA BANK
To: SISENSE SF, INC.
Reel/Frame 063915/0252 →
SECURITY INTEREST Recorded Sep 24, 2021
From: SISENSE SF, INC.
To: COMERICA BANK
Reel/Frame 057588/0558 →
RELEASE OF SECURITY INTEREST Recorded Sep 24, 2021
From: SILICON VALLEY BANK
To: SISENSE SF, INC.
Reel/Frame 057594/0623 →
RELEASE OF SECURITY INTEREST Recorded Sep 24, 2021
From: SILICON VALLEY BANK, AS AGENT
To: SISENSE SF, INC.
Reel/Frame 057594/0661 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE ADDRESS OF 2 JABOTINSKY RD., RAMAT GAN, ISRAEL 5250501 PREVIOUSLY RECORDED ON REEL 051881 FRAME 0438. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Aug 13, 2020
From: PERISCOPE, INC.
To: SISENSE SF, INC.
Reel/Frame 053489/0345 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 30, 2020
From: SISENSE SF, INC.
To: SILICON VALLEY BANK
Reel/Frame 052267/0282 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 30, 2020
From: SISENSE SF, INC.
To: SILICON VALLEY BANK, AS AGENT
Reel/Frame 052267/0296 →
CHANGE OF NAME Recorded Feb 11, 2020
From: PERISCOPE, INC.
To: SISENSE SF, INC.
Reel/Frame 051881/0438 →
CHANGE OF NAME Recorded Jul 11, 2019
From: PERISCOPE DATA INC.
To: PERISCOPE, INC.
Reel/Frame 049726/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2019
From: SAMAD-YAHAYA, ARIS; MALI, GAURAV; FREIDMAN, JASON; KUHNHAUSEN, ANDREW; SHAW, ROSE; GIMMILLARO, STEFAN; WONG, ELLEN; O'NEILL, TOM; CHIKINDAS, LEON; CASTLE, SCOTT; SHENTRUP, CLAY
To: PERISCOPE DATA INC.
Reel/Frame 049590/0794 →