Systems and methods for managing queries from different types of client applications

US12013848B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12013848-B2
Application numberUS-202217843390-A
CountryUS
Kind codeB2
Filing dateJun 17, 2022
Priority dateOct 3, 2019
Publication dateJun 18, 2024
Grant dateJun 18, 2024

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 provide a first group of computation modules configured to provide back-end compute resources for a first type of computation module by back-end compute resources. Systems and methods provide a second group of computation modules that are configured to provide back-end compute resources for a second type of computation module wherein the first and second type of computation modules are of different types. In some examples, methods and systems identify the type of computation module needed by each of a plurality of queries associated with different types of client applications based on computation module type data associated with each query and route each of the plurality of queries to an appropriate computation module within the first or second computation modules based on the computation module type data.

First claim

Opening claim text (preview).

What is claimed is: 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. 2. The method of claim 1 , wherein the selecting the first group of computation modules from the group of computation modules comprises: in response to the first trust level being high, selecting each computation module in the first group of computation modules that is associated with a trust level of high. 3. The method of claim 1 , wherein the selecting the first group of computation modules from the group of computation modules comprises: selecting the first group of computation modules from the group of computation modules based on the first computation module type identified for the first query and the module type of each computation module in the group of computation modules; and in response to the first trust level being high, filtering out one or more modules in the first group of computation modules that are not associated with a trust level of high. 4. The method of claim 1 , wherein the selecting the first group of computation modules from the group of computation modules comprises: determining a query score associated with the first query based on the first trust level, the first computation module type, and a first query type associated with the first query; and selecting the first group of computation modules based on the determined query score. 5. The method of claim 1 , further comprising scaling a number of computation modules in the group of computation modules based on the first computation module type. 6. The method of claim 1 , wherein the selecting the first group of computation modules from the group of computation modules comprises selecting the first group of computation modules based on data representing a probability of cache hits associated with the first query. 7. The method of claim 1 , further comprising checking a reliability of a new version of computing code used by each of the group of computation modules based on historical data and the computation module type identified for the corresponding query. 8. The method of claim 1 , further comprising providing an application interface (API) configured to interface with the one or more types of client applications and to produce configuration data for a module group manager to configure and manage the group of computation modules. 9. A system for managing queries, the system comprising: one or more memories comprising executable instructions; and one or more processors configured to execute executable instructions and perform operations 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. 10. The system of claim 9 , wherein the selecting the first group of computation modules from the group of computation modules comprises: in response to the first trust level being high, selecting each computation module in the first group of computation modules that is associated with a trust level of high. 11. The system of claim 9 , wherein the selecting the first group of computation modules from the group of computation modules comprises: selecting the first group of computation modules from the group of computation modules based on the first computation module type identified for the first query and the module type of each computation module in the group of computation modules; and in response to the first trust level being high, filtering out one or more modules in the first group of computation modules that are not associated with a trust level of high. 12. The system of claim 9 , wherein the selecting the first group of computation modules from the group of computation modules comprises: determining a query score associated with the first query based on the first trust level, the first computation module type, and a first query type associated with the first query; and selecting the first group of computation modules based on the determined query score. 13. The system of claim 9 , wherein the operations further comprise scaling a number of computation modules in the group of computation modules based on the first computation module type identified for the first query. 14. The system

Assignees

Inventors

Classifications

  • where protection concerns the structure of data, e.g. records, types, queries · CPC title

  • Filtering based on additional data, e.g. user or group profiles · CPC title

  • Plan optimisation · CPC title

  • using cached or materialised query results · CPC title

  • Routing a service request depending on the request content or context · 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 US12013848B2 cover?
Systems and methods provide a first group of computation modules configured to provide back-end compute resources for a first type of computation module by back-end compute resources. Systems and methods provide a second group of computation modules that are configured to provide back-end compute resources for a second type of computation module wherein the first and second type of computation …
Who is the assignee on this patent?
Palantir Technologies Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/2448. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 18 2024 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 11 related publications on this page (citations in our corpus or others sharing the same primary CPC).