# US 2018/0039636 A1 · Prioritized retrieval and/or processing of data via query selection

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0039636 A1
- Document ID: US20180039636A1
- Status: Published application
- Kind: A1
- Application number: 15/786,599
- Filed: 2017-10-18
- Published: 2018-02-08
- Earliest claimed: 2015-02-27
- Assignees: Zoomdata, Inc.
- Applicants: Zoomdata, Inc.
- Inventors: Justin LANGSETH; Jorge ALARCON; Ruhollah FARCHTCHI; Farzad AREF; Quan Cat LUU; Matthew Robert BARRETT; Punit RATHORE
- Web page: https://patentgrep.com/patent/US20180039636A1

## CPC

- G06F 16/24578: {using ranking}
- G06F 16/2423: {Interactive query statement specification based on a database schema}
- G06F 16/2453: Query optimisation
- G06F 16/248: Presentation of query results
- G06F 16/9538: Presentation of query results
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9574: {of access to content, e.g. by caching}
- G06F 16/972: {Access to data in other repository systems, e.g. legacy data or dynamic Web page generation}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods of prioritizing retrieval and/or processing of data related to a subset of attributes based on a prediction of associated values are presented herein. In certain implementations, a request for values associated with respective first attributes may be received. Based on the request, first queries for data related to the first attributes may be performed. Based on the first queries, a first subset of data related to calculating at least some of the associated values may be received. At least some of the associated values may be predicted based on the first subset of data. Based on the prediction of the associated values, retrieval and/or processing of data related to a first subset of the first attributes may be prioritized over retrieval and/or processing of data related to one or more other subsets of the first attributes.

## Claims

### Claim 1

A computer-implemented method of prioritizing retrieval and/or processing of data based on query selection, the method being implemented by one or more processors executing computer program instructions that, when executed, perform the method, the method comprising:
receiving a request for values;
generating, based on the request, queries for data related the request, wherein the queries comprise a first subset of queries and one or more other subsets of queries for data related to the request;
selecting the first subset of queries as one or more queries to be performed and performing the first subset of queries such that the first subset of queries is performed prior to the one or more other subsets of queries being performed;
receiving, based on the first subset of queries, first subsets of data for calculating a first value of the values;
predicting the first value based on the first subsets of data before one or more other subsets of data for calculating the first value are received; and
returning the prediction of the first value to respond, as least in part, to the request.

### Claim 2 (depends on 1)

The method of claim 1, wherein selecting the first subset of queries comprises randomly selecting the first subset of queries as one or more queries to be performed.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first subset of queries is performed prior to the one or more other subsets of queries being selected as one or more queries to be performed to respond to the request.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
selecting a second subset of queries related to the request as one or more queries to be performed and performing the second subset of queries;
receiving, based on the second subset of queries, second subsets of data related to the request; and
updating the prediction of the first value based on (i) the first subsets of data and (ii) the second subsets of data, the first subsets of data and the second subsets of data both comprising data for calculating the first value; and
returning the updated prediction of the first value to respond, as least in part, to the request.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
assigning a weight to each of at least some of the queries;
selecting, based on the assigned weights, a second subset of queries related to the request as one or more queries to be performed and performing the second subset of queries;
receiving, based on the second subset of queries, second subsets of data related to the request; and
updating the prediction of the first value based on (i) the first subsets of data and (ii) the second subsets of data, the first subsets of data and the second subsets of data both comprising data for calculating the first value; and
returning the updated prediction of the first value to respond, as least in part, to the request.

### Claim 6 (depends on 5)

The method of claim 5, wherein assigning the weights comprises assigning a weight to each of at least some of the queries based on proximity of the respective query to at least one query of the first subset of queries.

### Claim 7 (depends on 5)

The method of claim 5, wherein assigning the weights comprises assigning a weight to each of at least some of the queries based on (i) proximity of the respective query to at least one query of the first subset of queries and (ii) how influential the first subsets of data are on the predicted first value.

### Claim 8 (depends on 7)

The method of claim 7, wherein the proximity of the respective query comprises proximity of the respective query to at least one query of the first subset of queries with respect to a presentation order.

### Claim 9 (depends on 7)

The method of claim 7, wherein the proximity of the respective query comprises proximity of the respective query to at least one query of the first subset of queries with respect to a time attribute of the respective query, a geographic location attribute of the respective query, or a data source location attribute of the respective query.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
assigning a weight to each of the first subsets of data based on how influential the respective first subset of data is on the first value,
wherein predicting the first value comprises predicting the first value based on the first subsets of data and the assigned weights of the first subsets of data.

### Claim 11 (depends on 10)

The method of claim 10, wherein assigning the weights to each of the first subsets of data comprises, with respect to a given subset of data of the first subsets of data, assigning the weight to the given subset of data for predicting at least one other subset of data based on proximity of the given subset of data to the at least one other subset of data,
wherein predicting the first value comprises:
predicting the at least one other subset of data based on (i) the given subset of data and (ii) the weight assigned to the given subset of data; and
predicting the first value based on (i) the first subsets of data and (ii) the predicted at least one other subset of data.

### Claim 12 (depends on 11)

The method of claim 11, wherein the proximity of the given subset of data comprises proximity of the given subset of data to the at least one other subset of data with respect to a data source location attribute of the given subset of data, a time attribute of the given subset of data, or a geographic location attribute of the given subset of data.

### Claim 13

A system for prioritizing retrieval and/or processing of data based on query selection, the system comprising:
a computer system that includes one or more processors executing computer program instructions that, when executed, cause the computer system to:
receive a request for values;
generate, based on the request, queries for data related the request, wherein the queries comprise a first subset of queries and one or more other subsets of queries for data related to the request;
select the first subset of queries as one or more queries to be performed and performing the first subset of queries such that the first subset of queries is performed prior to the one or more other subsets of queries being performed;
receive, based on the first subset of queries, first subsets of data for calculating a first value of the values;
predict the first value based on the first subsets of data before one or more other subsets of data for calculating the first value are received; and
return the prediction of the first value to respond, as least in part, to the request.

### Claim 14 (depends on 13)

The system of claim 13 wherein selecting the first subset of queries comprises randomly selecting the first subset of queries as one or more queries to be performed.

### Claim 15 (depends on 13)

The system of claim 13, wherein the first subset of queries is performed prior to the one or more other subsets of queries being selected as one or more queries to be performed to respond to the request.

### Claim 16 (depends on 13)

The system of claim 13, wherein the computer system is caused to:
select a second subset of queries related to the request as one or more queries to be performed and performing the second subset of queries;
receive, based on the second subset of queries, second subsets of data related to the request; and
update the prediction of the first value based on (i) the first subsets of data and (ii) the second subsets of data, the first subsets of data and the second subsets of data both comprising data for calculating the first value; and
return the updated prediction of the first value to respond, as least in part, to the request.

### Claim 17

A computer-implemented method of prioritizing retrieval and/or processing of data based on query selection, the method being implemented by one or more processors executing computer program instructions that, when executed, perform the method, the method comprising:
receiving a request for values;
generating, based on the request, queries for data related the request, wherein the queries comprise a first subset of queries and one or more other subsets of queries for data related to the request;
selecting the first subset of queries as one or more queries to be performed and performing the first subset of queries to respond to the request such that (i) the first subset of queries is performed prior to the one or more other subsets of queries being performed or (ii) no performance of the one or more other subsets of queries occurs to respond to the request;
receiving, based on the first subset of queries, first subsets of data for calculating a first value of the values;
predicting the first value based on the first subsets of data before one or more other subsets of data for calculating the first value are received; and
returning the prediction of the first value to respond, as least in part, to the request.

### Claim 18 (depends on 17)

The method of claim 17, wherein selecting the first subset of queries comprises randomly selecting the first subset of queries as one or more queries to be performed.

### Claim 19 (depends on 17)

The method of claim 17, wherein no performance of the one or more other subsets of queries occurs to respond to the request.

### Claim 20 (depends on 17)

The method of claim 17, further comprising:
selecting a second subset of queries related to the request as one or more queries to be performed and performing the second subset of queries;
receiving, based on the second subset of queries, second subsets of data related to the request; and
updating the prediction of the first value based on (i) the first subsets of data and (ii) the second subsets of data, the first subsets of data and the second subsets of data both comprising data for calculating the first value; and
returning the updated prediction of the first value to respond, as least in part, to the request.
