Abstract: This disclosure relates generally to optimizing computing resources and, more particularly, to systems and methods for dynamically determining an optimized infrastructure for processing data. In one embodiment, a method for dynamically determining an optimized infrastructure for processing data is disclosed, comprising: receiving a task-processing request. The method may also include identifying, based on the received task-processing request, one or more rules associated with performing the task-processing request. The method may further include accessing historical learning information associated with performing at least one past task-processing request. The method may further include allocating computing resources for performing the task-processing request based on the identified one or more rules, accessed historical learning information, and available computing resources associated with a distributed computing environment. The method may further include determining the optimized infrastructure based on the allocated computing resources.
CLIAMS:We claim:
1. A system for dynamically determining an optimized infrastructure for processing data, comprising:
one or more hardware processors; and
a memory storing processor-executable instructions comprising instructions for:
receiving a task-processing request;
identifying, based on the received task-processing request, one or more rules associated with performing the task-processing request;
accessing historical learning information associated with performing at least one past task-processing request;
allocating computing resources for performing the task-processing request based on the identified one or more rules, accessed historical learning information, and available computing resources associated with a distributed computing environment; and
determining the optimized infrastructure based on the allocated computing resources.
2. The system of claim 1, wherein the distributed computing environment comprises at least one of: a computing device configured for virtual processing, a cluster computing environment, or a grid computing environment.
3. The system of claim 1, wherein receiving the task-processing request comprises receiving at least one of:
information associated with one or more computing processes for performing the task-processing request;
an order of execution with respect to the one or more computing processes; or
a plurality of task-processing requirements.
4. The system of claim 3, wherein the one or more computing processes comprise at least one of: a sentiment analysis, a data filtering process, an extract-transform-load (ETL) process, a log analyzing process, a social media extraction process, a recommendation process, a crawling process, or a user-defined process.
5. The system of claim 1, wherein the historical learning information comprises at least one of: a number of computing devices or clusters used for performing the at least one past task-processing request, a number of images associated with virtual machines executed on the computing devices or clusters, one or more types of the images associated with the virtual machines, a number of computing processes associated with the at least one past task-processing request, a time for performing the at least one past task-processing request, an order for executing the computing processes associated with the at least one past task-processing request, or performance of performing at least one of the past task-processing request.
6. The system of claim 1, wherein the memory stores processor-executable instructions further comprising instructions for:
determining, based on the task-processing request, one or more required computing processes for performing the task-processing request;
identifying the historical learning information to access based on the one or more required computing processes;
estimating the required computing resources for executing the one or more required computing processes based on at least one of the identified historical learning information and the one or more rules associated with performing the task-processing request; and
storing the identified historical learning information in a knowledge repository.
7. The system of claim 6, wherein determining the one or more required computing processes comprises:
obtaining the one or more required computing processes based on the task-processing request;
determining an order for executing the one or more required computing processes; and
determining, based on the order, process flow configuration corresponding to the one or more required computing processes.
8. The system of claim 1, wherein allocating the computing resources for performing the task-processing request comprises:
determining an operating status of the available computing resources of the distributed computing environment, the operating status including at least one of: current states of the available computing resources, one or more processor-related current utilization parameters, one or more memory-related current utilization parameters, one or more disk related current utilization parameters, and one or more network-related current traffic parameters; and
allocating the computing resources based on the operating status.
9. The system of claim 1, further comprising:
providing one or more images including at least an operating system and software corresponding to one or more virtual machines associated with the allocated computing resources;
loading, based on the one or more images, the optimized infrastructure to the one or more virtual machines associated with the allocated computing resources;
performing the task-processing request based on the optimized infrastructure; and
updating, based on the performing of the task-processing request, the historical learning information.
10. The system of claim 9, wherein performing the task-processing request comprises:
monitoring progress of performing of the task-processing request;
generating a network map of the allocated computing resources, the allocated computing resources including one or more clusters of computing devices; and
providing an optimization network graph, the optimization network graph including at least one of: a utilization percentage of the one or more clusters, an efficiency of the one or more clusters, a number of free nodes in the one or more clusters, or one or more non-operating computing devices.
11. A method for dynamically determining an optimized infrastructure for processing data, comprising:
receiving a task-processing request;
identifying, based on the received task-processing request, one or more rules associated with performing the task-processing request;
accessing historical learning information associated with performing at least one past task-processing request;
allocating computing resources for performing the task-processing request based on the identified one or more rules, accessed historical learning information, and available computing resources associated with a distributed computing environment; and
determining the optimized infrastructure based on the allocated computing resources.
12. The method of claim 11, wherein the distributed computing environment comprises at least one of: a computing device configured for virtual processing, a cluster computing environment, or a grid computing environment.
13. The method of claim 11, wherein receiving the task-processing request comprises receiving at least one of:
information associated with one or more computing processes for performing the task-processing request;
an order of execution with respect to the one or more computing processes; or
a plurality of task-processing requirements.
14. The method of claim 13, wherein the one or more computing processes comprise at least one of: a sentiment analysis, a data filtering process, an extract-transform-load (ETL) process, a log analyzing process, a social media extraction process, a recommendation process, a crawling process, or a user-defined process.
15. The method of claim 11, wherein the historical learning information comprises at least one of: a number of computing devices or clusters used for performing the at least one past task-processing request, a number of images associated with virtual machines executed on the computing devices or clusters, one or more types of the images associated with the virtual machines, a number of computing processes associated with the at least one past task-processing request, a time for performing the at least one past task-processing request, an order for executing the computing processes associated with the at least one past task-processing request, or performance of performing at least one of the past task-processing request.
16. The method of claim 11, further comprising:
determining, based on the task-processing request, one or more required computing processes for performing the task-processing request;
identifying the historical learning information to access based on the one or more required computing processes;
estimating the required computing resources for executing the one or more required computing processes based on at least one of the identified historical learning information and the one or more rules associated with performing the task-processing request; and
storing the identified historical learning information in a knowledge repository.
17. The method of claim 16, wherein determining the one or more required computing processes comprises:
obtaining the one or more required computing processes based on the task-processing request;
determining an order for executing the one or more required computing processes; and
determining, based on the order, process flow configuration corresponding to the one or more required computing processes.
18. The method of claim 11, wherein allocating the computing resources for performing the task-processing request comprises:
determining an operating status of the available computing resources of the distributed computing environment, the operating status including at least one of: current states of the available computing resources, one or more processor-related current utilization parameters, one or more memory-related current utilization parameters, one or more disk related current utilization parameters, and one or more network-related current traffic parameters; and
allocating the computing resources based on the operating status.
19. The method of claim 11, further comprising:
providing one or more images including at least an operating system and software corresponding to one or more virtual machines associated with the allocated computing resources;
loading, based on the one or more images, the optimized infrastructure to the one or more virtual machines associated with the allocated computing resources;
performing the task-processing request based on the optimized infrastructure; and
updating, based on the performing of the task-processing request, the historical learning information.
20. The method of claim 19, wherein performing the task-processing request comprises at least one of:
monitoring progress of performing of the task-processing request;
generating a network map of the allocated computing resources, the allocated computing resources including one or more clusters of computing devices; and
providing an optimization network graph, the optimization network graph including at least one of: a utilization percentage of the one or more clusters, an efficiency of the one or more clusters, a number of free nodes in the one or more clusters, or one or more non-operating computing devices.
21. A non-transitory computer program medium having embodied thereon computer program instructions for dynamically determining an optimized infrastructure for processing data, the computer program medium storing instructions that, when executed by one or more processors, cause the one or more processors to operations comprising:
receiving a task-processing request;
identifying, based on the received task-processing request, one or more rules associated with performing the task-processing request;
accessing historical learning information associated with performing at least one past task-processing request;
allocating computing resources for performing the task-processing request based on the identified one or more rules, accessed historical learning information, and available computing resources associated with a distributed computing environment; and
determining the optimized infrastructure based on the allocated computing resources.
Dated 5th day of March, 2014
R Ramya Rao
Of K&S Partners
Agent for the Applicant
,TagSPECI:TECHNICAL FIELD
This disclosure relates generally to optimizing computing resources and, more particularly, to systems and methods for dynamically determination of an optimized infrastructure for processing data.
| # | Name | Date |
|---|---|---|
| 1 | Form-9(Online).pdf | 2014-03-06 |
| 2 | IP26488-spec.pdf | 2014-03-07 |
| 3 | IP26488-drawings.pdf | 2014-03-07 |
| 4 | FORM 5.pdf | 2014-03-07 |
| 5 | FORM 3.pdf | 2014-03-07 |
| 6 | 1135-CHE-2014-FER.pdf | 2019-08-05 |
| 7 | 1135-CHE-2014-FORM 3 [05-02-2020(online)].pdf | 2020-02-05 |
| 8 | 1135-CHE-2014-FER_SER_REPLY [05-02-2020(online)].pdf | 2020-02-05 |
| 9 | 1135-CHE-2014-Correspondence to notify the Controller [05-05-2021(online)].pdf | 2021-05-05 |
| 10 | 1135-CHE-2014-US(14)-HearingNotice-(HearingDate-19-05-2021).pdf | 2021-10-17 |
| 1 | SEARCH1135_02-08-2019.pdf |