Systems and methods for data analysis and visualization and managing data conflicts

US11269914B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11269914-B2
Application numberUS-202016883627-A
CountryUS
Kind codeB2
Filing dateMay 26, 2020
Priority dateJul 10, 2017
Publication dateMar 8, 2022
Grant dateMar 8, 2022

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.

Systems and methods are provided for generating reports reflecting a visualization of, e.g., a dataset on which data analysis has been performed. The data analysis performed on the dataset may be an aggregation of data analysis functionality provided by applications or tools. Dataset visualization is realized in a workspace implemented by a separate application or tool. Potential conflicts regarding updating one or more elements of the dataset are reconciled by implementing a dual operational transform system and method. A global state of the dataset may be determined by a first operational transform system and method, while a local state of the dataset may be determined by a second operational transform system and method. The local state of the dataset may be updated through operational transforms exchanged between the first and second operational transform systems that align the local state of the dataset with the global state of the dataset.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method being implemented by a computing system including one or more physical processors and storage media storing machine-readable instructions, the method comprising: receiving, at a server, from a first client, an indication of a first operation performed on a dataset at a first instance of a workspace, the first operation corresponding to a first state of the dataset; determining, at the server, that a second operation has been performed on the dataset by a second client at a second instance of the workspace, the second operation corresponding to a second state of the dataset; determining, at the server, that the second operation corresponds to a global update of the dataset; and sending, by the server, an indication of the second operation to the first client to enable the first client to synchronize the first instance of the workspace with the global update of the dataset. 2. The method of claim 1 , further comprising: executing, at the server, the first operation on the dataset prior to execution of the second operation on the dataset; determining, at the server, that the second state of the dataset is a state prior to the first state of the dataset; revoking, at the server, execution of the first operation on the dataset; executing, at the server, the second operation on the dataset; and re-executing, at the server, the first operation on the dataset after executing the second operation on the dataset. 3. The method of claim 1 , further comprising: applying, at the server, an operational transformer to the first operation to obtain a first transformed operation associated with the first state of the dataset; and sending, by the server, an indication of the first transformed operation to the second client to enable a global update of the second instance of the workspace based at least in part on the first transformed operation. 4. The method of claim 3 , further comprising receiving, at the server, from the first client, a revision identifier that reflects the first state, wherein the first state is a latest state of a front-end transform engine executing at the first client, and wherein applying the operational transformer to the first operation to obtain the first transformed operation comprises applying the operational transformer based at least in part on the revision identifier. 5. The method of claim 3 , further comprising: receiving, at the server, from a third client, an indication of a third operation performed on the dataset at a third instance of the workspace, the third operation corresponding to a third state of the dataset; applying, at the server, the operational transformer to the third operation to obtain a second transformed operation associated with the third state of the dataset; and applying a reducer function to the first state of the dataset and the third state of the dataset to obtain a current state of the dataset. 6. The method of claim 5 , further comprising sending, by the server, the second transformed operation to each of the first client, the second client, and the third client to enable a global update of the first instance of the workspace, the global update of the second instance of the workspace, and a global update of the third instance of the workspace in accordance with the current state of the dataset. 7. The method of claim 5 , wherein applying, at the server, the operational transformer to each of the first operation and the third operation to obtain the first transformed operation and the second transformed operation, respectively, comprises applying, at the server, the operational transformer sequentially to the first operation and the third operation in an order in which the first operation and the third operation are received from the first client and the third client, respectively. 8. The method of claim 5 , wherein applying, at the server, the operational transformer to each of the first operation and the third operation to obtain the first transformed operation and the second transformed operation, respectively, comprises applying, at the server, the operational transformer based at least in part on respective priorities of execution of the first operation and the third operation. 9. The method of claim 1 , wherein the workspace is a workspace user interface (UI) including a shared UI element represented in each of the first instance of the workspace UI and the second instance of the workspace UI, wherein the first operation is a first instruction updating, at least in part, the shared UI element represented in the first instance of the workspace UI, and the second operation is a second instruction updating, at least in part, the shared UI element represented in the second instance of the workspace UI. 10. The method of claim 9 , where each of the first instruction and the second instruction comprises at least one of: updating a size of the shared UI element, updating a location of the shared UI element in the workspace UI, or updating information displayed by the shared UI element. 11. A system, comprising: at least one processor; and at least one memory storing computer-executable instructions, wherein the at least one processor is configured to access the at least one memory and execute the computer-executable instructions to: receive, from a first client, an indication of a first operation performed on a dataset at a first instance of a workspace, the first operation corresponding to a first state of the dataset; determine that a second operation has been performed on the dataset by a second client at a second instance of the workspace, the second operation corresponding to a second state of the dataset; determine that the second operation corresponds to a global update of the dataset; and send an indication of the second operation to the first client to enable the first client to synchronize the first instance of the workspace with the global update of the dataset. 12. The system of claim 11 , wherein the at least one processor is further configured to execute the computer-executable instructions to: execute the first operation on the dataset prior to execution of the second operation on the dataset; determine that the second state of the dataset is a state prior to the first state of the dataset; revoke execution of the first operation on the dataset; execute the second operation on the dataset; and re-execute the first operation on the dataset after executing the second operation on the dataset. 13. The system of claim 11 , wherein the at least one processor is further configured to execute the computer-executable instructions to: apply an operational transformer to the first operation to obtain a first transformed operation associated with the first state of the dataset; and send an indication of the first transformed operation to the second client to enable a global update of the second instance of the workspace based at least in part on the first transformed operation. 14. The system of claim 13 , wherein the at least one processor is further configured to execute the computer-executable instructions to: receive, from the first client, a revision identifier that reflects the first state, wherein the first state is a latest state of a front-end transform engine executing at the first client, and wherein the at least one processor is configured to apply the operational transformer to the first operation to obtain the first transformed operation by executing the computer-executable instructions to apply the operational transformer based at least in part on the revision identifier. 15. The

Assignees

Inventors

Classifications

  • G06F16/26Primary

    Visual data mining; Browsing structured data · CPC title

  • Concurrency control (transaction processing G06F9/466) · CPC title

  • Presentation of query results · CPC title

  • Ensuring data consistency and integrity · CPC title

  • Updates performed during online database operations; commit processing · 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 US11269914B2 cover?
Systems and methods are provided for generating reports reflecting a visualization of, e.g., a dataset on which data analysis has been performed. The data analysis performed on the dataset may be an aggregation of data analysis functionality provided by applications or tools. Dataset visualization is realized in a workspace implemented by a separate application or tool. Potential conflicts rega…
Who is the assignee on this patent?
Palantir Technologies Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/26. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 08 2022 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).