Methods and systems for data synchronization

US11615071B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11615071-B2
Application numberUS-202016875304-A
CountryUS
Kind codeB2
Filing dateMay 15, 2020
Priority dateOct 24, 2019
Publication dateMar 28, 2023
Grant dateMar 28, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, systems, and apparatus, including computer programs encoded on computer storage media for data synchronization are provided. One of the methods includes: receiving, from a client device displaying a spreadsheet interface, a query for data; identifying, from one or more datasets in a data store, a plurality of data items responsive to the query; sending, to the client device, a plurality of data entries for display in a plurality of cells of the spreadsheet interface, wherein the data entries correspond to the identified data items; receiving, from the client device, information associated with one or more changes to one or more of the data entries, wherein the one or more changes are created based on one or more user inputs in the spreadsheet interface; and updating, in the data store based on the one or more changes, one or more of the data items corresponding to the one or more changed data entries.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system comprising: one or more processors; and a memory storing instructions that, when executed by the one or more processors, cause the system to perform operations comprising: receiving, from a first client device displaying a first spreadsheet interface, a query for data, by a data processing component; identifying, by the data processing component, from one or more datasets in a data store, a plurality of first data items responsive to the query; sending, by a data transfer component, to the first client device, a plurality of data entries for display in a plurality of cells of the first spreadsheet interface, wherein the data entries correspond to the identified data items; detecting, by a data monitoring component, an event associated with a first change to first data entries of the data entries made at the first client device; in response to detecting the event, receiving, by a data synchronization component, a notification of the event from the data monitoring component in response to receiving the notification of the event: retrieving, by the data synchronization component, from a version index associated with the identified data items, a first version identifier; determining, by the data synchronization component, a second version identifier associated with the first data entries, wherein the first change causes an update to the second version identifier; and detecting, by the data synchronization component, the first change based on a difference between the first version identifier and the second version identifier; synchronizing, by the data synchronization component, the first change with a corresponding subset of the identified first data items in the data store; in response to synchronizing the first change, updating, by the data synchronization component, the first version identifier; generating, by the data transfer component, a new dataset comprising the changed first data entries; transmitting, by the data transfer component, the new dataset to the data store receiving, from the data monitoring component, a second change, of one or more second data entries, from a second client device operating a second spreadsheet interface; receiving, by the data synchronization component, a notification of the second change from the data monitoring component; synchronizing, by the data synchronization component, the second change to one or more corresponding second data items in the data store; modifying, by the data synchronization component, the updated first version identifier in response to synchronizing the second change of the data item; comparing, by the data synchronization component, the modified and updated first version identifier to the updated second version identifier; and in response to detecting a difference between the modified and updated first version identifier and the updated second version identifier: updating, by the data synchronization component, a corresponding second data entry at the first spreadsheet interface upon detecting an access, by the first client device, at the corresponding second data entry; and updating, by the data synchronization component, the corresponding second data entry at a third spreadsheet interface operated by a third client device upon detecting an access, by the third client device, at the corresponding second data entry. 2. The system of claim 1 , wherein the plurality of data items comprise information associated with a plurality of objects, the information for each of the objects comprising: one or more object identifiers; one or more object properties; or one or more related objects. 3. The system of claim 2 , wherein the query comprises: one or more keywords; one or more object types; one or more filters; one or more property types; or one or more sorting criteria. 4. The system of claim 1 , wherein the operations further comprise: receiving, from the first client device, information associated with the first change to the first data entries, wherein the first change is created based on one or more user inputs in the first spreadsheet interface; storing the information associated with the first change to the first data entries; receiving a user input confirming the first change; and updating the one or more of the first data items in response to the user input confirming the first change. 5. The system of claim 1 , wherein the operations further comprise: detecting a triggering event associated with the first spreadsheet interface; identifying one or more different data entries in the first spreadsheet interface that depend on the one or more of the first data entries; and updating, in response to the detecting the triggering event, the one or more different data entries. 6. The system of claim 5 , wherein the triggering event comprises: display of the first spreadsheet interface on the first client device; or a user input for refreshing the first spreadsheet interface. 7. A computer-implemented method, implemented by a computing system, the method comprising: receiving, from a first client device displaying a first spreadsheet interface, a query for data, by a data processing component; identifying, by the data processing component, from one or more datasets in a data store, a plurality of first data items responsive to the query; sending, by a data transfer component, to the first client device, a plurality of data entries for display in a plurality of cells of the first spreadsheet interface, wherein the data entries correspond to the identified data items; detecting, by a data monitoring component, an event associated with a first change to first data entries of the data entries made at the first client device; in response to detecting the event, receiving, by a data synchronization component, a notification of the event from the data monitoring component in response to receiving the notification of the event: retrieving, by the data synchronization component, from a version index associated with the identified data items, a first version identifier; determining, by the data synchronization component, a second version identifier associated with the first data entries, wherein the first change causes an update to the second version identifier; and detecting, by the data synchronization component, the first change based on a difference between the first version identifier and the second version identifier; synchronizing, by the data synchronization component, the first change with a corresponding subset of the identified first data items in the data store; in response to synchronizing the first change, updating, by the data synchronization component, the first version identifier; generating, by the data transfer component, a new dataset comprising the changed first data entries; transmitting, by the data transfer component, the new dataset to the data store receiving, from the data monitoring component, a second change, of one or more second data entries, from a second client device operating a second spreadsheet interface; receiving, by the data synchronization component, a notification of the second change from the data monitoring component synchronizing, by the data synchronization component, the second change to one or more corresponding second data items in the data store; modifying, by the data synchronization component, the updated first version identifier in response to synchronizing the second change of the data item; comparing, by the data synchronization component, the modified and updated first version identifier to the updated second version identifier; and in response to detecting a difference between the modified and updated first version identifier and the updated second ver

Assignees

Inventors

Classifications

  • G06F16/27Primary

    Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477) · CPC title

  • Ensuring data consistency and integrity · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11615071B2 cover?
Methods, systems, and apparatus, including computer programs encoded on computer storage media for data synchronization are provided. One of the methods includes: receiving, from a client device displaying a spreadsheet interface, a query for data; identifying, from one or more datasets in a data store, a plurality of data items responsive to the query; sending, to the client device, a pluralit…
Who is the assignee on this patent?
Palantir Technologies Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/27. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 28 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).