US2019007289A1PendingUtilityA1
Selectively re-homing data processing tasks based on data complexity and candidate system performance characteristics
Est. expiryOct 23, 2034(~8.3 yrs left)· nominal 20-yr term from priority
Inventors:Mike Rosengarten
H04L 67/1008H04L 67/32H04L 67/34H04L 43/0817H04L 67/51H04L 67/60
33
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Techniques are disclosed for selectively re-homing data processing tasks based on data complexity and candidate system performance characteristics. A server system obtains performance capabilities of a target system such that the server can decide whether to send program code and data to the target system for execution, based in part on the complexity of the data and code used in performing the request. In cases where a client system sending a request is capable of executing code and where other constraints are satisfied, e.g., bandwidth, throughput, and data volume, then the server can decide to re-home both the data and the program code to the client for execution.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for determining a processing system for a data processing request, comprising:
receiving, at a server computer, a request for data processing from a client computer; evaluating, at the server computer, a plurality of short-circuit decision criteria; transmitting, from the sever computer to the client computer, a performance benchmark component to the client computer configured to be run by the client computer and to generate a performance score related to the client computer; receiving, from the client computer, the performance score based on the performance benchmark component; and determining, based at least in part on the performance score, to instruct the client computer to perform data processing associated with the data processing request.
2 . The method of claim 1 , further comprising: sending, from the server computer to the client computer, data related to the request for data processing.
3 . The method of claim 2 , further comprising: sending, from the sever computer to the client computer, code components related to the request for data processing, wherein the code components are configured to be executed by the client computer in order to perform the data processing.
4 . The method of claim 3 , wherein the code components comprise a JavaScript application configured to perform the data processing.
5 . The method of claim 1 , further comprising:
determining a code complexity score associated with the request for data processing; and determining that the code complexity score does not exceed a threshold code complexity score, which would require the server computer to perform the data processing.
6 . The method of claim 1 , further comprising:
determining a data complexity score associated with the request for data processing; and determining that the data complexity score does not exceed a threshold data complexity score, which would require the server computer to perform the data processing.
7 . The method of claim 1 , wherein:
the request for data processing includes an indication of a processing capability of the client computer; and the plurality of short-circuit decision criteria comprise at least:
determining whether a volume of data to be processed in accordance with the request exceeds a data volume threshold; and
determining whether the indication of the processing capability of the client computer meets a capability criterion.
8 . An server computer, comprising:
a memory comprising computer-executable instructions; a processor configured to execute the computer-executable instructions and cause the server computer to perform a method for determining a processing system for a data processing request, the method comprising:
receiving, at the server computer, a request for data processing from a client computer;
evaluating, at the server computer, a plurality of short-circuit decision criteria;
transmitting, from the sever computer to the client computer, a performance benchmark component to the client computer configured to be run by the client computer and to generate a performance score related to the client computer;
receiving, from the client computer, the performance score based on the performance benchmark component; and
determining, based at least in part on the performance score, to instruct the client computer to perform data processing associated with the data processing request.
9 . The server computer of claim 8 , wherein the method further comprises: sending, from the server computer to the client computer, data related to the request for data processing.
10 . The server computer of claim 9 , wherein the method further comprises: sending, from the sever computer to the client computer, code components related to the request for data processing, wherein the code components are configured to be executed by the client computer in order to perform the data processing.
11 . The server computer of claim 10 , wherein the code components comprise a JavaScript application configured to perform the data processing.
12 . The server computer of claim 8 , wherein the method further comprises:
determining a code complexity score associated with the request for data processing; and determining that the code complexity score does not exceed a threshold code complexity score, which would require the server computer to perform the data processing.
13 . The server computer of claim 8 , wherein the method further comprises:
determining a data complexity score associated with the request for data processing; and determining that the data complexity score does not exceed a threshold data complexity score, which would require the server computer to perform the data processing.
14 . The server computer of claim 8 , wherein:
the request for data processing includes an indication of a processing capability of the client computer; and the plurality of short-circuit decision criteria comprise at least:
determining whether a volume of data to be processed in accordance with the request exceeds a data volume threshold; and
determining whether the indication of the processing capability of the client computer meets a capability criterion.
15 . A non-transitory computer-readable medium comprising executable instructions that, when executed by a processor of a server computer, cause the server computer to perform a method for determining a processing system for a data processing request, comprising:
receiving, at the server computer, a request for data processing from a client computer; evaluating, at the server computer, a plurality of short-circuit decision criteria; transmitting, from the sever computer to the client computer, a performance benchmark component to the client computer configured to be run by the client computer and to generate a performance score related to the client computer; receiving, from the client computer, the performance score based on the performance benchmark component; and determining, based at least in part on the performance score, to instruct the client computer to perform data processing associated with the data processing request.
16 . The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:
sending, from the server computer to the client computer, data related to the request for data processing; and sending, from the sever computer to the client computer, code components related to the request for data processing, wherein the code components are configured to be executed by the client computer in order to perform the data processing.
17 . The non-transitory computer-readable medium of claim 16 , wherein the code components comprise a JavaScript application configured to perform the data processing.
18 . The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:
determining a code complexity score associated with the request for data processing; and determining that the code complexity score does not exceed a threshold code complexity score, which would require the server computer to perform the data processing.
19 . The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:
determining a data complexity score associated with the request for data processing; and determining that the data complexity score does not exceed a threshold data complexity score, which would require the server computer to perform the data processing.
20 . The non-transitory computer-readable medium of claim 15 , wherein:
the request for data processing includes an indication of a processing capability of the client computer; and the plurality of short-circuit decision criteria comprise at least:
determining whether a volume of data to be processed in accordance with the request exceeds a data volume threshold; and
determining whether the indication of the processing capability of the client computer meets a capability criterion.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.