US 12,013,848 B2
Systems and methods for managing queries from different types of client applications
Giulio Mecocci, Brooklyn, NY (US); Brandon Krieger, Brooklyn, NY (US); and Matthew Lynch, Brooklyn, NY (US)
Assigned to Palantir Technologies Inc., Denver, CO (US)
Filed by Palantir Technologies Inc., Denver, CO (US)
Filed on Jun. 17, 2022, as Appl. No. 17/843,390.
Application 17/843,390 is a continuation of application No. 16/684,833, filed on Nov. 15, 2019, granted, now 11,392,583.
Claims priority of provisional application 62/909,905, filed on Oct. 3, 2019.
Prior Publication US 2022/0318242 A1, Oct. 6, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/24 (2019.01); G06F 16/242 (2019.01); G06F 16/2453 (2019.01); G06F 16/9035 (2019.01); G06F 21/62 (2013.01)
CPC G06F 16/2448 (2019.01) [G06F 16/24539 (2019.01); G06F 16/24542 (2019.01); G06F 16/9035 (2019.01); G06F 21/6227 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for managing queries, the method comprising:
providing a group of computation modules, each computation module in the group of computation modules being associated with a module type and a trust level, the group of computation modules comprising a first group of computation modules and a second group of computation modules, wherein the first group of computation modules is associated with a first provisioner and the second group of computation modules is associated with a second provisioner;
receiving a plurality of queries associated with one or more types of client applications;
identifying a computation module type corresponding to each query of the plurality of queries based on a query type associated with a corresponding query, wherein the corresponding query requests processing operations on one or more data sets, wherein the query type associated with the corresponding query indicates a type of processing;
evaluating metadata of a first query of the plurality of queries to determine a first trust level of the first query;
selecting the first group of computation modules from the group of computation modules based on a first computation module type identified for the first query, the first trust level, the module type and the trust level of each computation module in the group of computation modules;
routing the first query of the plurality of queries to one or more computation modules in the selected first group of computation modules, via the first provisioner; and
in response to the first query being determined as a low trust for a first user, removing one or more computation modules in the selected first group of computation modules that have been previously assigned to a second user from processing the first query, the second user being different from the first user;
wherein the method is performed by one or more processors.