IP Library Granted Patent US 10,970,049
Granted Patent B2
US 10,970,049 · App. 16/262,150 · Granted Apr 6, 2021

Code execution and data processing pipeline

Inventors: Eliot Ball (London, GB); Matthew Jenny (London, GB); Nicholas Gates (London, GB); Erin Price-Wright (London, GB); Kamran Khan (London, GB); Gregory Manis (Brooklyn, NY); Emeline Wu (San Francisco, CA)
Assignee: Palantir Technologies Inc.
G06F8/34G06F3/0482G06F3/04847G06F3/0685G06F8/33G06F9/445
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,970,049
App. No.
16/262,150
Granted
Apr 6, 2021
Kind
B2
Abstract

A method performed by one or more processors comprises displaying code, receiving user selection of a portion of code, determining one or more settable data items, generating a template, displaying the template, receiving a user input value for the settable data items by the template, and executing the code with each of the settable data items set to the received user input value. A data processing pipeline is configured to pass a data item to a first transformer to provide first transformed data, store the first transformed data in a temporary memory, write the first transformed data to the data storage system, and pass the transformed data from the temporary memory to a second transformer.

Claims (44)

1. A method performed by one or more processors, the method comprising:

generating a data transformation template by:

displaying a user interface depicting data transformation code including a plurality of code segments, the data transformation code configured to transform data items;

receiving a user selection of a first code segment of the data transformation code;

determining and storing a name or a reference to each of one or more settable items from the first code segment;

generating the data transformation template, wherein the data transformation template indicates the one or more settable items from the first code segment; and

storing the generated data transformation template in a markup language;

initiating transformation of data items from a data source by:

determining the data source storing the data items;

dynamically displaying a user interface including the stored data transformation template, the user interface allowing setting of the one or more settable items;

receiving, via the user interface, a user input value for each of the one or more settable items; and

executing the data transformation code with the one or more settable items set to the corresponding received user input value on the data items from the data source.

2. The method of claim 1 , further comprising receiving multiple user selections and using the user selections to determine the one or more settable items.

3. The method of claim 2 , wherein at least one of the settable items is set, during the executing, by changing text characters in the data transformation code.

4. The method of claim 2 , wherein at least one of the settable items is set, during the executing, by application programming interface calls.

5. A computing system comprising:

a hardware computer processor;

a non-transitory computer readable medium having software instructions stored thereon, the software instructions executable by the hardware computer processor to cause the computing system to perform operations comprising:

generating a data transformation template by:

displaying a user interface depicting data transformation code including a plurality of code segments, the data transformation code configured to transform data items;

receiving a user selection of a first code segment of the data transformation code;

determining and storing a name or a reference to each of one or more settable items from the first code segment;

generating the data transformation template, wherein the data transformation template indicates the one or more settable items from the first code segment; and

storing the generated data transformation template in a markup language;

initiating transformation of data items from a data source by:

determining the data source storing the data items;

dynamically displaying a user interface including the stored data transformation template, the user interface allowing setting of the one or more settable items;

receiving, via the user interface, a user input value for each of the one or more settable items; and

executing the data transformation code with the one or more settable items set to the corresponding received user input value on the data items from the data source.

6. The computing system of claim 5 , further comprising receiving multiple user selections and using the user selections to determine the one or more settable items.

7. The computing system of claim 6 , wherein at least one of the settable items is set, during the executing, by changing text characters in the data transformation code.

8. The computing system of claim 6 , wherein at least one of the settable items is set, during the executing, by application programming interface calls.

9. A non-transitory computer readable medium having software instructions stored thereon, the software instructions executable by a hardware computer processor to cause a computing system to perform operations comprising:

generating a data transformation template by:

displaying a user interface depicting data transformation code including a plurality of code segments, the data transformation code configured to transform data items;

receiving a user selection of a first code segment of the data transformation code;

determining and storing a name or a reference to each of one or more settable items from the first code segment; and

generating the data transformation template, wherein the data transformation template indicates the one or more settable items from the first code segment;

storing the generated data transformation template in a markup language;

initiating transformation of data items from a data source by:

determining the data source storing the data items;

dynamically displaying a user interface including the stored data transformation template, the user interface allowing setting of the one or more settable items;

receiving, via the user interface, a user input value for each of the one or more settable items; and

executing the data transformation code with the one or more settable items set to the corresponding received user input value on the data items from the data source.

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2019
From: BALL, ELIOT; JENNY, MATTHEW; GATES, NICHOLAS; PRICE-WRIGHT, ERIN; KHAN, KAMRAN; MANIS, GREGORY; WU, EMELINE
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 048700/0939 →
Continuity (2)
Provisional Application 62624492 · Jan 31, 2018
Related Publication 20190235844A1 · Aug 1, 2019
Cited By (1)
US 12,321,723